2 Copyright (c) 2007, Yahoo! Inc. All rights reserved.
3 Code licensed under the BSD License:
4 http://developer.yahoo.net/yui/license.txt
8 if(typeof YAHOO
=="undefined"){var YAHOO
={};}
9 YAHOO
.namespace=function(){var a
=arguments
,o
=null,i
,j
,d
;for(i
=0;i
<a
.length
;i
=i
+1){d
=a
[i
].split(".");o
=YAHOO
;for(j
=(d
[0]=="YAHOO")?1:0;j
<d
.length
;j
=j
+1){o
[d
[j
]]=o
[d
[j
]]||{};o
=o
[d
[j
]];}}
10 return o
;};YAHOO
.log=function(msg
,cat
,src
){var l
=YAHOO
.widget
.Logger
;if(l
&&l
.log
){return l
.log(msg
,cat
,src
);}else{return false;}};YAHOO
.register=function(name
,mainClass
,data
){var mods
=YAHOO
.env
.modules
;if(!mods
[name
]){mods
[name
]={versions
:[],builds
:[]};}
11 var m
=mods
[name
],v
=data
.version
,b
=data
.build
,ls
=YAHOO
.env
.listeners
;m
.name
=name
;m
.version
=v
;m
.build
=b
;m
.versions
.push(v
);m
.builds
.push(b
);m
.mainClass
=mainClass
;for(var i
=0;i
<ls
.length
;i
=i
+1){ls
[i
](m
);}
12 if(mainClass
){mainClass
.VERSION
=v
;mainClass
.BUILD
=b
;}else{YAHOO
.log("mainClass is undefined for module "+name
,"warn");}};YAHOO
.env
=YAHOO
.env
||{modules
:[],listeners
:[]};YAHOO
.env
.getVersion=function(name
){return YAHOO
.env
.modules
[name
]||null;};YAHOO
.env
.ua=function(){var o
={ie
:0,opera
:0,gecko
:0,webkit
:0};var ua
=navigator
.userAgent
,m
;if((/KHTML/).test(ua
)){o
.webkit
=1;}
13 m
=ua
.match(/AppleWebKit\/([^\s]*)/);if(m
&&m
[1]){o
.webkit
=parseFloat(m
[1]);}
14 if(!o
.webkit
){m
=ua
.match(/Opera[\s\/]([^\s]*)/);if(m
&&m
[1]){o
.opera
=parseFloat(m
[1]);}else{m
=ua
.match(/MSIE\s([^;]*)/);if(m
&&m
[1]){o
.ie
=parseFloat(m
[1]);}else{m
=ua
.match(/Gecko\/([^\s]*)/);if(m
){o
.gecko
=1;m
=ua
.match(/rv:([^\s\)]*)/);if(m
&&m
[1]){o
.gecko
=parseFloat(m
[1]);}}}}}
15 return o
;}();(function(){YAHOO
.namespace("util","widget","example");if(typeof YAHOO_config
!="undefined"){var l
=YAHOO_config
.listener
,ls
=YAHOO
.env
.listeners
,unique
=true,i
;if(l
){for(i
=0;i
<ls
.length
;i
=i
+1){if(ls
[i
]==l
){unique
=false;break;}}
16 if(unique
){ls
.push(l
);}}}})();YAHOO
.lang
={isArray:function(o
){if(o
){var l
=YAHOO
.lang
;return l
.isNumber(o
.length
)&&l
.isFunction(o
.splice
)&&!l
.hasOwnProperty(o
.length
);}
17 return false;},isBoolean:function(o
){return typeof o
==='boolean';},isFunction:function(o
){return typeof o
==='function';},isNull:function(o
){return o
===null;},isNumber:function(o
){return typeof o
==='number'&&isFinite(o
);},isObject:function(o
){return(o
&&(typeof o
==='object'||YAHOO
.lang
.isFunction(o
)))||false;},isString:function(o
){return typeof o
==='string';},isUndefined:function(o
){return typeof o
==='undefined';},hasOwnProperty:function(o
,prop
){if(Object
.prototype.hasOwnProperty
){return o
.hasOwnProperty(prop
);}
18 return!YAHOO
.lang
.isUndefined(o
[prop
])&&o
.constructor.prototype[prop
]!==o
[prop
];},_IEEnumFix:function(r
,s
){if(YAHOO
.env
.ua
.ie
){var add
=["toString","valueOf"];for(i
=0;i
<add
.length
;i
=i
+1){var fname
=add
[i
],f
=s
[fname
];if(YAHOO
.lang
.isFunction(f
)&&f
!=Object
.prototype[fname
]){r
[fname
]=f
;}}}},extend:function(subc
,superc
,overrides
){if(!superc
||!subc
){throw new Error("YAHOO.lang.extend failed, please check that "+"all dependencies are included.");}
19 var F=function(){};F
.prototype=superc
.prototype;subc
.prototype=new F();subc
.prototype.constructor=subc
;subc
.superclass
=superc
.prototype;if(superc
.prototype.constructor==Object
.prototype.constructor){superc
.prototype.constructor=superc
;}
20 if(overrides
){for(var i
in overrides
){subc
.prototype[i
]=overrides
[i
];}
21 YAHOO
.lang
._IEEnumFix(subc
.prototype,overrides
);}},augmentObject:function(r
,s
){if(!s
||!r
){throw new Error("Absorb failed, verify dependencies.");}
22 var a
=arguments
,i
,p
,override
=a
[2];if(override
&&override
!==true){for(i
=2;i
<a
.length
;i
=i
+1){r
[a
[i
]]=s
[a
[i
]];}}else{for(p
in s
){if(override
||!r
[p
]){r
[p
]=s
[p
];}}
23 YAHOO
.lang
._IEEnumFix(r
,s
);}},augmentProto:function(r
,s
){if(!s
||!r
){throw new Error("Augment failed, verify dependencies.");}
24 var a
=[r
.prototype,s
.prototype];for(var i
=2;i
<arguments
.length
;i
=i
+1){a
.push(arguments
[i
]);}
25 YAHOO
.lang
.augmentObject
.apply(this,a
);},dump:function(o
,d
){var l
=YAHOO
.lang
,i
,len
,s
=[],OBJ
="{...}",FUN
="f(){...}",COMMA
=', ',ARROW
=' => ';if(!l
.isObject(o
)||o
instanceof Date
||("nodeType"in o
&&"tagName"in o
)){return o
;}else if(l
.isFunction(o
)){return FUN
;}
26 d
=(l
.isNumber(d
))?d
:3;if(l
.isArray(o
)){s
.push("[");for(i
=0,len
=o
.length
;i
<len
;i
=i
+1){if(l
.isObject(o
[i
])){s
.push((d
>0)?l
.dump(o
[i
],d
-1):OBJ
);}else{s
.push(o
[i
]);}
28 if(s
.length
>1){s
.pop();}
29 s
.push("]");}else{s
.push("{");for(i
in o
){if(l
.hasOwnProperty(o
,i
)){s
.push(i
+ARROW
);if(l
.isObject(o
[i
])){s
.push((d
>0)?l
.dump(o
[i
],d
-1):OBJ
);}else{s
.push(o
[i
]);}
31 if(s
.length
>1){s
.pop();}
33 return s
.join("");},substitute:function(s
,o
,f
){var i
,j
,k
,key
,v
,meta
,l
=YAHOO
.lang
,saved
=[],token
,DUMP
='dump',SPACE
=' ',LBRACE
='{',RBRACE
='}';for(;;){i
=s
.lastIndexOf(LBRACE
);if(i
<0){break;}
34 j
=s
.indexOf(RBRACE
,i
);if(i
+1>=j
){break;}
35 token
=s
.substring(i
+1,j
);key
=token
;meta
=null;k
=key
.indexOf(SPACE
);if(k
>-1){meta
=key
.substring(k
+1);key
=key
.substring(0,k
);}
36 v
=o
[key
];if(f
){v
=f(key
,v
,meta
);}
37 if(l
.isObject(v
)){if(l
.isArray(v
)){v
=l
.dump(v
,parseInt(meta
,10));}else{meta
=meta
||"";var dump
=meta
.indexOf(DUMP
);if(dump
>-1){meta
=meta
.substring(4);}
38 if(v
.toString
===Object
.prototype.toString
||dump
>-1){v
=l
.dump(v
,parseInt(meta
,10));}else{v
=v
.toString();}}}else if(!l
.isString(v
)&&!l
.isNumber(v
)){v
="~-"+saved
.length
+"-~";saved
[saved
.length
]=token
;}
39 s
=s
.substring(0,i
)+v
+s
.substring(j
+1);}
40 for(i
=saved
.length
-1;i
>=0;i
=i
-1){s
=s
.replace(new RegExp("~-"+i
+"-~"),"{"+saved
[i
]+"}","g");}
41 return s
;},trim:function(s
){try{return s
.replace(/^\s+|\s+$/g,"");}catch(e
){return s
;}},merge:function(){var o
={},a
=arguments
,i
;for(i
=0;i
<a
.length
;i
=i
+1){YAHOO
.lang
.augmentObject(o
,a
[i
],true);}
42 return o
;},isValue:function(o
){var l
=YAHOO
.lang
;return(l
.isObject(o
)||l
.isString(o
)||l
.isNumber(o
)||l
.isBoolean(o
));}};YAHOO
.util
.Lang
=YAHOO
.lang
;YAHOO
.lang
.augment
=YAHOO
.lang
.augmentProto
;YAHOO
.augment
=YAHOO
.lang
.augmentProto
;YAHOO
.extend
=YAHOO
.lang
.extend
;YAHOO
.register("yahoo",YAHOO
,{version
:"2.3.0",build
:"442"});
43 (function(){var Y
=YAHOO
.util
,getStyle
,setStyle
,id_counter
=0,propertyCache
={},reClassNameCache
={};var isOpera
=YAHOO
.env
.ua
.opera
,isSafari
=YAHOO
.env
.ua
.webkit
,isGecko
=YAHOO
.env
.ua
.gecko
,isIE
=YAHOO
.env
.ua
.ie
;var patterns
={HYPHEN
:/(-[a-z])/i,ROOT_TAG
:/^body|html$/i};var toCamel=function(property
){if(!patterns
.HYPHEN
.test(property
)){return property
;}
44 if(propertyCache
[property
]){return propertyCache
[property
];}
45 var converted
=property
;while(patterns
.HYPHEN
.exec(converted
)){converted
=converted
.replace(RegExp
.$1,RegExp
.$1.substr(1).toUpperCase());}
46 propertyCache
[property
]=converted
;return converted
;};var getClassRegEx=function(className
){var re
=reClassNameCache
[className
];if(!re
){re
=new RegExp('(?:^|\\s+)'+className
+'(?:\\s+|$)');reClassNameCache
[className
]=re
;}
47 return re
;};if(document
.defaultView
&&document
.defaultView
.getComputedStyle
){getStyle=function(el
,property
){var value
=null;if(property
=='float'){property
='cssFloat';}
48 var computed
=document
.defaultView
.getComputedStyle(el
,'');if(computed
){value
=computed
[toCamel(property
)];}
49 return el
.style
[property
]||value
;};}else if(document
.documentElement
.currentStyle
&&isIE
){getStyle=function(el
,property
){switch(toCamel(property
)){case'opacity':var val
=100;try{val
=el
.filters
['DXImageTransform.Microsoft.Alpha'].opacity
;}catch(e
){try{val
=el
.filters('alpha').opacity
;}catch(e
){}}
50 return val
/100;case'float':property
='styleFloat';default:var value
=el
.currentStyle
?el
.currentStyle
[property
]:null;return(el
.style
[property
]||value
);}};}else{getStyle=function(el
,property
){return el
.style
[property
];};}
51 if(isIE
){setStyle=function(el
,property
,val
){switch(property
){case'opacity':if(YAHOO
.lang
.isString(el
.style
.filter
)){el
.style
.filter
='alpha(opacity='+val
*100+')';if(!el
.currentStyle
||!el
.currentStyle
.hasLayout
){el
.style
.zoom
=1;}}
52 break;case'float':property
='styleFloat';default:el
.style
[property
]=val
;}};}else{setStyle=function(el
,property
,val
){if(property
=='float'){property
='cssFloat';}
53 el
.style
[property
]=val
;};}
54 var testElement=function(node
,method
){return node
&&node
.nodeType
==1&&(!method
||method(node
));};YAHOO
.util
.Dom
={get:function(el
){if(!el
||el
.tagName
||el
.item
){return el
;}
55 if(YAHOO
.lang
.isString(el
)){return document
.getElementById(el
);}
56 if(el
.splice
){var c
=[];for(var i
=0,len
=el
.length
;i
<len
;++i
){c
[c
.length
]=Y
.Dom
.get(el
[i
]);}
58 return el
;},getStyle:function(el
,property
){property
=toCamel(property
);var f=function(element
){return getStyle(element
,property
);};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},setStyle:function(el
,property
,val
){property
=toCamel(property
);var f=function(element
){setStyle(element
,property
,val
);};Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},getXY:function(el
){var f=function(el
){if((el
.parentNode
===null||el
.offsetParent
===null||this.getStyle(el
,'display')=='none')&&el
!=document
.body
){return false;}
59 var parentNode
=null;var pos
=[];var box
;var doc
=el
.ownerDocument
;if(el
.getBoundingClientRect
){box
=el
.getBoundingClientRect();return[box
.left
+Y
.Dom
.getDocumentScrollLeft(el
.ownerDocument
),box
.top
+Y
.Dom
.getDocumentScrollTop(el
.ownerDocument
)];}
60 else{pos
=[el
.offsetLeft
,el
.offsetTop
];parentNode
=el
.offsetParent
;var hasAbs
=this.getStyle(el
,'position')=='absolute';if(parentNode
!=el
){while(parentNode
){pos
[0]+=parentNode
.offsetLeft
;pos
[1]+=parentNode
.offsetTop
;if(isSafari
&&!hasAbs
&&this.getStyle(parentNode
,'position')=='absolute'){hasAbs
=true;}
61 parentNode
=parentNode
.offsetParent
;}}
62 if(isSafari
&&hasAbs
){pos
[0]-=el
.ownerDocument
.body
.offsetLeft
;pos
[1]-=el
.ownerDocument
.body
.offsetTop
;}}
63 parentNode
=el
.parentNode
;while(parentNode
.tagName
&&!patterns
.ROOT_TAG
.test(parentNode
.tagName
))
64 {if(Y
.Dom
.getStyle(parentNode
,'display').search(/^inline|table-row.*$/i)){pos
[0]-=parentNode
.scrollLeft
;pos
[1]-=parentNode
.scrollTop
;}
65 parentNode
=parentNode
.parentNode
;}
66 return pos
;};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},getX:function(el
){var f=function(el
){return Y
.Dom
.getXY(el
)[0];};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},getY:function(el
){var f=function(el
){return Y
.Dom
.getXY(el
)[1];};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},setXY:function(el
,pos
,noRetry
){var f=function(el
){var style_pos
=this.getStyle(el
,'position');if(style_pos
=='static'){this.setStyle(el
,'position','relative');style_pos
='relative';}
67 var pageXY
=this.getXY(el
);if(pageXY
===false){return false;}
68 var delta
=[parseInt(this.getStyle(el
,'left'),10),parseInt(this.getStyle(el
,'top'),10)];if(isNaN(delta
[0])){delta
[0]=(style_pos
=='relative')?0:el
.offsetLeft
;}
69 if(isNaN(delta
[1])){delta
[1]=(style_pos
=='relative')?0:el
.offsetTop
;}
70 if(pos
[0]!==null){el
.style
.left
=pos
[0]-pageXY
[0]+delta
[0]+'px';}
71 if(pos
[1]!==null){el
.style
.top
=pos
[1]-pageXY
[1]+delta
[1]+'px';}
72 if(!noRetry
){var newXY
=this.getXY(el
);if((pos
[0]!==null&&newXY
[0]!=pos
[0])||(pos
[1]!==null&&newXY
[1]!=pos
[1])){this.setXY(el
,pos
,true);}}};Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},setX:function(el
,x
){Y
.Dom
.setXY(el
,[x
,null]);},setY:function(el
,y
){Y
.Dom
.setXY(el
,[null,y
]);},getRegion:function(el
){var f=function(el
){if((el
.parentNode
===null||el
.offsetParent
===null||this.getStyle(el
,'display')=='none')&&el
!=document
.body
){return false;}
73 var region
=Y
.Region
.getRegion(el
);return region
;};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},getClientWidth:function(){return Y
.Dom
.getViewportWidth();},getClientHeight:function(){return Y
.Dom
.getViewportHeight();},getElementsByClassName:function(className
,tag
,root
,apply
){tag
=tag
||'*';root
=(root
)?Y
.Dom
.get(root
):null||document
;if(!root
){return[];}
74 var nodes
=[],elements
=root
.getElementsByTagName(tag
),re
=getClassRegEx(className
);for(var i
=0,len
=elements
.length
;i
<len
;++i
){if(re
.test(elements
[i
].className
)){nodes
[nodes
.length
]=elements
[i
];if(apply
){apply
.call(elements
[i
],elements
[i
]);}}}
75 return nodes
;},hasClass:function(el
,className
){var re
=getClassRegEx(className
);var f=function(el
){return re
.test(el
.className
);};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},addClass:function(el
,className
){var f=function(el
){if(this.hasClass(el
,className
)){return false;}
76 el
.className
=YAHOO
.lang
.trim([el
.className
,className
].join(' '));return true;};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},removeClass:function(el
,className
){var re
=getClassRegEx(className
);var f=function(el
){if(!this.hasClass(el
,className
)){return false;}
77 var c
=el
.className
;el
.className
=c
.replace(re
,' ');if(this.hasClass(el
,className
)){this.removeClass(el
,className
);}
78 el
.className
=YAHOO
.lang
.trim(el
.className
);return true;};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},replaceClass:function(el
,oldClassName
,newClassName
){if(!newClassName
||oldClassName
===newClassName
){return false;}
79 var re
=getClassRegEx(oldClassName
);var f=function(el
){if(!this.hasClass(el
,oldClassName
)){this.addClass(el
,newClassName
);return true;}
80 el
.className
=el
.className
.replace(re
,' '+newClassName
+' ');if(this.hasClass(el
,oldClassName
)){this.replaceClass(el
,oldClassName
,newClassName
);}
81 el
.className
=YAHOO
.lang
.trim(el
.className
);return true;};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},generateId:function(el
,prefix
){prefix
=prefix
||'yui-gen';var f=function(el
){if(el
&&el
.id
){return el
.id
;}
82 var id
=prefix
+id_counter
++;if(el
){el
.id
=id
;}
83 return id
;};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true)||f
.apply(Y
.Dom
,arguments
);},isAncestor:function(haystack
,needle
){haystack
=Y
.Dom
.get(haystack
);if(!haystack
||!needle
){return false;}
84 var f=function(node
){if(haystack
.contains
&&node
.nodeType
&&!isSafari
){return haystack
.contains(node
);}
85 else if(haystack
.compareDocumentPosition
&&node
.nodeType
){return!!(haystack
.compareDocumentPosition(node
)&16);}else if(node
.nodeType
){return!!this.getAncestorBy(node
,function(el
){return el
==haystack
;});}
86 return false;};return Y
.Dom
.batch(needle
,f
,Y
.Dom
,true);},inDocument:function(el
){var f=function(el
){if(isSafari
){while(el
=el
.parentNode
){if(el
==document
.documentElement
){return true;}}
88 return this.isAncestor(document
.documentElement
,el
);};return Y
.Dom
.batch(el
,f
,Y
.Dom
,true);},getElementsBy:function(method
,tag
,root
,apply
){tag
=tag
||'*';root
=(root
)?Y
.Dom
.get(root
):null||document
;if(!root
){return[];}
89 var nodes
=[],elements
=root
.getElementsByTagName(tag
);for(var i
=0,len
=elements
.length
;i
<len
;++i
){if(method(elements
[i
])){nodes
[nodes
.length
]=elements
[i
];if(apply
){apply(elements
[i
]);}}}
90 return nodes
;},batch:function(el
,method
,o
,override
){el
=(el
&&el
.tagName
)?el
:Y
.Dom
.get(el
);if(!el
||!method
){return false;}
91 var scope
=(override
)?o
:window
;if(el
.tagName
||(!el
.item
&&!el
.slice
)){return method
.call(scope
,el
,o
);}
92 var collection
=[];for(var i
=0,len
=el
.length
;i
<len
;++i
){collection
[collection
.length
]=method
.call(scope
,el
[i
],o
);}
93 return collection
;},getDocumentHeight:function(){var scrollHeight
=(document
.compatMode
!='CSS1Compat')?document
.body
.scrollHeight
:document
.documentElement
.scrollHeight
;var h
=Math
.max(scrollHeight
,Y
.Dom
.getViewportHeight());return h
;},getDocumentWidth:function(){var scrollWidth
=(document
.compatMode
!='CSS1Compat')?document
.body
.scrollWidth
:document
.documentElement
.scrollWidth
;var w
=Math
.max(scrollWidth
,Y
.Dom
.getViewportWidth());return w
;},getViewportHeight:function(){var height
=self
.innerHeight
;var mode
=document
.compatMode
;if((mode
||isIE
)&&!isOpera
){height
=(mode
=='CSS1Compat')?document
.documentElement
.clientHeight
:document
.body
.clientHeight
;}
94 return height
;},getViewportWidth:function(){var width
=self
.innerWidth
;var mode
=document
.compatMode
;if(mode
||isIE
){width
=(mode
=='CSS1Compat')?document
.documentElement
.clientWidth
:document
.body
.clientWidth
;}
95 return width
;},getAncestorBy:function(node
,method
){while(node
=node
.parentNode
){if(testElement(node
,method
)){return node
;}}
96 return null;},getAncestorByClassName:function(node
,className
){node
=Y
.Dom
.get(node
);if(!node
){return null;}
97 var method=function(el
){return Y
.Dom
.hasClass(el
,className
);};return Y
.Dom
.getAncestorBy(node
,method
);},getAncestorByTagName:function(node
,tagName
){node
=Y
.Dom
.get(node
);if(!node
){return null;}
98 var method=function(el
){return el
.tagName
&&el
.tagName
.toUpperCase()==tagName
.toUpperCase();};return Y
.Dom
.getAncestorBy(node
,method
);},getPreviousSiblingBy:function(node
,method
){while(node
){node
=node
.previousSibling
;if(testElement(node
,method
)){return node
;}}
99 return null;},getPreviousSibling:function(node
){node
=Y
.Dom
.get(node
);if(!node
){return null;}
100 return Y
.Dom
.getPreviousSiblingBy(node
);},getNextSiblingBy:function(node
,method
){while(node
){node
=node
.nextSibling
;if(testElement(node
,method
)){return node
;}}
101 return null;},getNextSibling:function(node
){node
=Y
.Dom
.get(node
);if(!node
){return null;}
102 return Y
.Dom
.getNextSiblingBy(node
);},getFirstChildBy:function(node
,method
){var child
=(testElement(node
.firstChild
,method
))?node
.firstChild
:null;return child
||Y
.Dom
.getNextSiblingBy(node
.firstChild
,method
);},getFirstChild:function(node
,method
){node
=Y
.Dom
.get(node
);if(!node
){return null;}
103 return Y
.Dom
.getFirstChildBy(node
);},getLastChildBy:function(node
,method
){if(!node
){return null;}
104 var child
=(testElement(node
.lastChild
,method
))?node
.lastChild
:null;return child
||Y
.Dom
.getPreviousSiblingBy(node
.lastChild
,method
);},getLastChild:function(node
){node
=Y
.Dom
.get(node
);return Y
.Dom
.getLastChildBy(node
);},getChildrenBy:function(node
,method
){var child
=Y
.Dom
.getFirstChildBy(node
,method
);var children
=child
?[child
]:[];Y
.Dom
.getNextSiblingBy(child
,function(node
){if(!method
||method(node
)){children
[children
.length
]=node
;}
105 return false;});return children
;},getChildren:function(node
){node
=Y
.Dom
.get(node
);if(!node
){}
106 return Y
.Dom
.getChildrenBy(node
);},getDocumentScrollLeft:function(doc
){doc
=doc
||document
;return Math
.max(doc
.documentElement
.scrollLeft
,doc
.body
.scrollLeft
);},getDocumentScrollTop:function(doc
){doc
=doc
||document
;return Math
.max(doc
.documentElement
.scrollTop
,doc
.body
.scrollTop
);},insertBefore:function(newNode
,referenceNode
){newNode
=Y
.Dom
.get(newNode
);referenceNode
=Y
.Dom
.get(referenceNode
);if(!newNode
||!referenceNode
||!referenceNode
.parentNode
){return null;}
107 return referenceNode
.parentNode
.insertBefore(newNode
,referenceNode
);},insertAfter:function(newNode
,referenceNode
){newNode
=Y
.Dom
.get(newNode
);referenceNode
=Y
.Dom
.get(referenceNode
);if(!newNode
||!referenceNode
||!referenceNode
.parentNode
){return null;}
108 if(referenceNode
.nextSibling
){return referenceNode
.parentNode
.insertBefore(newNode
,referenceNode
.nextSibling
);}else{return referenceNode
.parentNode
.appendChild(newNode
);}}};})();YAHOO
.util
.Region=function(t
,r
,b
,l
){this.top
=t
;this[1]=t
;this.right
=r
;this.bottom
=b
;this.left
=l
;this[0]=l
;};YAHOO
.util
.Region
.prototype.contains=function(region
){return(region
.left
>=this.left
&®ion
.right
<=this.right
&®ion
.top
>=this.top
&®ion
.bottom
<=this.bottom
);};YAHOO
.util
.Region
.prototype.getArea=function(){return((this.bottom
-this.top
)*(this.right
-this.left
));};YAHOO
.util
.Region
.prototype.intersect=function(region
){var t
=Math
.max(this.top
,region
.top
);var r
=Math
.min(this.right
,region
.right
);var b
=Math
.min(this.bottom
,region
.bottom
);var l
=Math
.max(this.left
,region
.left
);if(b
>=t
&&r
>=l
){return new YAHOO
.util
.Region(t
,r
,b
,l
);}else{return null;}};YAHOO
.util
.Region
.prototype.union=function(region
){var t
=Math
.min(this.top
,region
.top
);var r
=Math
.max(this.right
,region
.right
);var b
=Math
.max(this.bottom
,region
.bottom
);var l
=Math
.min(this.left
,region
.left
);return new YAHOO
.util
.Region(t
,r
,b
,l
);};YAHOO
.util
.Region
.prototype.toString=function(){return("Region {"+"top: "+this.top
+", right: "+this.right
+", bottom: "+this.bottom
+", left: "+this.left
+"}");};YAHOO
.util
.Region
.getRegion=function(el
){var p
=YAHOO
.util
.Dom
.getXY(el
);var t
=p
[1];var r
=p
[0]+el
.offsetWidth
;var b
=p
[1]+el
.offsetHeight
;var l
=p
[0];return new YAHOO
.util
.Region(t
,r
,b
,l
);};YAHOO
.util
.Point=function(x
,y
){if(YAHOO
.lang
.isArray(x
)){y
=x
[1];x
=x
[0];}
109 this.x
=this.right
=this.left
=this[0]=x
;this.y
=this.top
=this.bottom
=this[1]=y
;};YAHOO
.util
.Point
.prototype=new YAHOO
.util
.Region();YAHOO
.register("dom",YAHOO
.util
.Dom
,{version
:"2.3.0",build
:"442"});
110 YAHOO
.util
.CustomEvent=function(type
,oScope
,silent
,signature
){this.type
=type
;this.scope
=oScope
||window
;this.silent
=silent
;this.signature
=signature
||YAHOO
.util
.CustomEvent
.LIST
;this.subscribers
=[];if(!this.silent
){}
111 var onsubscribeType
="_YUICEOnSubscribe";if(type
!==onsubscribeType
){this.subscribeEvent
=new YAHOO
.util
.CustomEvent(onsubscribeType
,this,true);}};YAHOO
.util
.CustomEvent
.LIST
=0;YAHOO
.util
.CustomEvent
.FLAT
=1;YAHOO
.util
.CustomEvent
.prototype={subscribe:function(fn
,obj
,override
){if(!fn
){throw new Error("Invalid callback for subscriber to '"+this.type
+"'");}
112 if(this.subscribeEvent
){this.subscribeEvent
.fire(fn
,obj
,override
);}
113 this.subscribers
.push(new YAHOO
.util
.Subscriber(fn
,obj
,override
));},unsubscribe:function(fn
,obj
){if(!fn
){return this.unsubscribeAll();}
114 var found
=false;for(var i
=0,len
=this.subscribers
.length
;i
<len
;++i
){var s
=this.subscribers
[i
];if(s
&&s
.contains(fn
,obj
)){this._delete(i
);found
=true;}}
115 return found
;},fire:function(){var len
=this.subscribers
.length
;if(!len
&&this.silent
){return true;}
116 var args
=[],ret
=true,i
,rebuild
=false;for(i
=0;i
<arguments
.length
;++i
){args
.push(arguments
[i
]);}
117 var argslength
=args
.length
;if(!this.silent
){}
118 for(i
=0;i
<len
;++i
){var s
=this.subscribers
[i
];if(!s
){rebuild
=true;}else{if(!this.silent
){}
119 var scope
=s
.getScope(this.scope
);if(this.signature
==YAHOO
.util
.CustomEvent
.FLAT
){var param
=null;if(args
.length
>0){param
=args
[0];}
120 ret
=s
.fn
.call(scope
,param
,s
.obj
);}else{ret
=s
.fn
.call(scope
,this.type
,args
,s
.obj
);}
121 if(false===ret
){if(!this.silent
){}
123 if(rebuild
){var newlist
=[],subs
=this.subscribers
;for(i
=0,len
=subs
.length
;i
<len
;++i
){s
=subs
[i
];newlist
.push(subs
[i
]);}
124 this.subscribers
=newlist
;}
125 return true;},unsubscribeAll:function(){for(var i
=0,len
=this.subscribers
.length
;i
<len
;++i
){this._delete(len
-1-i
);}
126 this.subscribers
=[];return i
;},_delete:function(index
){var s
=this.subscribers
[index
];if(s
){delete s
.fn
;delete s
.obj
;}
127 this.subscribers
[index
]=null;},toString:function(){return"CustomEvent: "+"'"+this.type
+"', "+"scope: "+this.scope
;}};YAHOO
.util
.Subscriber=function(fn
,obj
,override
){this.fn
=fn
;this.obj
=YAHOO
.lang
.isUndefined(obj
)?null:obj
;this.override
=override
;};YAHOO
.util
.Subscriber
.prototype.getScope=function(defaultScope
){if(this.override
){if(this.override
===true){return this.obj
;}else{return this.override
;}}
128 return defaultScope
;};YAHOO
.util
.Subscriber
.prototype.contains=function(fn
,obj
){if(obj
){return(this.fn
==fn
&&this.obj
==obj
);}else{return(this.fn
==fn
);}};YAHOO
.util
.Subscriber
.prototype.toString=function(){return"Subscriber { obj: "+this.obj
+", override: "+(this.override
||"no")+" }";};if(!YAHOO
.util
.Event
){YAHOO
.util
.Event=function(){var loadComplete
=false;var DOMReady
=false;var listeners
=[];var unloadListeners
=[];var legacyEvents
=[];var legacyHandlers
=[];var retryCount
=0;var onAvailStack
=[];var legacyMap
=[];var counter
=0;var webkitKeymap
={63232:38,63233:40,63234:37,63235:39};return{POLL_RETRYS
:4000,POLL_INTERVAL
:10,EL
:0,TYPE
:1,FN
:2,WFN
:3,OBJ
:3,ADJ_SCOPE
:4,lastError
:null,isSafari
:YAHOO
.env
.ua
.webkit
,webkit
:YAHOO
.env
.ua
.webkit
,isIE
:YAHOO
.env
.ua
.ie
,_interval
:null,startInterval:function(){if(!this._interval
){var self
=this;var callback=function(){self
._tryPreloadAttach();};this._interval
=setInterval(callback
,this.POLL_INTERVAL
);}},onAvailable:function(p_id
,p_fn
,p_obj
,p_override
){onAvailStack
.push({id
:p_id
,fn
:p_fn
,obj
:p_obj
,override
:p_override
,checkReady
:false});retryCount
=this.POLL_RETRYS
;this.startInterval();},onDOMReady:function(p_fn
,p_obj
,p_override
){if(DOMReady
){setTimeout(function(){var s
=window
;if(p_override
){if(p_override
===true){s
=p_obj
;}else{s
=p_override
;}}
129 p_fn
.call(s
,"DOMReady",[],p_obj
);},0);}else{this.DOMReadyEvent
.subscribe(p_fn
,p_obj
,p_override
);}},onContentReady:function(p_id
,p_fn
,p_obj
,p_override
){onAvailStack
.push({id
:p_id
,fn
:p_fn
,obj
:p_obj
,override
:p_override
,checkReady
:true});retryCount
=this.POLL_RETRYS
;this.startInterval();},addListener:function(el
,sType
,fn
,obj
,override
){if(!fn
||!fn
.call
){return false;}
130 if(this._isValidCollection(el
)){var ok
=true;for(var i
=0,len
=el
.length
;i
<len
;++i
){ok
=this.on(el
[i
],sType
,fn
,obj
,override
)&&ok
;}
131 return ok
;}else if(YAHOO
.lang
.isString(el
)){var oEl
=this.getEl(el
);if(oEl
){el
=oEl
;}else{this.onAvailable(el
,function(){YAHOO
.util
.Event
.on(el
,sType
,fn
,obj
,override
);});return true;}}
132 if(!el
){return false;}
133 if("unload"==sType
&&obj
!==this){unloadListeners
[unloadListeners
.length
]=[el
,sType
,fn
,obj
,override
];return true;}
134 var scope
=el
;if(override
){if(override
===true){scope
=obj
;}else{scope
=override
;}}
135 var wrappedFn=function(e
){return fn
.call(scope
,YAHOO
.util
.Event
.getEvent(e
),obj
);};var li
=[el
,sType
,fn
,wrappedFn
,scope
];var index
=listeners
.length
;listeners
[index
]=li
;if(this.useLegacyEvent(el
,sType
)){var legacyIndex
=this.getLegacyIndex(el
,sType
);if(legacyIndex
==-1||el
!=legacyEvents
[legacyIndex
][0]){legacyIndex
=legacyEvents
.length
;legacyMap
[el
.id
+sType
]=legacyIndex
;legacyEvents
[legacyIndex
]=[el
,sType
,el
["on"+sType
]];legacyHandlers
[legacyIndex
]=[];el
["on"+sType
]=function(e
){YAHOO
.util
.Event
.fireLegacyEvent(YAHOO
.util
.Event
.getEvent(e
),legacyIndex
);};}
136 legacyHandlers
[legacyIndex
].push(li
);}else{try{this._simpleAdd(el
,sType
,wrappedFn
,false);}catch(ex
){this.lastError
=ex
;this.removeListener(el
,sType
,fn
);return false;}}
137 return true;},fireLegacyEvent:function(e
,legacyIndex
){var ok
=true,le
,lh
,li
,scope
,ret
;lh
=legacyHandlers
[legacyIndex
];for(var i
=0,len
=lh
.length
;i
<len
;++i
){li
=lh
[i
];if(li
&&li
[this.WFN
]){scope
=li
[this.ADJ_SCOPE
];ret
=li
[this.WFN
].call(scope
,e
);ok
=(ok
&&ret
);}}
138 le
=legacyEvents
[legacyIndex
];if(le
&&le
[2]){le
[2](e
);}
139 return ok
;},getLegacyIndex:function(el
,sType
){var key
=this.generateId(el
)+sType
;if(typeof legacyMap
[key
]=="undefined"){return-1;}else{return legacyMap
[key
];}},useLegacyEvent:function(el
,sType
){if(this.webkit
&&("click"==sType
||"dblclick"==sType
)){var v
=parseInt(this.webkit
,10);if(!isNaN(v
)&&v
<418){return true;}}
140 return false;},removeListener:function(el
,sType
,fn
){var i
,len
;if(typeof el
=="string"){el
=this.getEl(el
);}else if(this._isValidCollection(el
)){var ok
=true;for(i
=0,len
=el
.length
;i
<len
;++i
){ok
=(this.removeListener(el
[i
],sType
,fn
)&&ok
);}
142 if(!fn
||!fn
.call
){return this.purgeElement(el
,false,sType
);}
143 if("unload"==sType
){for(i
=0,len
=unloadListeners
.length
;i
<len
;i
++){var li
=unloadListeners
[i
];if(li
&&li
[0]==el
&&li
[1]==sType
&&li
[2]==fn
){unloadListeners
[i
]=null;return true;}}
145 var cacheItem
=null;var index
=arguments
[3];if("undefined"==typeof index
){index
=this._getCacheIndex(el
,sType
,fn
);}
146 if(index
>=0){cacheItem
=listeners
[index
];}
147 if(!el
||!cacheItem
){return false;}
148 if(this.useLegacyEvent(el
,sType
)){var legacyIndex
=this.getLegacyIndex(el
,sType
);var llist
=legacyHandlers
[legacyIndex
];if(llist
){for(i
=0,len
=llist
.length
;i
<len
;++i
){li
=llist
[i
];if(li
&&li
[this.EL
]==el
&&li
[this.TYPE
]==sType
&&li
[this.FN
]==fn
){llist
[i
]=null;break;}}}}else{try{this._simpleRemove(el
,sType
,cacheItem
[this.WFN
],false);}catch(ex
){this.lastError
=ex
;return false;}}
149 delete listeners
[index
][this.WFN
];delete listeners
[index
][this.FN
];listeners
[index
]=null;return true;},getTarget:function(ev
,resolveTextNode
){var t
=ev
.target
||ev
.srcElement
;return this.resolveTextNode(t
);},resolveTextNode:function(node
){if(node
&&3==node
.nodeType
){return node
.parentNode
;}else{return node
;}},getPageX:function(ev
){var x
=ev
.pageX
;if(!x
&&0!==x
){x
=ev
.clientX
||0;if(this.isIE
){x
+=this._getScrollLeft();}}
150 return x
;},getPageY:function(ev
){var y
=ev
.pageY
;if(!y
&&0!==y
){y
=ev
.clientY
||0;if(this.isIE
){y
+=this._getScrollTop();}}
151 return y
;},getXY:function(ev
){return[this.getPageX(ev
),this.getPageY(ev
)];},getRelatedTarget:function(ev
){var t
=ev
.relatedTarget
;if(!t
){if(ev
.type
=="mouseout"){t
=ev
.toElement
;}else if(ev
.type
=="mouseover"){t
=ev
.fromElement
;}}
152 return this.resolveTextNode(t
);},getTime:function(ev
){if(!ev
.time
){var t
=new Date().getTime();try{ev
.time
=t
;}catch(ex
){this.lastError
=ex
;return t
;}}
153 return ev
.time
;},stopEvent:function(ev
){this.stopPropagation(ev
);this.preventDefault(ev
);},stopPropagation:function(ev
){if(ev
.stopPropagation
){ev
.stopPropagation();}else{ev
.cancelBubble
=true;}},preventDefault:function(ev
){if(ev
.preventDefault
){ev
.preventDefault();}else{ev
.returnValue
=false;}},getEvent:function(e
){var ev
=e
||window
.event
;if(!ev
){var c
=this.getEvent
.caller
;while(c
){ev
=c
.arguments
[0];if(ev
&&Event
==ev
.constructor){break;}
155 return ev
;},getCharCode:function(ev
){var code
=ev
.keyCode
||ev
.charCode
||0;if(YAHOO
.env
.ua
.webkit
&&(code
in webkitKeymap
)){code
=webkitKeymap
[code
];}
156 return code
;},_getCacheIndex:function(el
,sType
,fn
){for(var i
=0,len
=listeners
.length
;i
<len
;++i
){var li
=listeners
[i
];if(li
&&li
[this.FN
]==fn
&&li
[this.EL
]==el
&&li
[this.TYPE
]==sType
){return i
;}}
157 return-1;},generateId:function(el
){var id
=el
.id
;if(!id
){id
="yuievtautoid-"+counter
;++counter
;el
.id
=id
;}
158 return id
;},_isValidCollection:function(o
){try{return(o
&&o
.length
&&typeof o
!="string"&&!o
.tagName
&&!o
.alert
&&typeof o
[0]!="undefined");}catch(e
){return false;}},elCache
:{},getEl:function(id
){return document
.getElementById(id
);},clearCache:function(){},DOMReadyEvent
:new YAHOO
.util
.CustomEvent("DOMReady",this),_load:function(e
){if(!loadComplete
){loadComplete
=true;var EU
=YAHOO
.util
.Event
;EU
._ready();EU
._tryPreloadAttach();}},_ready:function(e
){if(!DOMReady
){DOMReady
=true;var EU
=YAHOO
.util
.Event
;EU
.DOMReadyEvent
.fire();EU
._simpleRemove(document
,"DOMContentLoaded",EU
._ready
);}},_tryPreloadAttach:function(){if(this.locked
){return false;}
159 if(this.isIE
){if(!DOMReady
){this.startInterval();return false;}}
160 this.locked
=true;var tryAgain
=!loadComplete
;if(!tryAgain
){tryAgain
=(retryCount
>0);}
161 var notAvail
=[];var executeItem=function(el
,item
){var scope
=el
;if(item
.override
){if(item
.override
===true){scope
=item
.obj
;}else{scope
=item
.override
;}}
162 item
.fn
.call(scope
,item
.obj
);};var i
,len
,item
,el
;for(i
=0,len
=onAvailStack
.length
;i
<len
;++i
){item
=onAvailStack
[i
];if(item
&&!item
.checkReady
){el
=this.getEl(item
.id
);if(el
){executeItem(el
,item
);onAvailStack
[i
]=null;}else{notAvail
.push(item
);}}}
163 for(i
=0,len
=onAvailStack
.length
;i
<len
;++i
){item
=onAvailStack
[i
];if(item
&&item
.checkReady
){el
=this.getEl(item
.id
);if(el
){if(loadComplete
||el
.nextSibling
){executeItem(el
,item
);onAvailStack
[i
]=null;}}else{notAvail
.push(item
);}}}
164 retryCount
=(notAvail
.length
===0)?0:retryCount
-1;if(tryAgain
){this.startInterval();}else{clearInterval(this._interval
);this._interval
=null;}
165 this.locked
=false;return true;},purgeElement:function(el
,recurse
,sType
){var elListeners
=this.getListeners(el
,sType
);if(elListeners
){for(var i
=0,len
=elListeners
.length
;i
<len
;++i
){var l
=elListeners
[i
];this.removeListener(el
,l
.type
,l
.fn
,l
.index
);}}
166 if(recurse
&&el
&&el
.childNodes
){for(i
=0,len
=el
.childNodes
.length
;i
<len
;++i
){this.purgeElement(el
.childNodes
[i
],recurse
,sType
);}}},getListeners:function(el
,sType
){var results
=[],searchLists
;if(!sType
){searchLists
=[listeners
,unloadListeners
];}else if(sType
=="unload"){searchLists
=[unloadListeners
];}else{searchLists
=[listeners
];}
167 for(var j
=0;j
<searchLists
.length
;++j
){var searchList
=searchLists
[j
];if(searchList
&&searchList
.length
>0){for(var i
=0,len
=searchList
.length
;i
<len
;++i
){var l
=searchList
[i
];if(l
&&l
[this.EL
]===el
&&(!sType
||sType
===l
[this.TYPE
])){results
.push({type
:l
[this.TYPE
],fn
:l
[this.FN
],obj
:l
[this.OBJ
],adjust
:l
[this.ADJ_SCOPE
],index
:i
});}}}}
168 return(results
.length
)?results
:null;},_unload:function(e
){var EU
=YAHOO
.util
.Event
,i
,j
,l
,len
,index
;for(i
=0,len
=unloadListeners
.length
;i
<len
;++i
){l
=unloadListeners
[i
];if(l
){var scope
=window
;if(l
[EU
.ADJ_SCOPE
]){if(l
[EU
.ADJ_SCOPE
]===true){scope
=l
[EU
.OBJ
];}else{scope
=l
[EU
.ADJ_SCOPE
];}}
169 l
[EU
.FN
].call(scope
,EU
.getEvent(e
),l
[EU
.OBJ
]);unloadListeners
[i
]=null;l
=null;scope
=null;}}
170 unloadListeners
=null;if(listeners
&&listeners
.length
>0){j
=listeners
.length
;while(j
){index
=j
-1;l
=listeners
[index
];if(l
){EU
.removeListener(l
[EU
.EL
],l
[EU
.TYPE
],l
[EU
.FN
],index
);}
172 l
=null;EU
.clearCache();}
173 for(i
=0,len
=legacyEvents
.length
;i
<len
;++i
){legacyEvents
[i
][0]=null;legacyEvents
[i
]=null;}
174 legacyEvents
=null;EU
._simpleRemove(window
,"unload",EU
._unload
);},_getScrollLeft:function(){return this._getScroll()[1];},_getScrollTop:function(){return this._getScroll()[0];},_getScroll:function(){var dd
=document
.documentElement
,db
=document
.body
;if(dd
&&(dd
.scrollTop
||dd
.scrollLeft
)){return[dd
.scrollTop
,dd
.scrollLeft
];}else if(db
){return[db
.scrollTop
,db
.scrollLeft
];}else{return[0,0];}},regCE:function(){},_simpleAdd:function(){if(window
.addEventListener
){return function(el
,sType
,fn
,capture
){el
.addEventListener(sType
,fn
,(capture
));};}else if(window
.attachEvent
){return function(el
,sType
,fn
,capture
){el
.attachEvent("on"+sType
,fn
);};}else{return function(){};}}(),_simpleRemove:function(){if(window
.removeEventListener
){return function(el
,sType
,fn
,capture
){el
.removeEventListener(sType
,fn
,(capture
));};}else if(window
.detachEvent
){return function(el
,sType
,fn
){el
.detachEvent("on"+sType
,fn
);};}else{return function(){};}}()};}();(function(){var EU
=YAHOO
.util
.Event
;EU
.on
=EU
.addListener
;if(EU
.isIE
){YAHOO
.util
.Event
.onDOMReady(YAHOO
.util
.Event
._tryPreloadAttach
,YAHOO
.util
.Event
,true);var el
,d
=document
,b
=d
.body
;if(("undefined"!==typeof YAHOO_config
)&&YAHOO_config
.injecting
){el
=document
.createElement("script");var p
=d
.getElementsByTagName("head")[0]||b
;p
.insertBefore(el
,p
.firstChild
);}else{d
.write('<scr'+'ipt id="_yui_eu_dr" defer="true" src="//:"><'+'/script>');el
=document
.getElementById("_yui_eu_dr");}
175 if(el
){el
.onreadystatechange=function(){if("complete"===this.readyState
){this.parentNode
.removeChild(this);YAHOO
.util
.Event
._ready();}};}else{}
176 el
=null;}else if(EU
.webkit
){EU
._drwatch
=setInterval(function(){var rs
=document
.readyState
;if("loaded"==rs
||"complete"==rs
){clearInterval(EU
._drwatch
);EU
._drwatch
=null;EU
._ready();}},EU
.POLL_INTERVAL
);}else{EU
._simpleAdd(document
,"DOMContentLoaded",EU
._ready
);}
177 EU
._simpleAdd(window
,"load",EU
._load
);EU
._simpleAdd(window
,"unload",EU
._unload
);EU
._tryPreloadAttach();})();}
178 YAHOO
.util
.EventProvider=function(){};YAHOO
.util
.EventProvider
.prototype={__yui_events
:null,__yui_subscribers
:null,subscribe:function(p_type
,p_fn
,p_obj
,p_override
){this.__yui_events
=this.__yui_events
||{};var ce
=this.__yui_events
[p_type
];if(ce
){ce
.subscribe(p_fn
,p_obj
,p_override
);}else{this.__yui_subscribers
=this.__yui_subscribers
||{};var subs
=this.__yui_subscribers
;if(!subs
[p_type
]){subs
[p_type
]=[];}
179 subs
[p_type
].push({fn
:p_fn
,obj
:p_obj
,override
:p_override
});}},unsubscribe:function(p_type
,p_fn
,p_obj
){this.__yui_events
=this.__yui_events
||{};var evts
=this.__yui_events
;if(p_type
){var ce
=evts
[p_type
];if(ce
){return ce
.unsubscribe(p_fn
,p_obj
);}}else{for(var i
in evts
){var ret
=true;if(YAHOO
.lang
.hasOwnProperty(evts
,i
)){ret
=ret
&&evts
[i
].unsubscribe(p_fn
,p_obj
);}}
181 return false;},unsubscribeAll:function(p_type
){return this.unsubscribe(p_type
);},createEvent:function(p_type
,p_config
){this.__yui_events
=this.__yui_events
||{};var opts
=p_config
||{};var events
=this.__yui_events
;if(events
[p_type
]){}else{var scope
=opts
.scope
||this;var silent
=(opts
.silent
);var ce
=new YAHOO
.util
.CustomEvent(p_type
,scope
,silent
,YAHOO
.util
.CustomEvent
.FLAT
);events
[p_type
]=ce
;if(opts
.onSubscribeCallback
){ce
.subscribeEvent
.subscribe(opts
.onSubscribeCallback
);}
182 this.__yui_subscribers
=this.__yui_subscribers
||{};var qs
=this.__yui_subscribers
[p_type
];if(qs
){for(var i
=0;i
<qs
.length
;++i
){ce
.subscribe(qs
[i
].fn
,qs
[i
].obj
,qs
[i
].override
);}}}
183 return events
[p_type
];},fireEvent:function(p_type
,arg1
,arg2
,etc
){this.__yui_events
=this.__yui_events
||{};var ce
=this.__yui_events
[p_type
];if(!ce
){return null;}
184 var args
=[];for(var i
=1;i
<arguments
.length
;++i
){args
.push(arguments
[i
]);}
185 return ce
.fire
.apply(ce
,args
);},hasEvent:function(type
){if(this.__yui_events
){if(this.__yui_events
[type
]){return true;}}
186 return false;}};YAHOO
.util
.KeyListener=function(attachTo
,keyData
,handler
,event
){if(!attachTo
){}else if(!keyData
){}else if(!handler
){}
187 if(!event
){event
=YAHOO
.util
.KeyListener
.KEYDOWN
;}
188 var keyEvent
=new YAHOO
.util
.CustomEvent("keyPressed");this.enabledEvent
=new YAHOO
.util
.CustomEvent("enabled");this.disabledEvent
=new YAHOO
.util
.CustomEvent("disabled");if(typeof attachTo
=='string'){attachTo
=document
.getElementById(attachTo
);}
189 if(typeof handler
=='function'){keyEvent
.subscribe(handler
);}else{keyEvent
.subscribe(handler
.fn
,handler
.scope
,handler
.correctScope
);}
190 function handleKeyPress(e
,obj
){if(!keyData
.shift
){keyData
.shift
=false;}
191 if(!keyData
.alt
){keyData
.alt
=false;}
192 if(!keyData
.ctrl
){keyData
.ctrl
=false;}
193 if(e
.shiftKey
==keyData
.shift
&&e
.altKey
==keyData
.alt
&&e
.ctrlKey
==keyData
.ctrl
){var dataItem
;var keyPressed
;if(keyData
.keys
instanceof Array
){for(var i
=0;i
<keyData
.keys
.length
;i
++){dataItem
=keyData
.keys
[i
];if(dataItem
==e
.charCode
){keyEvent
.fire(e
.charCode
,e
);break;}else if(dataItem
==e
.keyCode
){keyEvent
.fire(e
.keyCode
,e
);break;}}}else{dataItem
=keyData
.keys
;if(dataItem
==e
.charCode
){keyEvent
.fire(e
.charCode
,e
);}else if(dataItem
==e
.keyCode
){keyEvent
.fire(e
.keyCode
,e
);}}}}
194 this.enable=function(){if(!this.enabled
){YAHOO
.util
.Event
.addListener(attachTo
,event
,handleKeyPress
);this.enabledEvent
.fire(keyData
);}
195 this.enabled
=true;};this.disable=function(){if(this.enabled
){YAHOO
.util
.Event
.removeListener(attachTo
,event
,handleKeyPress
);this.disabledEvent
.fire(keyData
);}
196 this.enabled
=false;};this.toString=function(){return"KeyListener ["+keyData
.keys
+"] "+attachTo
.tagName
+
197 (attachTo
.id
?"["+attachTo
.id
+"]":"");};};YAHOO
.util
.KeyListener
.KEYDOWN
="keydown";YAHOO
.util
.KeyListener
.KEYUP
="keyup";YAHOO
.register("event",YAHOO
.util
.Event
,{version
:"2.3.0",build
:"442"});
198 YAHOO
.util
.Connect
={_msxml_progid
:['MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP','Microsoft.XMLHTTP'],_http_headers
:{},_has_http_headers
:false,_use_default_post_header
:true,_default_post_header
:'application/x-www-form-urlencoded; charset=UTF-8',_use_default_xhr_header
:true,_default_xhr_header
:'XMLHttpRequest',_has_default_headers
:true,_default_headers
:{},_isFormSubmit
:false,_isFileUpload
:false,_formNode
:null,_sFormData
:null,_poll
:{},_timeOut
:{},_polling_interval
:50,_transaction_id
:0,_submitElementValue
:null,_hasSubmitListener
:(function()
199 {if(YAHOO
.util
.Event
){YAHOO
.util
.Event
.addListener(document
,'click',function(e
){var obj
=YAHOO
.util
.Event
.getTarget(e
);if(obj
.type
=='submit'){YAHOO
.util
.Connect
._submitElementValue
=encodeURIComponent(obj
.name
)+"="+encodeURIComponent(obj
.value
);}});return true;}
200 return false;})(),startEvent
:new YAHOO
.util
.CustomEvent('start'),completeEvent
:new YAHOO
.util
.CustomEvent('complete'),successEvent
:new YAHOO
.util
.CustomEvent('success'),failureEvent
:new YAHOO
.util
.CustomEvent('failure'),uploadEvent
:new YAHOO
.util
.CustomEvent('upload'),abortEvent
:new YAHOO
.util
.CustomEvent('abort'),_customEvents
:{onStart
:['startEvent','start'],onComplete
:['completeEvent','complete'],onSuccess
:['successEvent','success'],onFailure
:['failureEvent','failure'],onUpload
:['uploadEvent','upload'],onAbort
:['abortEvent','abort']},setProgId:function(id
)
201 {this._msxml_progid
.unshift(id
);},setDefaultPostHeader:function(b
)
202 {this._use_default_post_header
=b
;},setDefaultXhrHeader:function(b
)
203 {this._use_default_xhr_header
=b
;},setPollingInterval:function(i
)
204 {if(typeof i
=='number'&&isFinite(i
)){this._polling_interval
=i
;}},createXhrObject:function(transactionId
)
206 {http
=new XMLHttpRequest();obj
={conn
:http
,tId
:transactionId
};}
208 {for(var i
=0;i
<this._msxml_progid
.length
;++i
){try
209 {http
=new ActiveXObject(this._msxml_progid
[i
]);obj
={conn
:http
,tId
:transactionId
};break;}
212 {return obj
;}},getConnectionObject:function(isFileUpload
)
213 {var o
;var tId
=this._transaction_id
;try
214 {if(!isFileUpload
){o
=this.createXhrObject(tId
);}
215 else{o
={};o
.tId
=tId
;o
.isUpload
=true;}
216 if(o
){this._transaction_id
++;}}
219 {return o
;}},asyncRequest:function(method
,uri
,callback
,postData
)
220 {var o
=(this._isFileUpload
)?this.getConnectionObject(true):this.getConnectionObject();if(!o
){return null;}
221 else{if(callback
&&callback
.customevents
){this.initCustomEvents(o
,callback
);}
222 if(this._isFormSubmit
){if(this._isFileUpload
){this.uploadFile(o
,callback
,uri
,postData
);return o
;}
223 if(method
.toUpperCase()=='GET'){if(this._sFormData
.length
!==0){uri
+=((uri
.indexOf('?')==-1)?'?':'&')+this._sFormData
;}
224 else{uri
+="?"+this._sFormData
;}}
225 else if(method
.toUpperCase()=='POST'){postData
=postData
?this._sFormData
+"&"+postData
:this._sFormData
;}}
226 o
.conn
.open(method
,uri
,true);if(this._use_default_xhr_header
){if(!this._default_headers
['X-Requested-With']){this.initHeader('X-Requested-With',this._default_xhr_header
,true);}}
227 if(this._isFormSubmit
||(postData
&&this._use_default_post_header
)){this.initHeader('Content-Type',this._default_post_header
);if(this._isFormSubmit
){this.resetFormState();}}
228 if(this._has_default_headers
||this._has_http_headers
){this.setHeader(o
);}
229 this.handleReadyState(o
,callback
);o
.conn
.send(postData
||null);this.startEvent
.fire(o
);if(o
.startEvent
){o
.startEvent
.fire(o
);}
230 return o
;}},initCustomEvents:function(o
,callback
)
231 {for(var prop
in callback
.customevents
){if(this._customEvents
[prop
][0]){o
[this._customEvents
[prop
][0]]=new YAHOO
.util
.CustomEvent(this._customEvents
[prop
][1],(callback
.scope
)?callback
.scope
:null);o
[this._customEvents
[prop
][0]].subscribe(callback
.customevents
[prop
]);}}},handleReadyState:function(o
,callback
)
232 {var oConn
=this;if(callback
&&callback
.timeout
){this._timeOut
[o
.tId
]=window
.setTimeout(function(){oConn
.abort(o
,callback
,true);},callback
.timeout
);}
233 this._poll
[o
.tId
]=window
.setInterval(function(){if(o
.conn
&&o
.conn
.readyState
===4){window
.clearInterval(oConn
._poll
[o
.tId
]);delete oConn
._poll
[o
.tId
];if(callback
&&callback
.timeout
){window
.clearTimeout(oConn
._timeOut
[o
.tId
]);delete oConn
._timeOut
[o
.tId
];}
234 oConn
.completeEvent
.fire(o
);if(o
.completeEvent
){o
.completeEvent
.fire(o
);}
235 oConn
.handleTransactionResponse(o
,callback
);}},this._polling_interval
);},handleTransactionResponse:function(o
,callback
,isAbort
)
236 {if(!callback
){this.releaseObject(o
);return;}
237 var httpStatus
,responseObject
;try
238 {if(o
.conn
.status
!==undefined&&o
.conn
.status
!==0){httpStatus
=o
.conn
.status
;}
239 else{httpStatus
=13030;}}
240 catch(e
){httpStatus
=13030;}
241 if(httpStatus
>=200&&httpStatus
<300||httpStatus
===1223){responseObject
=this.createResponseObject(o
,callback
.argument
);if(callback
.success
){if(!callback
.scope
){callback
.success(responseObject
);}
242 else{callback
.success
.apply(callback
.scope
,[responseObject
]);}}
243 this.successEvent
.fire(responseObject
);if(o
.successEvent
){o
.successEvent
.fire(responseObject
);}}
244 else{switch(httpStatus
){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:responseObject
=this.createExceptionObject(o
.tId
,callback
.argument
,(isAbort
?isAbort
:false));if(callback
.failure
){if(!callback
.scope
){callback
.failure(responseObject
);}
245 else{callback
.failure
.apply(callback
.scope
,[responseObject
]);}}
246 break;default:responseObject
=this.createResponseObject(o
,callback
.argument
);if(callback
.failure
){if(!callback
.scope
){callback
.failure(responseObject
);}
247 else{callback
.failure
.apply(callback
.scope
,[responseObject
]);}}}
248 this.failureEvent
.fire(responseObject
);if(o
.failureEvent
){o
.failureEvent
.fire(responseObject
);}}
249 this.releaseObject(o
);responseObject
=null;},createResponseObject:function(o
,callbackArg
)
250 {var obj
={};var headerObj
={};try
251 {var headerStr
=o
.conn
.getAllResponseHeaders();var header
=headerStr
.split('\n');for(var i
=0;i
<header
.length
;i
++){var delimitPos
=header
[i
].indexOf(':');if(delimitPos
!=-1){headerObj
[header
[i
].substring(0,delimitPos
)]=header
[i
].substring(delimitPos
+2);}}}
253 obj
.tId
=o
.tId
;obj
.status
=(o
.conn
.status
==1223)?204:o
.conn
.status
;obj
.statusText
=(o
.conn
.status
==1223)?"No Content":o
.conn
.statusText
;obj
.getResponseHeader
=headerObj
;obj
.getAllResponseHeaders
=headerStr
;obj
.responseText
=o
.conn
.responseText
;obj
.responseXML
=o
.conn
.responseXML
;if(typeof callbackArg
!==undefined){obj
.argument
=callbackArg
;}
254 return obj
;},createExceptionObject:function(tId
,callbackArg
,isAbort
)
255 {var COMM_CODE
=0;var COMM_ERROR
='communication failure';var ABORT_CODE
=-1;var ABORT_ERROR
='transaction aborted';var obj
={};obj
.tId
=tId
;if(isAbort
){obj
.status
=ABORT_CODE
;obj
.statusText
=ABORT_ERROR
;}
256 else{obj
.status
=COMM_CODE
;obj
.statusText
=COMM_ERROR
;}
257 if(callbackArg
){obj
.argument
=callbackArg
;}
258 return obj
;},initHeader:function(label
,value
,isDefault
)
259 {var headerObj
=(isDefault
)?this._default_headers
:this._http_headers
;if(headerObj
[label
]===undefined){headerObj
[label
]=value
;}
260 else{headerObj
[label
]=value
+","+headerObj
[label
];}
261 if(isDefault
){this._has_default_headers
=true;}
262 else{this._has_http_headers
=true;}},setHeader:function(o
)
263 {if(this._has_default_headers
){for(var prop
in this._default_headers
){if(YAHOO
.lang
.hasOwnProperty(this._default_headers
,prop
)){o
.conn
.setRequestHeader(prop
,this._default_headers
[prop
]);}}}
264 if(this._has_http_headers
){for(var prop
in this._http_headers
){if(YAHOO
.lang
.hasOwnProperty(this._http_headers
,prop
)){o
.conn
.setRequestHeader(prop
,this._http_headers
[prop
]);}}
265 delete this._http_headers
;this._http_headers
={};this._has_http_headers
=false;}},resetDefaultHeaders:function(){delete this._default_headers
;this._default_headers
={};this._has_default_headers
=false;},setForm:function(formId
,isUpload
,secureUri
)
266 {this.resetFormState();var oForm
;if(typeof formId
=='string'){oForm
=(document
.getElementById(formId
)||document
.forms
[formId
]);}
267 else if(typeof formId
=='object'){oForm
=formId
;}
269 if(isUpload
){var io
=this.createFrame(secureUri
?secureUri
:null);this._isFormSubmit
=true;this._isFileUpload
=true;this._formNode
=oForm
;return;}
270 var oElement
,oName
,oValue
,oDisabled
;var hasSubmit
=false;for(var i
=0;i
<oForm
.elements
.length
;i
++){oElement
=oForm
.elements
[i
];oDisabled
=oForm
.elements
[i
].disabled
;oName
=oForm
.elements
[i
].name
;oValue
=oForm
.elements
[i
].value
;if(!oDisabled
&&oName
)
271 {switch(oElement
.type
)
272 {case'select-one':case'select-multiple':for(var j
=0;j
<oElement
.options
.length
;j
++){if(oElement
.options
[j
].selected
){if(window
.ActiveXObject
){this._sFormData
+=encodeURIComponent(oName
)+'='+encodeURIComponent(oElement
.options
[j
].attributes
['value'].specified
?oElement
.options
[j
].value
:oElement
.options
[j
].text
)+'&';}
273 else{this._sFormData
+=encodeURIComponent(oName
)+'='+encodeURIComponent(oElement
.options
[j
].hasAttribute('value')?oElement
.options
[j
].value
:oElement
.options
[j
].text
)+'&';}}}
274 break;case'radio':case'checkbox':if(oElement
.checked
){this._sFormData
+=encodeURIComponent(oName
)+'='+encodeURIComponent(oValue
)+'&';}
275 break;case'file':case undefined:case'reset':case'button':break;case'submit':if(hasSubmit
===false){if(this._hasSubmitListener
&&this._submitElementValue
){this._sFormData
+=this._submitElementValue
+'&';}
276 else{this._sFormData
+=encodeURIComponent(oName
)+'='+encodeURIComponent(oValue
)+'&';}
278 break;default:this._sFormData
+=encodeURIComponent(oName
)+'='+encodeURIComponent(oValue
)+'&';}}}
279 this._isFormSubmit
=true;this._sFormData
=this._sFormData
.substr(0,this._sFormData
.length
-1);return this._sFormData
;},resetFormState:function(){this._isFormSubmit
=false;this._isFileUpload
=false;this._formNode
=null;this._sFormData
="";},createFrame:function(secureUri
){var frameId
='yuiIO'+this._transaction_id
;var io
;if(window
.ActiveXObject
){io
=document
.createElement('<iframe id="'+frameId
+'" name="'+frameId
+'" />');if(typeof secureUri
=='boolean'){io
.src
='javascript:false';}
280 else if(typeof secureURI
=='string'){io
.src
=secureUri
;}}
281 else{io
=document
.createElement('iframe');io
.id
=frameId
;io
.name
=frameId
;}
282 io
.style
.position
='absolute';io
.style
.top
='-1000px';io
.style
.left
='-1000px';document
.body
.appendChild(io
);},appendPostData:function(postData
)
283 {var formElements
=[];var postMessage
=postData
.split('&');for(var i
=0;i
<postMessage
.length
;i
++){var delimitPos
=postMessage
[i
].indexOf('=');if(delimitPos
!=-1){formElements
[i
]=document
.createElement('input');formElements
[i
].type
='hidden';formElements
[i
].name
=postMessage
[i
].substring(0,delimitPos
);formElements
[i
].value
=postMessage
[i
].substring(delimitPos
+1);this._formNode
.appendChild(formElements
[i
]);}}
284 return formElements
;},uploadFile:function(o
,callback
,uri
,postData
){var frameId
='yuiIO'+o
.tId
;var uploadEncoding
='multipart/form-data';var io
=document
.getElementById(frameId
);var oConn
=this;var rawFormAttributes
={action
:this._formNode
.getAttribute('action'),method
:this._formNode
.getAttribute('method'),target
:this._formNode
.getAttribute('target')};this._formNode
.setAttribute('action',uri
);this._formNode
.setAttribute('method','POST');this._formNode
.setAttribute('target',frameId
);if(this._formNode
.encoding
){this._formNode
.setAttribute('encoding',uploadEncoding
);}
285 else{this._formNode
.setAttribute('enctype',uploadEncoding
);}
286 if(postData
){var oElements
=this.appendPostData(postData
);}
287 this._formNode
.submit();this.startEvent
.fire(o
);if(o
.startEvent
){o
.startEvent
.fire(o
);}
288 if(callback
&&callback
.timeout
){this._timeOut
[o
.tId
]=window
.setTimeout(function(){oConn
.abort(o
,callback
,true);},callback
.timeout
);}
289 if(oElements
&&oElements
.length
>0){for(var i
=0;i
<oElements
.length
;i
++){this._formNode
.removeChild(oElements
[i
]);}}
290 for(var prop
in rawFormAttributes
){if(YAHOO
.lang
.hasOwnProperty(rawFormAttributes
,prop
)){if(rawFormAttributes
[prop
]){this._formNode
.setAttribute(prop
,rawFormAttributes
[prop
]);}
291 else{this._formNode
.removeAttribute(prop
);}}}
292 this.resetFormState();var uploadCallback=function()
293 {if(callback
&&callback
.timeout
){window
.clearTimeout(oConn
._timeOut
[o
.tId
]);delete oConn
._timeOut
[o
.tId
];}
294 oConn
.completeEvent
.fire(o
);if(o
.completeEvent
){o
.completeEvent
.fire(o
);}
295 var obj
={};obj
.tId
=o
.tId
;obj
.argument
=callback
.argument
;try
296 {obj
.responseText
=io
.contentWindow
.document
.body
?io
.contentWindow
.document
.body
.innerHTML
:io
.contentWindow
.document
.documentElement
.textContent
;obj
.responseXML
=io
.contentWindow
.document
.XMLDocument
?io
.contentWindow
.document
.XMLDocument
:io
.contentWindow
.document
;}
298 if(callback
&&callback
.upload
){if(!callback
.scope
){callback
.upload(obj
);}
299 else{callback
.upload
.apply(callback
.scope
,[obj
]);}}
300 oConn
.uploadEvent
.fire(obj
);if(o
.uploadEvent
){o
.uploadEvent
.fire(obj
);}
301 if(YAHOO
.util
.Event
){YAHOO
.util
.Event
.removeListener(io
,"load",uploadCallback
);}
302 else if(window
.detachEvent
){io
.detachEvent('onload',uploadCallback
);}
303 else{io
.removeEventListener('load',uploadCallback
,false);}
304 setTimeout(function(){document
.body
.removeChild(io
);oConn
.releaseObject(o
);},100);};if(YAHOO
.util
.Event
){YAHOO
.util
.Event
.addListener(io
,"load",uploadCallback
);}
305 else if(window
.attachEvent
){io
.attachEvent('onload',uploadCallback
);}
306 else{io
.addEventListener('load',uploadCallback
,false);}},abort:function(o
,callback
,isTimeout
)
307 {var abortStatus
;if(o
.conn
){if(this.isCallInProgress(o
)){o
.conn
.abort();window
.clearInterval(this._poll
[o
.tId
]);delete this._poll
[o
.tId
];if(isTimeout
){window
.clearTimeout(this._timeOut
[o
.tId
]);delete this._timeOut
[o
.tId
];}
309 else if(o
.isUpload
===true){var frameId
='yuiIO'+o
.tId
;var io
=document
.getElementById(frameId
);if(io
){document
.body
.removeChild(io
);if(isTimeout
){window
.clearTimeout(this._timeOut
[o
.tId
]);delete this._timeOut
[o
.tId
];}
311 else{abortStatus
=false;}
312 if(abortStatus
===true){this.abortEvent
.fire(o
);if(o
.abortEvent
){o
.abortEvent
.fire(o
);}
313 this.handleTransactionResponse(o
,callback
,true);}
315 return abortStatus
;},isCallInProgress:function(o
)
316 {if(o
&&o
.conn
){return o
.conn
.readyState
!==4&&o
.conn
.readyState
!==0;}
317 else if(o
&&o
.isUpload
===true){var frameId
='yuiIO'+o
.tId
;return document
.getElementById(frameId
)?true:false;}
318 else{return false;}},releaseObject:function(o
)
319 {if(o
.conn
){o
.conn
=null;}
320 o
=null;}};YAHOO
.register("connection",YAHOO
.util
.Connect
,{version
:"2.3.0",build
:"442"});
321 YAHOO
.util
.Anim=function(el
,attributes
,duration
,method
){if(!el
){}
322 this.init(el
,attributes
,duration
,method
);};YAHOO
.util
.Anim
.prototype={toString:function(){var el
=this.getEl();var id
=el
.id
||el
.tagName
||el
;return("Anim "+id
);},patterns
:{noNegatives
:/width|height|opacity|padding/i,offsetAttribute
:/^((width|height)|(top|left))$/,defaultUnit
:/width|height|top$|bottom$|left$|right$/i,offsetUnit
:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(attr
,start
,end
){return this.method(this.currentFrame
,start
,end
-start
,this.totalFrames
);},setAttribute:function(attr
,val
,unit
){if(this.patterns
.noNegatives
.test(attr
)){val
=(val
>0)?val
:0;}
323 YAHOO
.util
.Dom
.setStyle(this.getEl(),attr
,val
+unit
);},getAttribute:function(attr
){var el
=this.getEl();var val
=YAHOO
.util
.Dom
.getStyle(el
,attr
);if(val
!=='auto'&&!this.patterns
.offsetUnit
.test(val
)){return parseFloat(val
);}
324 var a
=this.patterns
.offsetAttribute
.exec(attr
)||[];var pos
=!!(a
[3]);var box
=!!(a
[2]);if(box
||(YAHOO
.util
.Dom
.getStyle(el
,'position')=='absolute'&&pos
)){val
=el
['offset'+a
[0].charAt(0).toUpperCase()+a
[0].substr(1)];}else{val
=0;}
325 return val
;},getDefaultUnit:function(attr
){if(this.patterns
.defaultUnit
.test(attr
)){return'px';}
326 return'';},setRuntimeAttribute:function(attr
){var start
;var end
;var attributes
=this.attributes
;this.runtimeAttributes
[attr
]={};var isset=function(prop
){return(typeof prop
!=='undefined');};if(!isset(attributes
[attr
]['to'])&&!isset(attributes
[attr
]['by'])){return false;}
327 start
=(isset(attributes
[attr
]['from']))?attributes
[attr
]['from']:this.getAttribute(attr
);if(isset(attributes
[attr
]['to'])){end
=attributes
[attr
]['to'];}else if(isset(attributes
[attr
]['by'])){if(start
.constructor==Array
){end
=[];for(var i
=0,len
=start
.length
;i
<len
;++i
){end
[i
]=start
[i
]+attributes
[attr
]['by'][i
]*1;}}else{end
=start
+attributes
[attr
]['by']*1;}}
328 this.runtimeAttributes
[attr
].start
=start
;this.runtimeAttributes
[attr
].end
=end
;this.runtimeAttributes
[attr
].unit
=(isset(attributes
[attr
].unit
))?attributes
[attr
]['unit']:this.getDefaultUnit(attr
);return true;},init:function(el
,attributes
,duration
,method
){var isAnimated
=false;var startTime
=null;var actualFrames
=0;el
=YAHOO
.util
.Dom
.get(el
);this.attributes
=attributes
||{};this.duration
=!YAHOO
.lang
.isUndefined(duration
)?duration
:1;this.method
=method
||YAHOO
.util
.Easing
.easeNone
;this.useSeconds
=true;this.currentFrame
=0;this.totalFrames
=YAHOO
.util
.AnimMgr
.fps
;this.setEl=function(element
){el
=YAHOO
.util
.Dom
.get(element
);};this.getEl=function(){return el
;};this.isAnimated=function(){return isAnimated
;};this.getStartTime=function(){return startTime
;};this.runtimeAttributes
={};this.animate=function(){if(this.isAnimated()){return false;}
329 this.currentFrame
=0;this.totalFrames
=(this.useSeconds
)?Math
.ceil(YAHOO
.util
.AnimMgr
.fps
*this.duration
):this.duration
;if(this.duration
===0&&this.useSeconds
){this.totalFrames
=1;}
330 YAHOO
.util
.AnimMgr
.registerElement(this);return true;};this.stop=function(finish
){if(finish
){this.currentFrame
=this.totalFrames
;this._onTween
.fire();}
331 YAHOO
.util
.AnimMgr
.stop(this);};var onStart=function(){this.onStart
.fire();this.runtimeAttributes
={};for(var attr
in this.attributes
){this.setRuntimeAttribute(attr
);}
332 isAnimated
=true;actualFrames
=0;startTime
=new Date();};var onTween=function(){var data
={duration
:new Date()-this.getStartTime(),currentFrame
:this.currentFrame
};data
.toString=function(){return('duration: '+data
.duration
+', currentFrame: '+data
.currentFrame
);};this.onTween
.fire(data
);var runtimeAttributes
=this.runtimeAttributes
;for(var attr
in runtimeAttributes
){this.setAttribute(attr
,this.doMethod(attr
,runtimeAttributes
[attr
].start
,runtimeAttributes
[attr
].end
),runtimeAttributes
[attr
].unit
);}
333 actualFrames
+=1;};var onComplete=function(){var actual_duration
=(new Date()-startTime
)/1000;var data={duration:actual_duration,frames:actualFrames,fps:actualFrames/actual_duration};data
.toString=function(){return('duration: '+data
.duration
+', frames: '+data
.frames
+', fps: '+data
.fps
);};isAnimated
=false;actualFrames
=0;this.onComplete
.fire(data
);};this._onStart
=new YAHOO
.util
.CustomEvent('_start',this,true);this.onStart
=new YAHOO
.util
.CustomEvent('start',this);this.onTween
=new YAHOO
.util
.CustomEvent('tween',this);this._onTween
=new YAHOO
.util
.CustomEvent('_tween',this,true);this.onComplete
=new YAHOO
.util
.CustomEvent('complete',this);this._onComplete
=new YAHOO
.util
.CustomEvent('_complete',this,true);this._onStart
.subscribe(onStart
);this._onTween
.subscribe(onTween
);this._onComplete
.subscribe(onComplete
);}};YAHOO
.util
.AnimMgr
=new function(){var thread
=null;var queue
=[];var tweenCount
=0;this.fps
=1000;this.delay
=1;this.registerElement=function(tween
){queue
[queue
.length
]=tween
;tweenCount
+=1;tween
._onStart
.fire();this.start();};this.unRegister=function(tween
,index
){tween
._onComplete
.fire();index
=index
||getIndex(tween
);if(index
==-1){return false;}
334 queue
.splice(index
,1);tweenCount
-=1;if(tweenCount
<=0){this.stop();}
335 return true;};this.start=function(){if(thread
===null){thread
=setInterval(this.run
,this.delay
);}};this.stop=function(tween
){if(!tween
){clearInterval(thread
);for(var i
=0,len
=queue
.length
;i
<len
;++i
){if(queue
[0].isAnimated()){this.unRegister(queue
[0],0);}}
336 queue
=[];thread
=null;tweenCount
=0;}
337 else{this.unRegister(tween
);}};this.run=function(){for(var i
=0,len
=queue
.length
;i
<len
;++i
){var tween
=queue
[i
];if(!tween
||!tween
.isAnimated()){continue;}
338 if(tween
.currentFrame
<tween
.totalFrames
||tween
.totalFrames
===null)
339 {tween
.currentFrame
+=1;if(tween
.useSeconds
){correctFrame(tween
);}
340 tween
._onTween
.fire();}
341 else{YAHOO
.util
.AnimMgr
.stop(tween
,i
);}}};var getIndex=function(anim
){for(var i
=0,len
=queue
.length
;i
<len
;++i
){if(queue
[i
]==anim
){return i
;}}
342 return-1;};var correctFrame=function(tween
){var frames
=tween
.totalFrames
;var frame
=tween
.currentFrame
;var expected
=(tween
.currentFrame
*tween
.duration
*1000/tween.totalFrames);var elapsed=(new Date()-tween.getStartTime());var tweak=0;if(elapsed<tween.duration*1000){tweak=Math.round((elapsed/expected
-1)*tween
.currentFrame
);}else{tweak
=frames
-(frame
+1);}
343 if(tweak
>0&&isFinite(tweak
)){if(tween
.currentFrame
+tweak
>=frames
){tweak
=frames
-(frame
+1);}
344 tween
.currentFrame
+=tweak
;}};};YAHOO
.util
.Bezier
=new function(){this.getPosition=function(points
,t
){var n
=points
.length
;var tmp
=[];for(var i
=0;i
<n
;++i
){tmp
[i
]=[points
[i
][0],points
[i
][1]];}
345 for(var j
=1;j
<n
;++j
){for(i
=0;i
<n
-j
;++i
){tmp
[i
][0]=(1-t
)*tmp
[i
][0]+t
*tmp
[parseInt(i
+1,10)][0];tmp
[i
][1]=(1-t
)*tmp
[i
][1]+t
*tmp
[parseInt(i
+1,10)][1];}}
346 return[tmp
[0][0],tmp
[0][1]];};};(function(){YAHOO
.util
.ColorAnim=function(el
,attributes
,duration
,method
){YAHOO
.util
.ColorAnim
.superclass
.constructor.call(this,el
,attributes
,duration
,method
);};YAHOO
.extend(YAHOO
.util
.ColorAnim
,YAHOO
.util
.Anim
);var Y
=YAHOO
.util
;var superclass
=Y
.ColorAnim
.superclass
;var proto
=Y
.ColorAnim
.prototype;proto
.toString=function(){var el
=this.getEl();var id
=el
.id
||el
.tagName
;return("ColorAnim "+id
);};proto
.patterns
.color
=/color$/i;proto
.patterns
.rgb
=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;proto
.patterns
.hex
=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;proto
.patterns
.hex3
=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i;proto
.patterns
.transparent
=/^transparent|rgba\(0, 0, 0, 0\)$/;proto
.parseColor=function(s
){if(s
.length
==3){return s
;}
347 var c
=this.patterns
.hex
.exec(s
);if(c
&&c
.length
==4){return[parseInt(c
[1],16),parseInt(c
[2],16),parseInt(c
[3],16)];}
348 c
=this.patterns
.rgb
.exec(s
);if(c
&&c
.length
==4){return[parseInt(c
[1],10),parseInt(c
[2],10),parseInt(c
[3],10)];}
349 c
=this.patterns
.hex3
.exec(s
);if(c
&&c
.length
==4){return[parseInt(c
[1]+c
[1],16),parseInt(c
[2]+c
[2],16),parseInt(c
[3]+c
[3],16)];}
350 return null;};proto
.getAttribute=function(attr
){var el
=this.getEl();if(this.patterns
.color
.test(attr
)){var val
=YAHOO
.util
.Dom
.getStyle(el
,attr
);if(this.patterns
.transparent
.test(val
)){var parent
=el
.parentNode
;val
=Y
.Dom
.getStyle(parent
,attr
);while(parent
&&this.patterns
.transparent
.test(val
)){parent
=parent
.parentNode
;val
=Y
.Dom
.getStyle(parent
,attr
);if(parent
.tagName
.toUpperCase()=='HTML'){val
='#fff';}}}}else{val
=superclass
.getAttribute
.call(this,attr
);}
351 return val
;};proto
.doMethod=function(attr
,start
,end
){var val
;if(this.patterns
.color
.test(attr
)){val
=[];for(var i
=0,len
=start
.length
;i
<len
;++i
){val
[i
]=superclass
.doMethod
.call(this,attr
,start
[i
],end
[i
]);}
352 val
='rgb('+Math
.floor(val
[0])+','+Math
.floor(val
[1])+','+Math
.floor(val
[2])+')';}
353 else{val
=superclass
.doMethod
.call(this,attr
,start
,end
);}
354 return val
;};proto
.setRuntimeAttribute=function(attr
){superclass
.setRuntimeAttribute
.call(this,attr
);if(this.patterns
.color
.test(attr
)){var attributes
=this.attributes
;var start
=this.parseColor(this.runtimeAttributes
[attr
].start
);var end
=this.parseColor(this.runtimeAttributes
[attr
].end
);if(typeof attributes
[attr
]['to']==='undefined'&&typeof attributes
[attr
]['by']!=='undefined'){end
=this.parseColor(attributes
[attr
].by
);for(var i
=0,len
=start
.length
;i
<len
;++i
){end
[i
]=start
[i
]+end
[i
];}}
355 this.runtimeAttributes
[attr
].start
=start
;this.runtimeAttributes
[attr
].end
=end
;}};})();YAHOO
.util
.Easing
={easeNone:function(t
,b
,c
,d
){return c
*t
/d+b;},easeIn:function(t,b,c,d){return c*(t/=d
)*t
+b
;},easeOut:function(t
,b
,c
,d
){return-c
*(t
/=d)*(t-2)+b;},easeBoth:function(t,b,c,d){if((t/=d
/2)<1){return c/2*t
*t
+b
;}
356 return-c
/2*((--t)*(t-2)-1)+b;},easeInStrong:function(t,b,c,d){return c*(t/=d
)*t
*t
*t
+b
;},easeOutStrong:function(t
,b
,c
,d
){return-c
*((t
=t
/d-1)*t*t*t-1)+b;},easeBothStrong:function(t,b,c,d){if((t/=d
/2)<1){return c/2*t
*t
*t
*t
+b
;}
357 return-c
/2*((t
-=2)*t
*t
*t
-2)+b
;},elasticIn:function(t
,b
,c
,d
,a
,p
){if(t
==0){return b
;}
358 if((t
/=d
)==1){return b
+c
;}
360 if(!a
||a
<Math
.abs(c
)){a
=c
;var s
=p
/4;}
361 else{var s
=p
/(2*Math.PI)*Math.asin(c/a);}
362 return-(a
*Math
.pow(2,10*(t
-=1))*Math
.sin((t
*d
-s
)*(2*Math
.PI
)/p
))+b
;},elasticOut:function(t
,b
,c
,d
,a
,p
){if(t
==0){return b
;}
363 if((t
/=d
)==1){return b
+c
;}
365 if(!a
||a
<Math
.abs(c
)){a
=c
;var s
=p
/4;}
366 else{var s
=p
/(2*Math.PI)*Math.asin(c/a);}
367 return a
*Math
.pow(2,-10*t
)*Math
.sin((t
*d
-s
)*(2*Math
.PI
)/p
)+c
+b
;},elasticBoth:function(t
,b
,c
,d
,a
,p
){if(t
==0){return b
;}
368 if((t
/=d/2)==2){return b
+c
;}
369 if(!p
){p
=d
*(.3*1.5);}
370 if(!a
||a
<Math
.abs(c
)){a
=c
;var s
=p
/4;}
371 else{var s
=p
/(2*Math.PI)*Math.asin(c/a);}
372 if(t
<1){return-.5*(a
*Math
.pow(2,10*(t
-=1))*Math
.sin((t
*d
-s
)*(2*Math
.PI
)/p
))+b
;}
373 return a
*Math
.pow(2,-10*(t
-=1))*Math
.sin((t
*d
-s
)*(2*Math
.PI
)/p
)*.5+c
+b
;},backIn:function(t
,b
,c
,d
,s
){if(typeof s
=='undefined'){s
=1.70158;}
374 return c
*(t
/=d
)*t
*((s
+1)*t
-s
)+b
;},backOut:function(t
,b
,c
,d
,s
){if(typeof s
=='undefined'){s
=1.70158;}
375 return c
*((t
=t
/d
-1)*t
*((s
+1)*t
+s
)+1)+b
;},backBoth:function(t
,b
,c
,d
,s
){if(typeof s
=='undefined'){s
=1.70158;}
376 if((t
/=d/2)<1){return c
/2*(t
*t
*(((s
*=(1.525))+1)*t
-s
))+b
;}
377 return c
/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;},bounceIn:function(t,b,c,d){return c-YAHOO.util.Easing.bounceOut(d-t,0,c,d)+b;},bounceOut:function(t,b,c,d){if((t/=d
)<(1/2.75)){return c*(7.5625*t*t)+b;}else if(t<(2/2.75)){return c
*(7.5625*(t
-=(1.5/2.75))*t+.75)+b;}else if(t<(2.5/2.75)){return c
*(7.5625*(t
-=(2.25/2.75))*t
+.9375)+b
;}
378 return c
*(7.5625*(t
-=(2.625/2.75))*t+.984375)+b;},bounceBoth:function(t,b,c,d){if(t<d/2){return YAHOO
.util
.Easing
.bounceIn(t
*2,0,c
,d
)*.5+b
;}
379 return YAHOO
.util
.Easing
.bounceOut(t
*2-d
,0,c
,d
)*.5+c
*.5+b
;}};(function(){YAHOO
.util
.Motion=function(el
,attributes
,duration
,method
){if(el
){YAHOO
.util
.Motion
.superclass
.constructor.call(this,el
,attributes
,duration
,method
);}};YAHOO
.extend(YAHOO
.util
.Motion
,YAHOO
.util
.ColorAnim
);var Y
=YAHOO
.util
;var superclass
=Y
.Motion
.superclass
;var proto
=Y
.Motion
.prototype;proto
.toString=function(){var el
=this.getEl();var id
=el
.id
||el
.tagName
;return("Motion "+id
);};proto
.patterns
.points
=/^points$/i;proto
.setAttribute=function(attr
,val
,unit
){if(this.patterns
.points
.test(attr
)){unit
=unit
||'px';superclass
.setAttribute
.call(this,'left',val
[0],unit
);superclass
.setAttribute
.call(this,'top',val
[1],unit
);}else{superclass
.setAttribute
.call(this,attr
,val
,unit
);}};proto
.getAttribute=function(attr
){if(this.patterns
.points
.test(attr
)){var val
=[superclass
.getAttribute
.call(this,'left'),superclass
.getAttribute
.call(this,'top')];}else{val
=superclass
.getAttribute
.call(this,attr
);}
380 return val
;};proto
.doMethod=function(attr
,start
,end
){var val
=null;if(this.patterns
.points
.test(attr
)){var t
=this.method(this.currentFrame
,0,100,this.totalFrames
)/100;val
=Y
.Bezier
.getPosition(this.runtimeAttributes
[attr
],t
);}else{val
=superclass
.doMethod
.call(this,attr
,start
,end
);}
381 return val
;};proto
.setRuntimeAttribute=function(attr
){if(this.patterns
.points
.test(attr
)){var el
=this.getEl();var attributes
=this.attributes
;var start
;var control
=attributes
['points']['control']||[];var end
;var i
,len
;if(control
.length
>0&&!(control
[0]instanceof Array
)){control
=[control
];}else{var tmp
=[];for(i
=0,len
=control
.length
;i
<len
;++i
){tmp
[i
]=control
[i
];}
383 if(Y
.Dom
.getStyle(el
,'position')=='static'){Y
.Dom
.setStyle(el
,'position','relative');}
384 if(isset(attributes
['points']['from'])){Y
.Dom
.setXY(el
,attributes
['points']['from']);}
385 else{Y
.Dom
.setXY(el
,Y
.Dom
.getXY(el
));}
386 start
=this.getAttribute('points');if(isset(attributes
['points']['to'])){end
=translateValues
.call(this,attributes
['points']['to'],start
);var pageXY
=Y
.Dom
.getXY(this.getEl());for(i
=0,len
=control
.length
;i
<len
;++i
){control
[i
]=translateValues
.call(this,control
[i
],start
);}}else if(isset(attributes
['points']['by'])){end
=[start
[0]+attributes
['points']['by'][0],start
[1]+attributes
['points']['by'][1]];for(i
=0,len
=control
.length
;i
<len
;++i
){control
[i
]=[start
[0]+control
[i
][0],start
[1]+control
[i
][1]];}}
387 this.runtimeAttributes
[attr
]=[start
];if(control
.length
>0){this.runtimeAttributes
[attr
]=this.runtimeAttributes
[attr
].concat(control
);}
388 this.runtimeAttributes
[attr
][this.runtimeAttributes
[attr
].length
]=end
;}
389 else{superclass
.setRuntimeAttribute
.call(this,attr
);}};var translateValues=function(val
,start
){var pageXY
=Y
.Dom
.getXY(this.getEl());val
=[val
[0]-pageXY
[0]+start
[0],val
[1]-pageXY
[1]+start
[1]];return val
;};var isset=function(prop
){return(typeof prop
!=='undefined');};})();(function(){YAHOO
.util
.Scroll=function(el
,attributes
,duration
,method
){if(el
){YAHOO
.util
.Scroll
.superclass
.constructor.call(this,el
,attributes
,duration
,method
);}};YAHOO
.extend(YAHOO
.util
.Scroll
,YAHOO
.util
.ColorAnim
);var Y
=YAHOO
.util
;var superclass
=Y
.Scroll
.superclass
;var proto
=Y
.Scroll
.prototype;proto
.toString=function(){var el
=this.getEl();var id
=el
.id
||el
.tagName
;return("Scroll "+id
);};proto
.doMethod=function(attr
,start
,end
){var val
=null;if(attr
=='scroll'){val
=[this.method(this.currentFrame
,start
[0],end
[0]-start
[0],this.totalFrames
),this.method(this.currentFrame
,start
[1],end
[1]-start
[1],this.totalFrames
)];}else{val
=superclass
.doMethod
.call(this,attr
,start
,end
);}
390 return val
;};proto
.getAttribute=function(attr
){var val
=null;var el
=this.getEl();if(attr
=='scroll'){val
=[el
.scrollLeft
,el
.scrollTop
];}else{val
=superclass
.getAttribute
.call(this,attr
);}
391 return val
;};proto
.setAttribute=function(attr
,val
,unit
){var el
=this.getEl();if(attr
=='scroll'){el
.scrollLeft
=val
[0];el
.scrollTop
=val
[1];}else{superclass
.setAttribute
.call(this,attr
,val
,unit
);}};})();YAHOO
.register("animation",YAHOO
.util
.Anim
,{version
:"2.3.0",build
:"442"});
392 if(!YAHOO
.util
.DragDropMgr
){YAHOO
.util
.DragDropMgr=function(){var Event
=YAHOO
.util
.Event
;return{ids
:{},handleIds
:{},dragCurrent
:null,dragOvers
:{},deltaX
:0,deltaY
:0,preventDefault
:true,stopPropagation
:true,initialized
:false,locked
:false,interactionInfo
:null,init:function(){this.initialized
=true;},POINT
:0,INTERSECT
:1,STRICT_INTERSECT
:2,mode
:0,_execOnAll:function(sMethod
,args
){for(var i
in this.ids
){for(var j
in this.ids
[i
]){var oDD
=this.ids
[i
][j
];if(!this.isTypeOfDD(oDD
)){continue;}
393 oDD
[sMethod
].apply(oDD
,args
);}}},_onLoad:function(){this.init();Event
.on(document
,"mouseup",this.handleMouseUp
,this,true);Event
.on(document
,"mousemove",this.handleMouseMove
,this,true);Event
.on(window
,"unload",this._onUnload
,this,true);Event
.on(window
,"resize",this._onResize
,this,true);},_onResize:function(e
){this._execOnAll("resetConstraints",[]);},lock:function(){this.locked
=true;},unlock:function(){this.locked
=false;},isLocked:function(){return this.locked
;},locationCache
:{},useCache
:true,clickPixelThresh
:3,clickTimeThresh
:1000,dragThreshMet
:false,clickTimeout
:null,startX
:0,startY
:0,regDragDrop:function(oDD
,sGroup
){if(!this.initialized
){this.init();}
394 if(!this.ids
[sGroup
]){this.ids
[sGroup
]={};}
395 this.ids
[sGroup
][oDD
.id
]=oDD
;},removeDDFromGroup:function(oDD
,sGroup
){if(!this.ids
[sGroup
]){this.ids
[sGroup
]={};}
396 var obj
=this.ids
[sGroup
];if(obj
&&obj
[oDD
.id
]){delete obj
[oDD
.id
];}},_remove:function(oDD
){for(var g
in oDD
.groups
){if(g
&&this.ids
[g
][oDD
.id
]){delete this.ids
[g
][oDD
.id
];}}
397 delete this.handleIds
[oDD
.id
];},regHandle:function(sDDId
,sHandleId
){if(!this.handleIds
[sDDId
]){this.handleIds
[sDDId
]={};}
398 this.handleIds
[sDDId
][sHandleId
]=sHandleId
;},isDragDrop:function(id
){return(this.getDDById(id
))?true:false;},getRelated:function(p_oDD
,bTargetsOnly
){var oDDs
=[];for(var i
in p_oDD
.groups
){for(j
in this.ids
[i
]){var dd
=this.ids
[i
][j
];if(!this.isTypeOfDD(dd
)){continue;}
399 if(!bTargetsOnly
||dd
.isTarget
){oDDs
[oDDs
.length
]=dd
;}}}
400 return oDDs
;},isLegalTarget:function(oDD
,oTargetDD
){var targets
=this.getRelated(oDD
,true);for(var i
=0,len
=targets
.length
;i
<len
;++i
){if(targets
[i
].id
==oTargetDD
.id
){return true;}}
401 return false;},isTypeOfDD:function(oDD
){return(oDD
&&oDD
.__ygDragDrop
);},isHandle:function(sDDId
,sHandleId
){return(this.handleIds
[sDDId
]&&this.handleIds
[sDDId
][sHandleId
]);},getDDById:function(id
){for(var i
in this.ids
){if(this.ids
[i
][id
]){return this.ids
[i
][id
];}}
402 return null;},handleMouseDown:function(e
,oDD
){this.currentTarget
=YAHOO
.util
.Event
.getTarget(e
);this.dragCurrent
=oDD
;var el
=oDD
.getEl();this.startX
=YAHOO
.util
.Event
.getPageX(e
);this.startY
=YAHOO
.util
.Event
.getPageY(e
);this.deltaX
=this.startX
-el
.offsetLeft
;this.deltaY
=this.startY
-el
.offsetTop
;this.dragThreshMet
=false;this.clickTimeout
=setTimeout(function(){var DDM
=YAHOO
.util
.DDM
;DDM
.startDrag(DDM
.startX
,DDM
.startY
);},this.clickTimeThresh
);},startDrag:function(x
,y
){clearTimeout(this.clickTimeout
);var dc
=this.dragCurrent
;if(dc
){dc
.b4StartDrag(x
,y
);}
403 if(dc
){dc
.startDrag(x
,y
);}
404 this.dragThreshMet
=true;},handleMouseUp:function(e
){if(this.dragCurrent
){clearTimeout(this.clickTimeout
);if(this.dragThreshMet
){this.fireEvents(e
,true);}else{}
405 this.stopDrag(e
);this.stopEvent(e
);}},stopEvent:function(e
){if(this.stopPropagation
){YAHOO
.util
.Event
.stopPropagation(e
);}
406 if(this.preventDefault
){YAHOO
.util
.Event
.preventDefault(e
);}},stopDrag:function(e
,silent
){if(this.dragCurrent
&&!silent
){if(this.dragThreshMet
){this.dragCurrent
.b4EndDrag(e
);this.dragCurrent
.endDrag(e
);}
407 this.dragCurrent
.onMouseUp(e
);}
408 this.dragCurrent
=null;this.dragOvers
={};},handleMouseMove:function(e
){var dc
=this.dragCurrent
;if(dc
){if(YAHOO
.util
.Event
.isIE
&&!e
.button
){this.stopEvent(e
);return this.handleMouseUp(e
);}
409 if(!this.dragThreshMet
){var diffX
=Math
.abs(this.startX
-YAHOO
.util
.Event
.getPageX(e
));var diffY
=Math
.abs(this.startY
-YAHOO
.util
.Event
.getPageY(e
));if(diffX
>this.clickPixelThresh
||diffY
>this.clickPixelThresh
){this.startDrag(this.startX
,this.startY
);}}
410 if(this.dragThreshMet
){dc
.b4Drag(e
);if(dc
){dc
.onDrag(e
);}
411 if(dc
){this.fireEvents(e
,false);}}
412 this.stopEvent(e
);}},fireEvents:function(e
,isDrop
){var dc
=this.dragCurrent
;if(!dc
||dc
.isLocked()){return;}
413 var x
=YAHOO
.util
.Event
.getPageX(e
);var y
=YAHOO
.util
.Event
.getPageY(e
);var pt
=new YAHOO
.util
.Point(x
,y
);var pos
=dc
.getTargetCoord(pt
.x
,pt
.y
);var el
=dc
.getDragEl();curRegion
=new YAHOO
.util
.Region(pos
.y
,pos
.x
+el
.offsetWidth
,pos
.y
+el
.offsetHeight
,pos
.x
);var oldOvers
=[];var outEvts
=[];var overEvts
=[];var dropEvts
=[];var enterEvts
=[];for(var i
in this.dragOvers
){var ddo
=this.dragOvers
[i
];if(!this.isTypeOfDD(ddo
)){continue;}
414 if(!this.isOverTarget(pt
,ddo
,this.mode
,curRegion
)){outEvts
.push(ddo
);}
415 oldOvers
[i
]=true;delete this.dragOvers
[i
];}
416 for(var sGroup
in dc
.groups
){if("string"!=typeof sGroup
){continue;}
417 for(i
in this.ids
[sGroup
]){var oDD
=this.ids
[sGroup
][i
];if(!this.isTypeOfDD(oDD
)){continue;}
418 if(oDD
.isTarget
&&!oDD
.isLocked()&&oDD
!=dc
){if(this.isOverTarget(pt
,oDD
,this.mode
,curRegion
)){if(isDrop
){dropEvts
.push(oDD
);}else{if(!oldOvers
[oDD
.id
]){enterEvts
.push(oDD
);}else{overEvts
.push(oDD
);}
419 this.dragOvers
[oDD
.id
]=oDD
;}}}}}
420 this.interactionInfo
={out
:outEvts
,enter
:enterEvts
,over
:overEvts
,drop
:dropEvts
,point
:pt
,draggedRegion
:curRegion
,sourceRegion
:this.locationCache
[dc
.id
],validDrop
:isDrop
};if(isDrop
&&!dropEvts
.length
){this.interactionInfo
.validDrop
=false;dc
.onInvalidDrop(e
);}
421 if(this.mode
){if(outEvts
.length
){dc
.b4DragOut(e
,outEvts
);if(dc
){dc
.onDragOut(e
,outEvts
);}}
422 if(enterEvts
.length
){if(dc
){dc
.onDragEnter(e
,enterEvts
);}}
423 if(overEvts
.length
){if(dc
){dc
.b4DragOver(e
,overEvts
);}
424 if(dc
){dc
.onDragOver(e
,overEvts
);}}
425 if(dropEvts
.length
){if(dc
){dc
.b4DragDrop(e
,dropEvts
);}
426 if(dc
){dc
.onDragDrop(e
,dropEvts
);}}}else{var len
=0;for(i
=0,len
=outEvts
.length
;i
<len
;++i
){if(dc
){dc
.b4DragOut(e
,outEvts
[i
].id
);}
427 if(dc
){dc
.onDragOut(e
,outEvts
[i
].id
);}}
428 for(i
=0,len
=enterEvts
.length
;i
<len
;++i
){if(dc
){dc
.onDragEnter(e
,enterEvts
[i
].id
);}}
429 for(i
=0,len
=overEvts
.length
;i
<len
;++i
){if(dc
){dc
.b4DragOver(e
,overEvts
[i
].id
);}
430 if(dc
){dc
.onDragOver(e
,overEvts
[i
].id
);}}
431 for(i
=0,len
=dropEvts
.length
;i
<len
;++i
){if(dc
){dc
.b4DragDrop(e
,dropEvts
[i
].id
);}
432 if(dc
){dc
.onDragDrop(e
,dropEvts
[i
].id
);}}}},getBestMatch:function(dds
){var winner
=null;var len
=dds
.length
;if(len
==1){winner
=dds
[0];}else{for(var i
=0;i
<len
;++i
){var dd
=dds
[i
];if(this.mode
==this.INTERSECT
&&dd
.cursorIsOver
){winner
=dd
;break;}else{if(!winner
||!winner
.overlap
||(dd
.overlap
&&winner
.overlap
.getArea()<dd
.overlap
.getArea())){winner
=dd
;}}}}
433 return winner
;},refreshCache:function(groups
){var g
=groups
||this.ids
;for(var sGroup
in g
){if("string"!=typeof sGroup
){continue;}
434 for(var i
in this.ids
[sGroup
]){var oDD
=this.ids
[sGroup
][i
];if(this.isTypeOfDD(oDD
)){var loc
=this.getLocation(oDD
);if(loc
){this.locationCache
[oDD
.id
]=loc
;}else{delete this.locationCache
[oDD
.id
];}}}}},verifyEl:function(el
){try{if(el
){var parent
=el
.offsetParent
;if(parent
){return true;}}}catch(e
){}
435 return false;},getLocation:function(oDD
){if(!this.isTypeOfDD(oDD
)){return null;}
436 var el
=oDD
.getEl(),pos
,x1
,x2
,y1
,y2
,t
,r
,b
,l
;try{pos
=YAHOO
.util
.Dom
.getXY(el
);}catch(e
){}
437 if(!pos
){return null;}
438 x1
=pos
[0];x2
=x1
+el
.offsetWidth
;y1
=pos
[1];y2
=y1
+el
.offsetHeight
;t
=y1
-oDD
.padding
[0];r
=x2
+oDD
.padding
[1];b
=y2
+oDD
.padding
[2];l
=x1
-oDD
.padding
[3];return new YAHOO
.util
.Region(t
,r
,b
,l
);},isOverTarget:function(pt
,oTarget
,intersect
,curRegion
){var loc
=this.locationCache
[oTarget
.id
];if(!loc
||!this.useCache
){loc
=this.getLocation(oTarget
);this.locationCache
[oTarget
.id
]=loc
;}
439 if(!loc
){return false;}
440 oTarget
.cursorIsOver
=loc
.contains(pt
);var dc
=this.dragCurrent
;if(!dc
||(!intersect
&&!dc
.constrainX
&&!dc
.constrainY
)){return oTarget
.cursorIsOver
;}
441 oTarget
.overlap
=null;if(!curRegion
){var pos
=dc
.getTargetCoord(pt
.x
,pt
.y
);var el
=dc
.getDragEl();curRegion
=new YAHOO
.util
.Region(pos
.y
,pos
.x
+el
.offsetWidth
,pos
.y
+el
.offsetHeight
,pos
.x
);}
442 var overlap
=curRegion
.intersect(loc
);if(overlap
){oTarget
.overlap
=overlap
;return(intersect
)?true:oTarget
.cursorIsOver
;}else{return false;}},_onUnload:function(e
,me
){this.unregAll();},unregAll:function(){if(this.dragCurrent
){this.stopDrag();this.dragCurrent
=null;}
443 this._execOnAll("unreg",[]);for(i
in this.elementCache
){delete this.elementCache
[i
];}
444 this.elementCache
={};this.ids
={};},elementCache
:{},getElWrapper:function(id
){var oWrapper
=this.elementCache
[id
];if(!oWrapper
||!oWrapper
.el
){oWrapper
=this.elementCache
[id
]=new this.ElementWrapper(YAHOO
.util
.Dom
.get(id
));}
445 return oWrapper
;},getElement:function(id
){return YAHOO
.util
.Dom
.get(id
);},getCss:function(id
){var el
=YAHOO
.util
.Dom
.get(id
);return(el
)?el
.style
:null;},ElementWrapper:function(el
){this.el
=el
||null;this.id
=this.el
&&el
.id
;this.css
=this.el
&&el
.style
;},getPosX:function(el
){return YAHOO
.util
.Dom
.getX(el
);},getPosY:function(el
){return YAHOO
.util
.Dom
.getY(el
);},swapNode:function(n1
,n2
){if(n1
.swapNode
){n1
.swapNode(n2
);}else{var p
=n2
.parentNode
;var s
=n2
.nextSibling
;if(s
==n1
){p
.insertBefore(n1
,n2
);}else if(n2
==n1
.nextSibling
){p
.insertBefore(n2
,n1
);}else{n1
.parentNode
.replaceChild(n2
,n1
);p
.insertBefore(n1
,s
);}}},getScroll:function(){var t
,l
,dde
=document
.documentElement
,db
=document
.body
;if(dde
&&(dde
.scrollTop
||dde
.scrollLeft
)){t
=dde
.scrollTop
;l
=dde
.scrollLeft
;}else if(db
){t
=db
.scrollTop
;l
=db
.scrollLeft
;}else{}
446 return{top
:t
,left
:l
};},getStyle:function(el
,styleProp
){return YAHOO
.util
.Dom
.getStyle(el
,styleProp
);},getScrollTop:function(){return this.getScroll().top
;},getScrollLeft:function(){return this.getScroll().left
;},moveToEl:function(moveEl
,targetEl
){var aCoord
=YAHOO
.util
.Dom
.getXY(targetEl
);YAHOO
.util
.Dom
.setXY(moveEl
,aCoord
);},getClientHeight:function(){return YAHOO
.util
.Dom
.getViewportHeight();},getClientWidth:function(){return YAHOO
.util
.Dom
.getViewportWidth();},numericSort:function(a
,b
){return(a
-b
);},_timeoutCount
:0,_addListeners:function(){var DDM
=YAHOO
.util
.DDM
;if(YAHOO
.util
.Event
&&document
){DDM
._onLoad();}else{if(DDM
._timeoutCount
>2000){}else{setTimeout(DDM
._addListeners
,10);if(document
&&document
.body
){DDM
._timeoutCount
+=1;}}}},handleWasClicked:function(node
,id
){if(this.isHandle(id
,node
.id
)){return true;}else{var p
=node
.parentNode
;while(p
){if(this.isHandle(id
,p
.id
)){return true;}else{p
=p
.parentNode
;}}}
447 return false;}};}();YAHOO
.util
.DDM
=YAHOO
.util
.DragDropMgr
;YAHOO
.util
.DDM
._addListeners();}
448 (function(){var Event
=YAHOO
.util
.Event
;var Dom
=YAHOO
.util
.Dom
;YAHOO
.util
.DragDrop=function(id
,sGroup
,config
){if(id
){this.init(id
,sGroup
,config
);}};YAHOO
.util
.DragDrop
.prototype={id
:null,config
:null,dragElId
:null,handleElId
:null,invalidHandleTypes
:null,invalidHandleIds
:null,invalidHandleClasses
:null,startPageX
:0,startPageY
:0,groups
:null,locked
:false,lock:function(){this.locked
=true;},unlock:function(){this.locked
=false;},isTarget
:true,padding
:null,_domRef
:null,__ygDragDrop
:true,constrainX
:false,constrainY
:false,minX
:0,maxX
:0,minY
:0,maxY
:0,deltaX
:0,deltaY
:0,maintainOffset
:false,xTicks
:null,yTicks
:null,primaryButtonOnly
:true,available
:false,hasOuterHandles
:false,cursorIsOver
:false,overlap
:null,b4StartDrag:function(x
,y
){},startDrag:function(x
,y
){},b4Drag:function(e
){},onDrag:function(e
){},onDragEnter:function(e
,id
){},b4DragOver:function(e
){},onDragOver:function(e
,id
){},b4DragOut:function(e
){},onDragOut:function(e
,id
){},b4DragDrop:function(e
){},onDragDrop:function(e
,id
){},onInvalidDrop:function(e
){},b4EndDrag:function(e
){},endDrag:function(e
){},b4MouseDown:function(e
){},onMouseDown:function(e
){},onMouseUp:function(e
){},onAvailable:function(){},getEl:function(){if(!this._domRef
){this._domRef
=Dom
.get(this.id
);}
449 return this._domRef
;},getDragEl:function(){return Dom
.get(this.dragElId
);},init:function(id
,sGroup
,config
){this.initTarget(id
,sGroup
,config
);Event
.on(this._domRef
||this.id
,"mousedown",this.handleMouseDown
,this,true);},initTarget:function(id
,sGroup
,config
){this.config
=config
||{};this.DDM
=YAHOO
.util
.DDM
;this.groups
={};if(typeof id
!=="string"){this._domRef
=id
;id
=Dom
.generateId(id
);}
450 this.id
=id
;this.addToGroup((sGroup
)?sGroup
:"default");this.handleElId
=id
;Event
.onAvailable(id
,this.handleOnAvailable
,this,true);this.setDragElId(id
);this.invalidHandleTypes
={A
:"A"};this.invalidHandleIds
={};this.invalidHandleClasses
=[];this.applyConfig();},applyConfig:function(){this.padding
=this.config
.padding
||[0,0,0,0];this.isTarget
=(this.config
.isTarget
!==false);this.maintainOffset
=(this.config
.maintainOffset
);this.primaryButtonOnly
=(this.config
.primaryButtonOnly
!==false);},handleOnAvailable:function(){this.available
=true;this.resetConstraints();this.onAvailable();},setPadding:function(iTop
,iRight
,iBot
,iLeft
){if(!iRight
&&0!==iRight
){this.padding
=[iTop
,iTop
,iTop
,iTop
];}else if(!iBot
&&0!==iBot
){this.padding
=[iTop
,iRight
,iTop
,iRight
];}else{this.padding
=[iTop
,iRight
,iBot
,iLeft
];}},setInitPosition:function(diffX
,diffY
){var el
=this.getEl();if(!this.DDM
.verifyEl(el
)){return;}
451 var dx
=diffX
||0;var dy
=diffY
||0;var p
=Dom
.getXY(el
);this.initPageX
=p
[0]-dx
;this.initPageY
=p
[1]-dy
;this.lastPageX
=p
[0];this.lastPageY
=p
[1];this.setStartPosition(p
);},setStartPosition:function(pos
){var p
=pos
||Dom
.getXY(this.getEl());this.deltaSetXY
=null;this.startPageX
=p
[0];this.startPageY
=p
[1];},addToGroup:function(sGroup
){this.groups
[sGroup
]=true;this.DDM
.regDragDrop(this,sGroup
);},removeFromGroup:function(sGroup
){if(this.groups
[sGroup
]){delete this.groups
[sGroup
];}
452 this.DDM
.removeDDFromGroup(this,sGroup
);},setDragElId:function(id
){this.dragElId
=id
;},setHandleElId:function(id
){if(typeof id
!=="string"){id
=Dom
.generateId(id
);}
453 this.handleElId
=id
;this.DDM
.regHandle(this.id
,id
);},setOuterHandleElId:function(id
){if(typeof id
!=="string"){id
=Dom
.generateId(id
);}
454 Event
.on(id
,"mousedown",this.handleMouseDown
,this,true);this.setHandleElId(id
);this.hasOuterHandles
=true;},unreg:function(){Event
.removeListener(this.id
,"mousedown",this.handleMouseDown
);this._domRef
=null;this.DDM
._remove(this);},isLocked:function(){return(this.DDM
.isLocked()||this.locked
);},handleMouseDown:function(e
,oDD
){var button
=e
.which
||e
.button
;if(this.primaryButtonOnly
&&button
>1){return;}
455 if(this.isLocked()){return;}
456 this.b4MouseDown(e
);this.onMouseDown(e
);this.DDM
.refreshCache(this.groups
);var pt
=new YAHOO
.util
.Point(Event
.getPageX(e
),Event
.getPageY(e
));if(!this.hasOuterHandles
&&!this.DDM
.isOverTarget(pt
,this)){}else{if(this.clickValidator(e
)){this.setStartPosition();this.DDM
.handleMouseDown(e
,this);this.DDM
.stopEvent(e
);}else{}}},clickValidator:function(e
){var target
=Event
.getTarget(e
);return(this.isValidHandleChild(target
)&&(this.id
==this.handleElId
||this.DDM
.handleWasClicked(target
,this.id
)));},getTargetCoord:function(iPageX
,iPageY
){var x
=iPageX
-this.deltaX
;var y
=iPageY
-this.deltaY
;if(this.constrainX
){if(x
<this.minX
){x
=this.minX
;}
457 if(x
>this.maxX
){x
=this.maxX
;}}
458 if(this.constrainY
){if(y
<this.minY
){y
=this.minY
;}
459 if(y
>this.maxY
){y
=this.maxY
;}}
460 x
=this.getTick(x
,this.xTicks
);y
=this.getTick(y
,this.yTicks
);return{x
:x
,y
:y
};},addInvalidHandleType:function(tagName
){var type
=tagName
.toUpperCase();this.invalidHandleTypes
[type
]=type
;},addInvalidHandleId:function(id
){if(typeof id
!=="string"){id
=Dom
.generateId(id
);}
461 this.invalidHandleIds
[id
]=id
;},addInvalidHandleClass:function(cssClass
){this.invalidHandleClasses
.push(cssClass
);},removeInvalidHandleType:function(tagName
){var type
=tagName
.toUpperCase();delete this.invalidHandleTypes
[type
];},removeInvalidHandleId:function(id
){if(typeof id
!=="string"){id
=Dom
.generateId(id
);}
462 delete this.invalidHandleIds
[id
];},removeInvalidHandleClass:function(cssClass
){for(var i
=0,len
=this.invalidHandleClasses
.length
;i
<len
;++i
){if(this.invalidHandleClasses
[i
]==cssClass
){delete this.invalidHandleClasses
[i
];}}},isValidHandleChild:function(node
){var valid
=true;var nodeName
;try{nodeName
=node
.nodeName
.toUpperCase();}catch(e
){nodeName
=node
.nodeName
;}
463 valid
=valid
&&!this.invalidHandleTypes
[nodeName
];valid
=valid
&&!this.invalidHandleIds
[node
.id
];for(var i
=0,len
=this.invalidHandleClasses
.length
;valid
&&i
<len
;++i
){valid
=!Dom
.hasClass(node
,this.invalidHandleClasses
[i
]);}
464 return valid
;},setXTicks:function(iStartX
,iTickSize
){this.xTicks
=[];this.xTickSize
=iTickSize
;var tickMap
={};for(var i
=this.initPageX
;i
>=this.minX
;i
=i
-iTickSize
){if(!tickMap
[i
]){this.xTicks
[this.xTicks
.length
]=i
;tickMap
[i
]=true;}}
465 for(i
=this.initPageX
;i
<=this.maxX
;i
=i
+iTickSize
){if(!tickMap
[i
]){this.xTicks
[this.xTicks
.length
]=i
;tickMap
[i
]=true;}}
466 this.xTicks
.sort(this.DDM
.numericSort
);},setYTicks:function(iStartY
,iTickSize
){this.yTicks
=[];this.yTickSize
=iTickSize
;var tickMap
={};for(var i
=this.initPageY
;i
>=this.minY
;i
=i
-iTickSize
){if(!tickMap
[i
]){this.yTicks
[this.yTicks
.length
]=i
;tickMap
[i
]=true;}}
467 for(i
=this.initPageY
;i
<=this.maxY
;i
=i
+iTickSize
){if(!tickMap
[i
]){this.yTicks
[this.yTicks
.length
]=i
;tickMap
[i
]=true;}}
468 this.yTicks
.sort(this.DDM
.numericSort
);},setXConstraint:function(iLeft
,iRight
,iTickSize
){this.leftConstraint
=parseInt(iLeft
,10);this.rightConstraint
=parseInt(iRight
,10);this.minX
=this.initPageX
-this.leftConstraint
;this.maxX
=this.initPageX
+this.rightConstraint
;if(iTickSize
){this.setXTicks(this.initPageX
,iTickSize
);}
469 this.constrainX
=true;},clearConstraints:function(){this.constrainX
=false;this.constrainY
=false;this.clearTicks();},clearTicks:function(){this.xTicks
=null;this.yTicks
=null;this.xTickSize
=0;this.yTickSize
=0;},setYConstraint:function(iUp
,iDown
,iTickSize
){this.topConstraint
=parseInt(iUp
,10);this.bottomConstraint
=parseInt(iDown
,10);this.minY
=this.initPageY
-this.topConstraint
;this.maxY
=this.initPageY
+this.bottomConstraint
;if(iTickSize
){this.setYTicks(this.initPageY
,iTickSize
);}
470 this.constrainY
=true;},resetConstraints:function(){if(this.initPageX
||this.initPageX
===0){var dx
=(this.maintainOffset
)?this.lastPageX
-this.initPageX
:0;var dy
=(this.maintainOffset
)?this.lastPageY
-this.initPageY
:0;this.setInitPosition(dx
,dy
);}else{this.setInitPosition();}
471 if(this.constrainX
){this.setXConstraint(this.leftConstraint
,this.rightConstraint
,this.xTickSize
);}
472 if(this.constrainY
){this.setYConstraint(this.topConstraint
,this.bottomConstraint
,this.yTickSize
);}},getTick:function(val
,tickArray
){if(!tickArray
){return val
;}else if(tickArray
[0]>=val
){return tickArray
[0];}else{for(var i
=0,len
=tickArray
.length
;i
<len
;++i
){var next
=i
+1;if(tickArray
[next
]&&tickArray
[next
]>=val
){var diff1
=val
-tickArray
[i
];var diff2
=tickArray
[next
]-val
;return(diff2
>diff1
)?tickArray
[i
]:tickArray
[next
];}}
473 return tickArray
[tickArray
.length
-1];}},toString:function(){return("DragDrop "+this.id
);}};})();YAHOO
.util
.DD=function(id
,sGroup
,config
){if(id
){this.init(id
,sGroup
,config
);}};YAHOO
.extend(YAHOO
.util
.DD
,YAHOO
.util
.DragDrop
,{scroll
:true,autoOffset:function(iPageX
,iPageY
){var x
=iPageX
-this.startPageX
;var y
=iPageY
-this.startPageY
;this.setDelta(x
,y
);},setDelta:function(iDeltaX
,iDeltaY
){this.deltaX
=iDeltaX
;this.deltaY
=iDeltaY
;},setDragElPos:function(iPageX
,iPageY
){var el
=this.getDragEl();this.alignElWithMouse(el
,iPageX
,iPageY
);},alignElWithMouse:function(el
,iPageX
,iPageY
){var oCoord
=this.getTargetCoord(iPageX
,iPageY
);if(!this.deltaSetXY
){var aCoord
=[oCoord
.x
,oCoord
.y
];YAHOO
.util
.Dom
.setXY(el
,aCoord
);var newLeft
=parseInt(YAHOO
.util
.Dom
.getStyle(el
,"left"),10);var newTop
=parseInt(YAHOO
.util
.Dom
.getStyle(el
,"top"),10);this.deltaSetXY
=[newLeft
-oCoord
.x
,newTop
-oCoord
.y
];}else{YAHOO
.util
.Dom
.setStyle(el
,"left",(oCoord
.x
+this.deltaSetXY
[0])+"px");YAHOO
.util
.Dom
.setStyle(el
,"top",(oCoord
.y
+this.deltaSetXY
[1])+"px");}
474 this.cachePosition(oCoord
.x
,oCoord
.y
);this.autoScroll(oCoord
.x
,oCoord
.y
,el
.offsetHeight
,el
.offsetWidth
);},cachePosition:function(iPageX
,iPageY
){if(iPageX
){this.lastPageX
=iPageX
;this.lastPageY
=iPageY
;}else{var aCoord
=YAHOO
.util
.Dom
.getXY(this.getEl());this.lastPageX
=aCoord
[0];this.lastPageY
=aCoord
[1];}},autoScroll:function(x
,y
,h
,w
){if(this.scroll
){var clientH
=this.DDM
.getClientHeight();var clientW
=this.DDM
.getClientWidth();var st
=this.DDM
.getScrollTop();var sl
=this.DDM
.getScrollLeft();var bot
=h
+y
;var right
=w
+x
;var toBot
=(clientH
+st
-y
-this.deltaY
);var toRight
=(clientW
+sl
-x
-this.deltaX
);var thresh
=40;var scrAmt
=(document
.all
)?80:30;if(bot
>clientH
&&toBot
<thresh
){window
.scrollTo(sl
,st
+scrAmt
);}
475 if(y
<st
&&st
>0&&y
-st
<thresh
){window
.scrollTo(sl
,st
-scrAmt
);}
476 if(right
>clientW
&&toRight
<thresh
){window
.scrollTo(sl
+scrAmt
,st
);}
477 if(x
<sl
&&sl
>0&&x
-sl
<thresh
){window
.scrollTo(sl
-scrAmt
,st
);}}},applyConfig:function(){YAHOO
.util
.DD
.superclass
.applyConfig
.call(this);this.scroll
=(this.config
.scroll
!==false);},b4MouseDown:function(e
){this.setStartPosition();this.autoOffset(YAHOO
.util
.Event
.getPageX(e
),YAHOO
.util
.Event
.getPageY(e
));},b4Drag:function(e
){this.setDragElPos(YAHOO
.util
.Event
.getPageX(e
),YAHOO
.util
.Event
.getPageY(e
));},toString:function(){return("DD "+this.id
);}});YAHOO
.util
.DDProxy=function(id
,sGroup
,config
){if(id
){this.init(id
,sGroup
,config
);this.initFrame();}};YAHOO
.util
.DDProxy
.dragElId
="ygddfdiv";YAHOO
.extend(YAHOO
.util
.DDProxy
,YAHOO
.util
.DD
,{resizeFrame
:true,centerFrame
:false,createFrame:function(){var self
=this,body
=document
.body
;if(!body
||!body
.firstChild
){setTimeout(function(){self
.createFrame();},50);return;}
478 var div
=this.getDragEl(),Dom
=YAHOO
.util
.Dom
;if(!div
){div
=document
.createElement("div");div
.id
=this.dragElId
;var s
=div
.style
;s
.position
="absolute";s
.visibility
="hidden";s
.cursor
="move";s
.border
="2px solid #aaa";s
.zIndex
=999;s
.height
="25px";s
.width
="25px";var _data
=document
.createElement('div');Dom
.setStyle(_data
,'height','100%');Dom
.setStyle(_data
,'width','100%');Dom
.setStyle(_data
,'background-color','#ccc');Dom
.setStyle(_data
,'opacity','0');div
.appendChild(_data
);body
.insertBefore(div
,body
.firstChild
);}},initFrame:function(){this.createFrame();},applyConfig:function(){YAHOO
.util
.DDProxy
.superclass
.applyConfig
.call(this);this.resizeFrame
=(this.config
.resizeFrame
!==false);this.centerFrame
=(this.config
.centerFrame
);this.setDragElId(this.config
.dragElId
||YAHOO
.util
.DDProxy
.dragElId
);},showFrame:function(iPageX
,iPageY
){var el
=this.getEl();var dragEl
=this.getDragEl();var s
=dragEl
.style
;this._resizeProxy();if(this.centerFrame
){this.setDelta(Math
.round(parseInt(s
.width
,10)/2),Math.round(parseInt(s.height,10)/2));}
479 this.setDragElPos(iPageX
,iPageY
);YAHOO
.util
.Dom
.setStyle(dragEl
,"visibility","visible");},_resizeProxy:function(){if(this.resizeFrame
){var DOM
=YAHOO
.util
.Dom
;var el
=this.getEl();var dragEl
=this.getDragEl();var bt
=parseInt(DOM
.getStyle(dragEl
,"borderTopWidth"),10);var br
=parseInt(DOM
.getStyle(dragEl
,"borderRightWidth"),10);var bb
=parseInt(DOM
.getStyle(dragEl
,"borderBottomWidth"),10);var bl
=parseInt(DOM
.getStyle(dragEl
,"borderLeftWidth"),10);if(isNaN(bt
)){bt
=0;}
483 var newWidth
=Math
.max(0,el
.offsetWidth
-br
-bl
);var newHeight
=Math
.max(0,el
.offsetHeight
-bt
-bb
);DOM
.setStyle(dragEl
,"width",newWidth
+"px");DOM
.setStyle(dragEl
,"height",newHeight
+"px");}},b4MouseDown:function(e
){this.setStartPosition();var x
=YAHOO
.util
.Event
.getPageX(e
);var y
=YAHOO
.util
.Event
.getPageY(e
);this.autoOffset(x
,y
);},b4StartDrag:function(x
,y
){this.showFrame(x
,y
);},b4EndDrag:function(e
){YAHOO
.util
.Dom
.setStyle(this.getDragEl(),"visibility","hidden");},endDrag:function(e
){var DOM
=YAHOO
.util
.Dom
;var lel
=this.getEl();var del
=this.getDragEl();DOM
.setStyle(del
,"visibility","");DOM
.setStyle(lel
,"visibility","hidden");YAHOO
.util
.DDM
.moveToEl(lel
,del
);DOM
.setStyle(del
,"visibility","hidden");DOM
.setStyle(lel
,"visibility","");},toString:function(){return("DDProxy "+this.id
);}});YAHOO
.util
.DDTarget=function(id
,sGroup
,config
){if(id
){this.initTarget(id
,sGroup
,config
);}};YAHOO
.extend(YAHOO
.util
.DDTarget
,YAHOO
.util
.DragDrop
,{toString:function(){return("DDTarget "+this.id
);}});YAHOO
.register("dragdrop",YAHOO
.util
.DragDropMgr
,{version
:"2.3.0",build
:"442"});
484 YAHOO
.util
.Attribute=function(hash
,owner
){if(owner
){this.owner
=owner
;this.configure(hash
,true);}};YAHOO
.util
.Attribute
.prototype={name
:undefined,value
:null,owner
:null,readOnly
:false,writeOnce
:false,_initialConfig
:null,_written
:false,method
:null,validator
:null,getValue:function(){return this.value
;},setValue:function(value
,silent
){var beforeRetVal
;var owner
=this.owner
;var name
=this.name
;var event
={type
:name
,prevValue
:this.getValue(),newValue
:value
};if(this.readOnly
||(this.writeOnce
&&this._written
)){return false;}
485 if(this.validator
&&!this.validator
.call(owner
,value
)){return false;}
486 if(!silent
){beforeRetVal
=owner
.fireBeforeChangeEvent(event
);if(beforeRetVal
===false){return false;}}
487 if(this.method
){this.method
.call(owner
,value
);}
488 this.value
=value
;this._written
=true;event
.type
=name
;if(!silent
){this.owner
.fireChangeEvent(event
);}
489 return true;},configure:function(map
,init
){map
=map
||{};this._written
=false;this._initialConfig
=this._initialConfig
||{};for(var key
in map
){if(key
&&YAHOO
.lang
.hasOwnProperty(map
,key
)){this[key
]=map
[key
];if(init
){this._initialConfig
[key
]=map
[key
];}}}},resetValue:function(){return this.setValue(this._initialConfig
.value
);},resetConfig:function(){this.configure(this._initialConfig
);},refresh:function(silent
){this.setValue(this.value
,silent
);}};(function(){var Lang
=YAHOO
.util
.Lang
;YAHOO
.util
.AttributeProvider=function(){};YAHOO
.util
.AttributeProvider
.prototype={_configs
:null,get:function(key
){var configs
=this._configs
||{};var config
=configs
[key
];if(!config
){return undefined;}
490 return config
.value
;},set:function(key
,value
,silent
){var configs
=this._configs
||{};var config
=configs
[key
];if(!config
){return false;}
491 return config
.setValue(value
,silent
);},getAttributeKeys:function(){var configs
=this._configs
;var keys
=[];var config
;for(var key
in configs
){config
=configs
[key
];if(Lang
.hasOwnProperty(configs
,key
)&&!Lang
.isUndefined(config
)){keys
[keys
.length
]=key
;}}
492 return keys
;},setAttributes:function(map
,silent
){for(var key
in map
){if(Lang
.hasOwnProperty(map
,key
)){this.set(key
,map
[key
],silent
);}}},resetValue:function(key
,silent
){var configs
=this._configs
||{};if(configs
[key
]){this.set(key
,configs
[key
]._initialConfig
.value
,silent
);return true;}
493 return false;},refresh:function(key
,silent
){var configs
=this._configs
;key
=((Lang
.isString(key
))?[key
]:key
)||this.getAttributeKeys();for(var i
=0,len
=key
.length
;i
<len
;++i
){if(configs
[key
[i
]]&&!Lang
.isUndefined(configs
[key
[i
]].value
)&&!Lang
.isNull(configs
[key
[i
]].value
)){configs
[key
[i
]].refresh(silent
);}}},register:function(key
,map
){this.setAttributeConfig(key
,map
);},getAttributeConfig:function(key
){var configs
=this._configs
||{};var config
=configs
[key
]||{};var map
={};for(key
in config
){if(Lang
.hasOwnProperty(config
,key
)){map
[key
]=config
[key
];}}
494 return map
;},setAttributeConfig:function(key
,map
,init
){var configs
=this._configs
||{};map
=map
||{};if(!configs
[key
]){map
.name
=key
;configs
[key
]=new YAHOO
.util
.Attribute(map
,this);}else{configs
[key
].configure(map
,init
);}},configureAttribute:function(key
,map
,init
){this.setAttributeConfig(key
,map
,init
);},resetAttributeConfig:function(key
){var configs
=this._configs
||{};configs
[key
].resetConfig();},fireBeforeChangeEvent:function(e
){var type
='before';type
+=e
.type
.charAt(0).toUpperCase()+e
.type
.substr(1)+'Change';e
.type
=type
;return this.fireEvent(e
.type
,e
);},fireChangeEvent:function(e
){e
.type
+='Change';return this.fireEvent(e
.type
,e
);}};YAHOO
.augment(YAHOO
.util
.AttributeProvider
,YAHOO
.util
.EventProvider
);})();(function(){var Dom
=YAHOO
.util
.Dom
,AttributeProvider
=YAHOO
.util
.AttributeProvider
;YAHOO
.util
.Element=function(el
,map
){if(arguments
.length
){this.init(el
,map
);}};YAHOO
.util
.Element
.prototype={DOM_EVENTS
:null,appendChild:function(child
){child
=child
.get?child
.get('element'):child
;this.get('element').appendChild(child
);},getElementsByTagName:function(tag
){return this.get('element').getElementsByTagName(tag
);},hasChildNodes:function(){return this.get('element').hasChildNodes();},insertBefore:function(element
,before
){element
=element
.get?element
.get('element'):element
;before
=(before
&&before
.get)?before
.get('element'):before
;this.get('element').insertBefore(element
,before
);},removeChild:function(child
){child
=child
.get?child
.get('element'):child
;this.get('element').removeChild(child
);return true;},replaceChild:function(newNode
,oldNode
){newNode
=newNode
.get?newNode
.get('element'):newNode
;oldNode
=oldNode
.get?oldNode
.get('element'):oldNode
;return this.get('element').replaceChild(newNode
,oldNode
);},initAttributes:function(map
){},addListener:function(type
,fn
,obj
,scope
){var el
=this.get('element');scope
=scope
||this;el
=this.get('id')||el
;var self
=this;if(!this._events
[type
]){if(this.DOM_EVENTS
[type
]){YAHOO
.util
.Event
.addListener(el
,type
,function(e
){if(e
.srcElement
&&!e
.target
){e
.target
=e
.srcElement
;}
495 self
.fireEvent(type
,e
);},obj
,scope
);}
496 this.createEvent(type
,this);}
497 YAHOO
.util
.EventProvider
.prototype.subscribe
.apply(this,arguments
);},on:function(){this.addListener
.apply(this,arguments
);},subscribe:function(){this.addListener
.apply(this,arguments
);},removeListener:function(type
,fn
){this.unsubscribe
.apply(this,arguments
);},addClass:function(className
){Dom
.addClass(this.get('element'),className
);},getElementsByClassName:function(className
,tag
){return Dom
.getElementsByClassName(className
,tag
,this.get('element'));},hasClass:function(className
){return Dom
.hasClass(this.get('element'),className
);},removeClass:function(className
){return Dom
.removeClass(this.get('element'),className
);},replaceClass:function(oldClassName
,newClassName
){return Dom
.replaceClass(this.get('element'),oldClassName
,newClassName
);},setStyle:function(property
,value
){var el
=this.get('element');if(!el
){return this._queue
[this._queue
.length
]=['setStyle',arguments
];}
498 return Dom
.setStyle(el
,property
,value
);},getStyle:function(property
){return Dom
.getStyle(this.get('element'),property
);},fireQueue:function(){var queue
=this._queue
;for(var i
=0,len
=queue
.length
;i
<len
;++i
){this[queue
[i
][0]].apply(this,queue
[i
][1]);}},appendTo:function(parent
,before
){parent
=(parent
.get)?parent
.get('element'):Dom
.get(parent
);this.fireEvent('beforeAppendTo',{type
:'beforeAppendTo',target
:parent
});before
=(before
&&before
.get)?before
.get('element'):Dom
.get(before
);var element
=this.get('element');if(!element
){return false;}
499 if(!parent
){return false;}
500 if(element
.parent
!=parent
){if(before
){parent
.insertBefore(element
,before
);}else{parent
.appendChild(element
);}}
501 this.fireEvent('appendTo',{type
:'appendTo',target
:parent
});},get:function(key
){var configs
=this._configs
||{};var el
=configs
.element
;if(el
&&!configs
[key
]&&!YAHOO
.lang
.isUndefined(el
.value
[key
])){return el
.value
[key
];}
502 return AttributeProvider
.prototype.get.call(this,key
);},setAttributes:function(map
,silent
){var el
=this.get('element');for(var key
in map
){if(!this._configs
[key
]&&!YAHOO
.lang
.isUndefined(el
[key
])){this.setAttributeConfig(key
);}}
503 for(var i
=0,len
=this._configOrder
.length
;i
<len
;++i
){if(map
[this._configOrder
[i
]]){this.set(this._configOrder
[i
],map
[this._configOrder
[i
]],silent
);}}},set:function(key
,value
,silent
){var el
=this.get('element');if(!el
){this._queue
[this._queue
.length
]=['set',arguments
];if(this._configs
[key
]){this._configs
[key
].value
=value
;}
505 if(!this._configs
[key
]&&!YAHOO
.lang
.isUndefined(el
[key
])){_registerHTMLAttr
.call(this,key
);}
506 return AttributeProvider
.prototype.set.apply(this,arguments
);},setAttributeConfig:function(key
,map
,init
){var el
=this.get('element');if(el
&&!this._configs
[key
]&&!YAHOO
.lang
.isUndefined(el
[key
])){_registerHTMLAttr
.call(this,key
,map
);}else{AttributeProvider
.prototype.setAttributeConfig
.apply(this,arguments
);}
507 this._configOrder
.push(key
);},getAttributeKeys:function(){var el
=this.get('element');var keys
=AttributeProvider
.prototype.getAttributeKeys
.call(this);for(var key
in el
){if(!this._configs
[key
]){keys
[key
]=keys
[key
]||el
[key
];}}
508 return keys
;},createEvent:function(type
,scope
){this._events
[type
]=true;AttributeProvider
.prototype.createEvent
.apply(this,arguments
);},init:function(el
,attr
){_initElement
.apply(this,arguments
);}};var _initElement=function(el
,attr
){this._queue
=this._queue
||[];this._events
=this._events
||{};this._configs
=this._configs
||{};this._configOrder
=[];attr
=attr
||{};attr
.element
=attr
.element
||el
||null;this.DOM_EVENTS
={'click':true,'dblclick':true,'keydown':true,'keypress':true,'keyup':true,'mousedown':true,'mousemove':true,'mouseout':true,'mouseover':true,'mouseup':true,'focus':true,'blur':true,'submit':true};var isReady
=false;if(YAHOO
.lang
.isString(el
)){_registerHTMLAttr
.call(this,'id',{value
:attr
.element
});}
509 if(Dom
.get(el
)){isReady
=true;_initHTMLElement
.call(this,attr
);_initContent
.call(this,attr
);}
510 YAHOO
.util
.Event
.onAvailable(attr
.element
,function(){if(!isReady
){_initHTMLElement
.call(this,attr
);}
511 this.fireEvent('available',{type
:'available',target
:attr
.element
});},this,true);YAHOO
.util
.Event
.onContentReady(attr
.element
,function(){if(!isReady
){_initContent
.call(this,attr
);}
512 this.fireEvent('contentReady',{type
:'contentReady',target
:attr
.element
});},this,true);};var _initHTMLElement=function(attr
){this.setAttributeConfig('element',{value
:Dom
.get(attr
.element
),readOnly
:true});};var _initContent=function(attr
){this.initAttributes(attr
);this.setAttributes(attr
,true);this.fireQueue();};var _registerHTMLAttr=function(key
,map
){var el
=this.get('element');map
=map
||{};map
.name
=key
;map
.method
=map
.method
||function(value
){el
[key
]=value
;};map
.value
=map
.value
||el
[key
];this._configs
[key
]=new YAHOO
.util
.Attribute(map
,this);};YAHOO
.augment(YAHOO
.util
.Element
,AttributeProvider
);})();YAHOO
.register("element",YAHOO
.util
.Element
,{version
:"2.3.0",build
:"442"});YAHOO
.register("utilities", YAHOO
, {version
: "2.3.0", build
: "442"});