1 2 3/* jquery-1.2.6.min.js */ 4(function(){var _jQuery=window.jQuery,_$=window.$; 5var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context); 6}; 7var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined; 8jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document; 9if(selector.nodeType){this[0]=selector; 10this.length=1; 11return this; 12}if(typeof selector=="string"){var match=quickExpr.exec(selector); 13if(match&&(match[1]||!context)){if(match[1]){selector=jQuery.clean([match[1]],context); 14}else{var elem=document.getElementById(match[3]); 15if(elem){if(elem.id!=match[3]){return jQuery().find(selector); 16}return jQuery(elem); 17}selector=[]; 18}}else{return jQuery(context).find(selector); 19}}else{if(jQuery.isFunction(selector)){return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector); 20}}return this.setArray(jQuery.makeArray(selector)); 21},jquery:"1.2.6",size:function(){return this.length; 22},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num]; 23},pushStack:function(elems){var ret=jQuery(elems); 24ret.prevObject=this; 25return ret; 26},setArray:function(elems){this.length=0; 27Array.prototype.push.apply(this,elems); 28return this; 29},each:function(callback,args){return jQuery.each(this,callback,args); 30},index:function(elem){var ret=-1; 31return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this); 32},attr:function(name,value,type){var options=name; 33if(name.constructor==String){if(value===undefined){return this[0]&&jQuery[type||"attr"](this[0],name); 34}else{options={}; 35options[name]=value; 36}}return this.each(function(i){for(name in options){jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name)); 37}}); 38},css:function(key,value){if((key=="width"||key=="height")&&parseFloat(value)<0){value=undefined; 39}return this.attr(key,value,"curCSS"); 40},text:function(text){if(typeof text!="object"&&text!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text)); 41}var ret=""; 42jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8){ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]); 43}}); 44}); 45return ret; 46},wrapAll:function(html){if(this[0]){jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this; 47while(elem.firstChild){elem=elem.firstChild; 48}return elem; 49}).append(this); 50}return this; 51},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html); 52}); 53},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html); 54}); 55},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1){this.appendChild(elem); 56}}); 57},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1){this.insertBefore(elem,this.firstChild); 58}}); 59},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this); 60}); 61},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling); 62}); 63},end:function(){return this.prevObject||jQuery([]); 64},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem); 65}); 66return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems); 67},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div"); 68container.appendChild(clone); 69return jQuery.clean([container.innerHTML])[0]; 70}else{return this.cloneNode(true); 71}}); 72var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined){this[expando]=null; 73}}); 74if(events===true){this.find("*").andSelf().each(function(i){if(this.nodeType==3){return ; 75}var events=jQuery.data(this,"events"); 76for(var type in events){for(var handler in events[type]){jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data); 77}}}); 78}return ret; 79},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i); 80})||jQuery.multiFilter(selector,this)); 81},not:function(selector){if(selector.constructor==String){if(isSimple.test(selector)){return this.pushStack(jQuery.multiFilter(selector,this,true)); 82}else{selector=jQuery.multiFilter(selector,this); 83}}var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType; 84return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector; 85}); 86},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=="string"?jQuery(selector):jQuery.makeArray(selector)))); 87},is:function(selector){return !!selector&&jQuery.multiFilter(selector,this).length>0; 88},hasClass:function(selector){return this.is("."+selector); 89},val:function(value){if(value==undefined){if(this.length){var elem=this[0]; 90if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one"; 91if(index<0){return null; 92}for(var i=one?index:0,max=one?index+1:options.length; 93i<max; 94i++){var option=options[i]; 95if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value; 96if(one){return value; 97}values.push(value); 98}}return values; 99}else{return(this[0].value||"").replace(/\r/g,""); 100}}return undefined; 101}if(value.constructor==Number){value+=""; 102}return this.each(function(){if(this.nodeType!=1){return ; 103}if(value.constructor==Array&&/radio|checkbox/.test(this.type)){this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0); 104}else{if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value); 105jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0); 106}); 107if(!values.length){this.selectedIndex=-1; 108}}else{this.value=value; 109}}}); 110},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value); 111},replaceWith:function(value){return this.after(value).remove(); 112},eq:function(i){return this.slice(i,i+1); 113},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments)); 114},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem); 115})); 116},andSelf:function(){return this.add(this.prevObject); 117},data:function(key,value){var parts=key.split("."); 118parts[1]=parts[1]?"."+parts[1]:""; 119if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]); 120if(data===undefined&&this.length){data=jQuery.data(this[0],key); 121}return data===undefined&&parts[1]?this.data(parts[0]):data; 122}else{return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value); 123}); 124}},removeData:function(key){return this.each(function(){jQuery.removeData(this,key); 125}); 126},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems; 127return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument); 128if(reverse){elems.reverse(); 129}}var obj=this; 130if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr")){obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody")); 131}var scripts=jQuery([]); 132jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this; 133if(jQuery.nodeName(elem,"script")){scripts=scripts.add(elem); 134}else{if(elem.nodeType==1){scripts=scripts.add(jQuery("script",elem).remove()); 135}callback.call(obj,elem); 136}}); 137scripts.each(evalScript); 138}); 139}}; 140jQuery.fn.init.prototype=jQuery.fn; 141function evalScript(i,elem){if(elem.src){jQuery.ajax({url:elem.src,async:false,dataType:"script"}); 142}else{jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||""); 143}if(elem.parentNode){elem.parentNode.removeChild(elem); 144}}function now(){return +new Date; 145}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options; 146if(target.constructor==Boolean){deep=target; 147target=arguments[1]||{}; 148i=2; 149}if(typeof target!="object"&&typeof target!="function"){target={}; 150}if(length==i){target=this; 151--i; 152}for(; 153i<length; 154i++){if((options=arguments[i])!=null){for(var name in options){var src=target[name],copy=options[name]; 155if(target===copy){continue; 156}if(deep&©&&typeof copy=="object"&&!copy.nodeType){target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy); 157}else{if(copy!==undefined){target[name]=copy; 158}}}}}return target; 159}; 160var expando="jQuery"+now(),uuid=0,windowData={},exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{}; 161jQuery.extend({noConflict:function(deep){window.$=_$; 162if(deep){window.jQuery=_jQuery; 163}return jQuery; 164},isFunction:function(fn){return !!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/^[\s[]?function/.test(fn+""); 165},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body; 166},globalEval:function(data){data=jQuery.trim(data); 167if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script"); 168script.type="text/javascript"; 169if(jQuery.browser.msie){script.text=data; 170}else{script.appendChild(document.createTextNode(data)); 171}head.insertBefore(script,head.firstChild); 172head.removeChild(script); 173}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase(); 174},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem; 175var id=elem[expando]; 176if(!id){id=elem[expando]=++uuid; 177}if(name&&!jQuery.cache[id]){jQuery.cache[id]={}; 178}if(data!==undefined){jQuery.cache[id][name]=data; 179}return name?jQuery.cache[id][name]:id; 180},removeData:function(elem,name){elem=elem==window?windowData:elem; 181var id=elem[expando]; 182if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name]; 183name=""; 184for(name in jQuery.cache[id]){break; 185}if(!name){jQuery.removeData(elem); 186}}}else{try{delete elem[expando]; 187}catch(e){if(elem.removeAttribute){elem.removeAttribute(expando); 188}}delete jQuery.cache[id]; 189}},each:function(object,callback,args){var name,i=0,length=object.length; 190if(args){if(length==undefined){for(name in object){if(callback.apply(object[name],args)===false){break; 191}}}else{for(; 192i<length; 193){if(callback.apply(object[i++],args)===false){break; 194}}}}else{if(length==undefined){for(name in object){if(callback.call(object[name],name,object[name])===false){break; 195}}}else{for(var value=object[0]; 196i<length&&callback.call(value,i,value)!==false; 197value=object[++i]){}}}return object; 198},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value)){value=value.call(elem,i); 199}return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value; 200},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className)){elem.className+=(elem.className?" ":"")+className; 201}}); 202},remove:function(elem,classNames){if(elem.nodeType==1){elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return !jQuery.className.has(classNames,className); 203}).join(" "):""; 204}},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1; 205}},swap:function(elem,options,callback){var old={}; 206for(var name in options){old[name]=elem.style[name]; 207elem.style[name]=options[name]; 208}callback.call(elem); 209for(var name in options){elem.style[name]=old[name]; 210}},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"]; 211function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight; 212var padding=0,border=0; 213jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0; 214border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0; 215}); 216val-=Math.round(padding+border); 217}if(jQuery(elem).is(":visible")){getWH(); 218}else{jQuery.swap(elem,props,getWH); 219}return Math.max(0,val); 220}return jQuery.curCSS(elem,name,force); 221},curCSS:function(elem,name,force){var ret,style=elem.style; 222function color(elem){if(!jQuery.browser.safari){return false; 223}var ret=defaultView.getComputedStyle(elem,null); 224return !ret||ret.getPropertyValue("color")==""; 225}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity"); 226return ret==""?"1":ret; 227}if(jQuery.browser.opera&&name=="display"){var save=style.outline; 228style.outline="0 solid black"; 229style.outline=save; 230}if(name.match(/float/i)){name=styleFloat; 231}if(!force&&style&&style[name]){ret=style[name]; 232}else{if(defaultView.getComputedStyle){if(name.match(/float/i)){name="float"; 233}name=name.replace(/([A-Z])/g,"-$1").toLowerCase(); 234var computedStyle=defaultView.getComputedStyle(elem,null); 235if(computedStyle&&!color(elem)){ret=computedStyle.getPropertyValue(name); 236}else{var swap=[],stack=[],a=elem,i=0; 237for(; 238a&&color(a); 239a=a.parentNode){stack.unshift(a); 240}for(; 241i<stack.length; 242i++){if(color(stack[i])){swap[i]=stack[i].style.display; 243stack[i].style.display="block"; 244}}ret=name=="display"&&swap[stack.length-1]!=null?"none":(computedStyle&&computedStyle.getPropertyValue(name))||""; 245for(i=0; 246i<swap.length; 247i++){if(swap[i]!=null){stack[i].style.display=swap[i]; 248}}}if(name=="opacity"&&ret==""){ret="1"; 249}}else{if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase(); 250}); 251ret=elem.currentStyle[name]||elem.currentStyle[camelCase]; 252if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left; 253elem.runtimeStyle.left=elem.currentStyle.left; 254style.left=ret||0; 255ret=style.pixelLeft+"px"; 256style.left=left; 257elem.runtimeStyle.left=rsLeft; 258}}}}return ret; 259},clean:function(elems,context){var ret=[]; 260context=context||document; 261if(typeof context.createElement=="undefined"){context=context.ownerDocument||context[0]&&context[0].ownerDocument||document; 262}jQuery.each(elems,function(i,elem){if(!elem){return ; 263}if(elem.constructor==Number){elem+=""; 264}if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">"; 265}); 266var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div"); 267var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""]; 268div.innerHTML=wrap[1]+elem+wrap[2]; 269while(wrap[0]--){div=div.lastChild; 270}if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[]; 271for(var j=tbody.length-1; 272j>=0; 273--j){if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length){tbody[j].parentNode.removeChild(tbody[j]); 274}}if(/^\s/.test(elem)){div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild); 275}}elem=jQuery.makeArray(div.childNodes); 276}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select"))){return ; 277}if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options){ret.push(elem); 278}else{ret=jQuery.merge(ret,elem); 279}}); 280return ret; 281},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8){return undefined; 282}var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie; 283name=notxml&&jQuery.props[name]||name; 284if(elem.tagName){var special=/href|src|style/.test(name); 285if(name=="selected"&&jQuery.browser.safari){elem.parentNode.selectedIndex; 286}if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode){throw"type property can't be changed"; 287}elem[name]=value; 288}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)){return elem.getAttributeNode(name).nodeValue; 289}return elem[name]; 290}if(msie&¬xml&&name=="style"){return jQuery.attr(elem.style,"cssText",value); 291}if(set){elem.setAttribute(name,""+value); 292}var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name); 293return attr===null?undefined:attr; 294}if(msie&&name=="opacity"){if(set){elem.zoom=1; 295elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+""=="NaN"?"":"alpha(opacity="+value*100+")"); 296}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+"":""; 297}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase(); 298}); 299if(set){elem[name]=value; 300}return elem[name]; 301},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,""); 302},makeArray:function(array){var ret=[]; 303if(array!=null){var i=array.length; 304if(i==null||array.split||array.setInterval||array.call){ret[0]=array; 305}else{while(i){ret[--i]=array[i]; 306}}}return ret; 307},inArray:function(elem,array){for(var i=0,length=array.length; 308i<length; 309i++){if(array[i]===elem){return i; 310}}return -1; 311},merge:function(first,second){var i=0,elem,pos=first.length; 312if(jQuery.browser.msie){while(elem=second[i++]){if(elem.nodeType!=8){first[pos++]=elem; 313}}}else{while(elem=second[i++]){first[pos++]=elem; 314}}return first; 315},unique:function(array){var ret=[],done={}; 316try{for(var i=0,length=array.length; 317i<length; 318i++){var id=jQuery.data(array[i]); 319if(!done[id]){done[id]=true; 320ret.push(array[i]); 321}}}catch(e){ret=array; 322}return ret; 323},grep:function(elems,callback,inv){var ret=[]; 324for(var i=0,length=elems.length; 325i<length; 326i++){if(!inv!=!callback(elems[i],i)){ret.push(elems[i]); 327}}return ret; 328},map:function(elems,callback){var ret=[]; 329for(var i=0,length=elems.length; 330i<length; 331i++){var value=callback(elems[i],i); 332if(value!=null){ret[ret.length]=value; 333}}return ret.concat.apply([],ret); 334}}); 335var userAgent=navigator.userAgent.toLowerCase(); 336jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)}; 337var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat"; 338jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing"}}); 339jQuery.each({parent:function(elem){return elem.parentNode; 340},parents:function(elem){return jQuery.dir(elem,"parentNode"); 341},next:function(elem){return jQuery.nth(elem,2,"nextSibling"); 342},prev:function(elem){return jQuery.nth(elem,2,"previousSibling"); 343},nextAll:function(elem){return jQuery.dir(elem,"nextSibling"); 344},prevAll:function(elem){return jQuery.dir(elem,"previousSibling"); 345},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem); 346},children:function(elem){return jQuery.sibling(elem.firstChild); 347},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes); 348}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn); 349if(selector&&typeof selector=="string"){ret=jQuery.multiFilter(selector,ret); 350}return this.pushStack(jQuery.unique(ret)); 351}; 352}); 353jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments; 354return this.each(function(){for(var i=0,length=args.length; 355i<length; 356i++){jQuery(args[i])[original](this); 357}}); 358}; 359}); 360jQuery.each({removeAttr:function(name){jQuery.attr(this,name,""); 361if(this.nodeType==1){this.removeAttribute(name); 362}},addClass:function(classNames){jQuery.className.add(this,classNames); 363},removeClass:function(classNames){jQuery.className.remove(this,classNames); 364},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames); 365},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this); 366jQuery.removeData(this); 367}); 368if(this.parentNode){this.parentNode.removeChild(this); 369}}},empty:function(){jQuery(">*",this).remove(); 370while(this.firstChild){this.removeChild(this.firstChild); 371}}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments); 372}; 373}); 374jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase(); 375jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px"); 376}; 377}); 378function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0; 379}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)"); 380jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]); 381},"#":function(a,i,m){return a.getAttribute("id")==m[2]; 382},":":{lt:function(a,i,m){return i<m[3]-0; 383},gt:function(a,i,m){return i>m[3]-0; 384},nth:function(a,i,m){return m[3]-0==i; 385},eq:function(a,i,m){return m[3]-0==i; 386},first:function(a,i){return i==0; 387},last:function(a,i,m,r){return i==r.length-1; 388},even:function(a,i){return i%2==0; 389},odd:function(a,i){return i%2; 390},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a; 391},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a; 392},"only-child":function(a){return !jQuery.nth(a.parentNode.lastChild,2,"previousSibling"); 393},parent:function(a){return a.firstChild; 394},empty:function(a){return !a.firstChild; 395},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0; 396},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden"; 397},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden"; 398},enabled:function(a){return !a.disabled; 399},disabled:function(a){return a.disabled; 400},checked:function(a){return a.checked; 401},selected:function(a){return a.selected||jQuery.attr(a,"selected"); 402},text:function(a){return"text"==a.type; 403},radio:function(a){return"radio"==a.type; 404},checkbox:function(a){return"checkbox"==a.type; 405},file:function(a){return"file"==a.type; 406},password:function(a){return"password"==a.type; 407},submit:function(a){return"submit"==a.type; 408},image:function(a){return"image"==a.type; 409},reset:function(a){return"reset"==a.type; 410},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button"); 411},input:function(a){return/input|select|textarea|button/i.test(a.nodeName); 412},has:function(a,i,m){return jQuery.find(m[3],a).length; 413},header:function(a){return/h\d/i.test(a.nodeName); 414},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem; 415}).length; 416}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[]; 417while(expr&&expr!=old){old=expr; 418var f=jQuery.filter(expr,elems,not); 419expr=f.t.replace(/^\s*,\s*/,""); 420cur=not?elems=f.r:jQuery.merge(cur,f.r); 421}return cur; 422},find:function(t,context){if(typeof t!="string"){return[t]; 423}if(context&&context.nodeType!=1&&context.nodeType!=9){return[]; 424}context=context||document; 425var ret=[context],done=[],last,nodeName; 426while(t&&last!=t){var r=[]; 427last=t; 428t=jQuery.trim(t); 429var foundToken=false,re=quickChild,m=re.exec(t); 430if(m){nodeName=m[1].toUpperCase(); 431for(var i=0; 432ret[i]; 433i++){for(var c=ret[i].firstChild; 434c; 435c=c.nextSibling){if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName)){r.push(c); 436}}}ret=r; 437t=t.replace(re,""); 438if(t.indexOf(" ")==0){continue; 439}foundToken=true; 440}else{re=/^([>+~])\s*(\w*)/i; 441if((m=re.exec(t))!=null){r=[]; 442var merge={}; 443nodeName=m[2].toUpperCase(); 444m=m[1]; 445for(var j=0,rl=ret.length; 446j<rl; 447j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild; 448for(; 449n; 450n=n.nextSibling){if(n.nodeType==1){var id=jQuery.data(n); 451if(m=="~"&&merge[id]){break; 452}if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~"){merge[id]=true; 453}r.push(n); 454}if(m=="+"){break; 455}}}}ret=r; 456t=jQuery.trim(t.replace(re,"")); 457foundToken=true; 458}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0]){ret.shift(); 459}done=jQuery.merge(done,ret); 460r=ret=[context]; 461t=" "+t.substr(1,t.length); 462}else{var re2=quickID; 463var m=re2.exec(t); 464if(m){m=[0,m[2],m[3],m[1]]; 465}else{re2=quickClass; 466m=re2.exec(t); 467}m[2]=m[2].replace(/\\/g,""); 468var elem=ret[ret.length-1]; 469if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]); 470if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2]){oid=jQuery('[@id="'+m[2]+'"]',elem)[0]; 471}ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[]; 472}else{for(var i=0; 473ret[i]; 474i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2]; 475if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object"){tag="param"; 476}r=jQuery.merge(r,ret[i].getElementsByTagName(tag)); 477}if(m[1]=="."){r=jQuery.classFilter(r,m[2]); 478}if(m[1]=="#"){var tmp=[]; 479for(var i=0; 480r[i]; 481i++){if(r[i].getAttribute("id")==m[2]){tmp=[r[i]]; 482break; 483}}r=tmp; 484}ret=r; 485}t=t.replace(re2,""); 486}}if(t){var val=jQuery.filter(t,r); 487ret=r=val.r; 488t=jQuery.trim(val.t); 489}}if(t){ret=[]; 490}if(ret&&context==ret[0]){ret.shift(); 491}done=jQuery.merge(done,ret); 492return done; 493},classFilter:function(r,m,not){m=" "+m+" "; 494var tmp=[]; 495for(var i=0; 496r[i]; 497i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0; 498if(!not&&pass||not&&!pass){tmp.push(r[i]); 499}}return tmp; 500},filter:function(t,r,not){var last; 501while(t&&t!=last){last=t; 502var p=jQuery.parse,m; 503for(var i=0; 504p[i]; 505i++){m=p[i].exec(t); 506if(m){t=t.substring(m[0].length); 507m[2]=m[2].replace(/\\/g,""); 508break; 509}}if(!m){break; 510}if(m[1]==":"&&m[2]=="not"){r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]); 511}else{if(m[1]=="."){r=jQuery.classFilter(r,m[2],not); 512}else{if(m[1]=="["){var tmp=[],type=m[3]; 513for(var i=0,rl=r.length; 514i<rl; 515i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]]; 516if(z==null||/href|src|selected/.test(m[2])){z=jQuery.attr(a,m[2])||""; 517}if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not){tmp.push(a); 518}}r=tmp; 519}else{if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0; 520for(var i=0,rl=r.length; 521i<rl; 522i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode); 523if(!merge[id]){var c=1; 524for(var n=parentNode.firstChild; 525n; 526n=n.nextSibling){if(n.nodeType==1){n.nodeIndex=c++; 527}}merge[id]=true; 528}var add=false; 529if(first==0){if(node.nodeIndex==last){add=true; 530}}else{if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0){add=true; 531}}if(add^not){tmp.push(node); 532}}r=tmp; 533}else{var fn=jQuery.expr[m[1]]; 534if(typeof fn=="object"){fn=fn[m[2]]; 535}if(typeof fn=="string"){fn=eval("false||function(a,i){return "+fn+";}"); 536}r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r); 537},not); 538}}}}}return{r:r,t:t}; 539},dir:function(elem,dir){var matched=[],cur=elem[dir]; 540while(cur&&cur!=document){if(cur.nodeType==1){matched.push(cur); 541}cur=cur[dir]; 542}return matched; 543},nth:function(cur,result,dir,elem){result=result||1; 544var num=0; 545for(; 546cur; 547cur=cur[dir]){if(cur.nodeType==1&&++num==result){break; 548}}return cur; 549},sibling:function(n,elem){var r=[]; 550for(; 551n; 552n=n.nextSibling){if(n.nodeType==1&&n!=elem){r.push(n); 553}}return r; 554}}); 555jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8){return ; 556}if(jQuery.browser.msie&&elem.setInterval){elem=window; 557}if(!handler.guid){handler.guid=this.guid++; 558}if(data!=undefined){var fn=handler; 559handler=this.proxy(fn,function(){return fn.apply(this,arguments); 560}); 561handler.data=data; 562}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered){return jQuery.event.handle.apply(arguments.callee.elem,arguments); 563}}); 564handle.elem=elem; 565jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split("."); 566type=parts[0]; 567handler.type=parts[1]; 568var handlers=events[type]; 569if(!handlers){handlers=events[type]={}; 570if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener){elem.addEventListener(type,handle,false); 571}else{if(elem.attachEvent){elem.attachEvent("on"+type,handle); 572}}}}handlers[handler.guid]=handler; 573jQuery.event.global[type]=true; 574}); 575elem=null; 576},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8){return ; 577}var events=jQuery.data(elem,"events"),ret,index; 578if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)==".")){for(var type in events){this.remove(elem,type+(types||"")); 579}}else{if(types.type){handler=types.handler; 580types=types.type; 581}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split("."); 582type=parts[0]; 583if(events[type]){if(handler){delete events[type][handler.guid]; 584}else{for(handler in events[type]){if(!parts[1]||events[type][handler].type==parts[1]){delete events[type][handler]; 585}}}for(ret in events[type]){break; 586}if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener){elem.removeEventListener(type,jQuery.data(elem,"handle"),false); 587}else{if(elem.detachEvent){elem.detachEvent("on"+type,jQuery.data(elem,"handle")); 588}}}ret=null; 589delete events[type]; 590}}}); 591}for(ret in events){break; 592}if(!ret){var handle=jQuery.data(elem,"handle"); 593if(handle){handle.elem=null; 594}jQuery.removeData(elem,"events"); 595jQuery.removeData(elem,"handle"); 596}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data); 597if(type.indexOf("!")>=0){type=type.slice(0,-1); 598var exclusive=true; 599}if(!elem){if(this.global[type]){jQuery("*").add([window,document]).trigger(type,data); 600}}else{if(elem.nodeType==3||elem.nodeType==8){return undefined; 601}var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault; 602if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()}); 603data[0][expando]=true; 604}data[0].type=type; 605if(exclusive){data[0].exclusive=true; 606}var handle=jQuery.data(elem,"handle"); 607if(handle){val=handle.apply(elem,data); 608}if((!fn||(jQuery.nodeName(elem,"a")&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false){val=false; 609}if(event){data.shift(); 610}if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val)); 611if(ret!==undefined){val=ret; 612}}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,"a")&&type=="click")){this.triggered=true; 613try{elem[type](); 614}catch(e){}}this.triggered=false; 615}return val; 616},handle:function(event){var val,ret,namespace,all,handlers; 617event=arguments[0]=jQuery.event.fix(event||window.event); 618namespace=event.type.split("."); 619event.type=namespace[0]; 620namespace=namespace[1]; 621all=!namespace&&!event.exclusive; 622handlers=(jQuery.data(this,"events")||{})[event.type]; 623for(var j in handlers){var handler=handlers[j]; 624if(all||handler.type==namespace){event.handler=handler; 625event.data=handler.data; 626ret=handler.apply(this,arguments); 627if(val!==false){val=ret; 628}if(ret===false){event.preventDefault(); 629event.stopPropagation(); 630}}}return val; 631},fix:function(event){if(event[expando]==true){return event; 632}var originalEvent=event; 633event={originalEvent:originalEvent}; 634var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" "); 635for(var i=props.length; 636i; 637i--){event[props[i]]=originalEvent[props[i]]; 638}event[expando]=true; 639event.preventDefault=function(){if(originalEvent.preventDefault){originalEvent.preventDefault(); 640}originalEvent.returnValue=false; 641}; 642event.stopPropagation=function(){if(originalEvent.stopPropagation){originalEvent.stopPropagation(); 643}originalEvent.cancelBubble=true; 644}; 645event.timeStamp=event.timeStamp||now(); 646if(!event.target){event.target=event.srcElement||document; 647}if(event.target.nodeType==3){event.target=event.target.parentNode; 648}if(!event.relatedTarget&&event.fromElement){event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement; 649}if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body; 650event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0); 651event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0); 652}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)){event.which=event.charCode||event.keyCode; 653}if(!event.metaKey&&event.ctrlKey){event.metaKey=event.ctrlKey; 654}if(!event.which&&event.button){event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0))); 655}return event; 656},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++; 657return proxy; 658},special:{ready:{setup:function(){bindReady(); 659return ; 660},teardown:function(){return ; 661}},mouseenter:{setup:function(){if(jQuery.browser.msie){return false; 662}jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler); 663return true; 664},teardown:function(){if(jQuery.browser.msie){return false; 665}jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler); 666return true; 667},handler:function(event){if(withinElement(event,this)){return true; 668}event.type="mouseenter"; 669return jQuery.event.handle.apply(this,arguments); 670}},mouseleave:{setup:function(){if(jQuery.browser.msie){return false; 671}jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler); 672return true; 673},teardown:function(){if(jQuery.browser.msie){return false; 674}jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler); 675return true; 676},handler:function(event){if(withinElement(event,this)){return true; 677}event.type="mouseleave"; 678return jQuery.event.handle.apply(this,arguments); 679}}}}; 680jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data); 681}); 682},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one); 683return(fn||data).apply(this,arguments); 684}); 685return this.each(function(){jQuery.event.add(this,type,one,fn&&data); 686}); 687},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn); 688}); 689},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn); 690}); 691},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn); 692},toggle:function(fn){var args=arguments,i=1; 693while(i<args.length){jQuery.event.proxy(fn,args[i++]); 694}return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i; 695event.preventDefault(); 696return args[this.lastToggle++].apply(this,arguments)||false; 697})); 698},hover:function(fnOver,fnOut){return this.bind("mouseenter",fnOver).bind("mouseleave",fnOut); 699},ready:function(fn){bindReady(); 700if(jQuery.isReady){fn.call(document,jQuery); 701}else{jQuery.readyList.push(function(){return fn.call(this,jQuery); 702}); 703}return this; 704}}); 705jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true; 706if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document); 707}); 708jQuery.readyList=null; 709}jQuery(document).triggerHandler("ready"); 710}}}); 711var readyBound=false; 712function bindReady(){if(readyBound){return ; 713}readyBound=true; 714if(document.addEventListener&&!jQuery.browser.opera){document.addEventListener("DOMContentLoaded",jQuery.ready,false); 715}if(jQuery.browser.msie&&window==top){(function(){if(jQuery.isReady){return ; 716}try{document.documentElement.doScroll("left"); 717}catch(error){setTimeout(arguments.callee,0); 718return ; 719}jQuery.ready(); 720})(); 721}if(jQuery.browser.opera){document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady){return ; 722}for(var i=0; 723i<document.styleSheets.length; 724i++){if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0); 725return ; 726}}jQuery.ready(); 727},false); 728}if(jQuery.browser.safari){var numStyles; 729(function(){if(jQuery.isReady){return ; 730}if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0); 731return ; 732}if(numStyles===undefined){numStyles=jQuery("style, link[rel=stylesheet]").length; 733}if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0); 734return ; 735}jQuery.ready(); 736})(); 737}jQuery.event.add(window,"load",jQuery.ready); 738}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,change,select,submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name); 739}; 740}); 741var withinElement=function(event,elem){var parent=event.relatedTarget; 742while(parent&&parent!=elem){try{parent=parent.parentNode; 743}catch(error){parent=elem; 744}}return parent==elem; 745}; 746jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind(); 747}); 748jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!="string"){return this._load(url); 749}var off=url.indexOf(" "); 750if(off>=0){var selector=url.slice(off,url.length); 751url=url.slice(0,off); 752}callback=callback||function(){}; 753var type="GET"; 754if(params){if(jQuery.isFunction(params)){callback=params; 755params=null; 756}else{params=jQuery.param(params); 757type="POST"; 758}}var self=this; 759jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified"){self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText); 760}self.each(callback,[res.responseText,status,res]); 761}}); 762return this; 763},serialize:function(){return jQuery.param(this.serializeArray()); 764},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this; 765}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type)); 766}).map(function(i,elem){var val=jQuery(this).val(); 767return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val}; 768}):{name:elem.name,value:val}; 769}).get(); 770}}); 771jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f); 772}; 773}); 774var jsc=now(); 775jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data; 776data=null; 777}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type}); 778},getScript:function(url,callback){return jQuery.get(url,null,callback,"script"); 779},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json"); 780},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data; 781data={}; 782}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type}); 783},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings); 784},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s)); 785var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase(); 786if(s.data&&s.processData&&typeof s.data!="string"){s.data=jQuery.param(s.data); 787}if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)){s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?"; 788}}else{if(!s.data||!s.data.match(jsre)){s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?"; 789}}s.dataType="json"; 790}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++; 791if(s.data){s.data=(s.data+"").replace(jsre,"="+jsonp+"$1"); 792}s.url=s.url.replace(jsre,"="+jsonp+"$1"); 793s.dataType="script"; 794window[jsonp]=function(tmp){data=tmp; 795success(); 796complete(); 797window[jsonp]=undefined; 798try{delete window[jsonp]; 799}catch(e){}if(head){head.removeChild(script); 800}}; 801}if(s.dataType=="script"&&s.cache==null){s.cache=false; 802}if(s.cache===false&&type=="GET"){var ts=now(); 803var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2"); 804s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:""); 805}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data; 806s.data=null; 807}if(s.global&&!jQuery.active++){jQuery.event.trigger("ajaxStart"); 808}var remote=/^(?:\w+:)?\/\/([^\/?#]+)/; 809if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0]; 810var script=document.createElement("script"); 811script.src=s.url; 812if(s.scriptCharset){script.charset=s.scriptCharset; 813}if(!jsonp){var done=false; 814script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true; 815success(); 816complete(); 817head.removeChild(script); 818}}; 819}head.appendChild(script); 820return undefined; 821}var requestDone=false; 822var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest(); 823if(s.username){xhr.open(type,s.url,s.async,s.username,s.password); 824}else{xhr.open(type,s.url,s.async); 825}try{if(s.data){xhr.setRequestHeader("Content-Type",s.contentType); 826}if(s.ifModified){xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT"); 827}xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"); 828xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default); 829}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--; 830xhr.abort(); 831return false; 832}if(s.global){jQuery.event.trigger("ajaxSend",[xhr,s]); 833}var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true; 834if(ival){clearInterval(ival); 835ival=null; 836}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success"; 837if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter); 838}catch(e){status="parsererror"; 839}}if(status=="success"){var modRes; 840try{modRes=xhr.getResponseHeader("Last-Modified"); 841}catch(e){}if(s.ifModified&&modRes){jQuery.lastModified[s.url]=modRes; 842}if(!jsonp){success(); 843}}else{jQuery.handleError(s,xhr,status); 844}complete(); 845if(s.async){xhr=null; 846}}}; 847if(s.async){var ival=setInterval(onreadystatechange,13); 848if(s.timeout>0){setTimeout(function(){if(xhr){xhr.abort(); 849if(!requestDone){onreadystatechange("timeout"); 850}}},s.timeout); 851}}try{xhr.send(s.data); 852}catch(e){jQuery.handleError(s,xhr,null,e); 853}if(!s.async){onreadystatechange(); 854}function success(){if(s.success){s.success(data,status); 855}if(s.global){jQuery.event.trigger("ajaxSuccess",[xhr,s]); 856}}function complete(){if(s.complete){s.complete(xhr,status); 857}if(s.global){jQuery.event.trigger("ajaxComplete",[xhr,s]); 858}if(s.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop"); 859}}return xhr; 860},handleError:function(s,xhr,status,e){if(s.error){s.error(xhr,status,e); 861}if(s.global){jQuery.event.trigger("ajaxError",[xhr,s,e]); 862}},active:0,httpSuccess:function(xhr){try{return !xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined; 863}catch(e){}return false; 864},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified"); 865return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined; 866}catch(e){}return false; 867},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText; 868if(xml&&data.documentElement.tagName=="parsererror"){throw"parsererror"; 869}if(filter){data=filter(data,type); 870}if(type=="script"){jQuery.globalEval(data); 871}if(type=="json"){data=eval("("+data+")"); 872}return data; 873},param:function(a){var s=[]; 874if(a.constructor==Array||a.jquery){jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value)); 875}); 876}else{for(var j in a){if(a[j]&&a[j].constructor==Array){jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this)); 877}); 878}else{s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j])); 879}}}return s.join("&").replace(/%20/g,"+"); 880}}); 881jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||""; 882if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body"); 883this.style.display=elem.css("display"); 884if(this.style.display=="none"){this.style.display="block"; 885}elem.remove(); 886}}).end(); 887},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display"); 888this.style.display="none"; 889}).end(); 890},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"](); 891}); 892},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback); 893},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback); 894},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback); 895},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback); 896},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback); 897},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback); 898},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback); 899return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1){return false; 900}var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this; 901for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden){return opt.complete.call(this); 902}if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display"); 903opt.overflow=this.style.overflow; 904}}if(opt.overflow!=null){this.style.overflow="hidden"; 905}opt.curAnim=jQuery.extend({},prop); 906jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name); 907if(/toggle|show|hide/.test(val)){e[val=="toggle"?hidden?"show":"hide":val](prop); 908}else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0; 909if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px"; 910if(unit!="px"){self.style[name]=(end||1)+unit; 911start=((end||1)/e.cur(true))*start; 912self.style[name]=start+unit; 913}if(parts[1]){end=((parts[1]=="-="?-1:1)*end)+start; 914}e.custom(start,end,unit); 915}else{e.custom(start,val,""); 916}}}); 917return true; 918}); 919},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type; 920type="fx"; 921}if(!type||(typeof type=="string"&&!fn)){return queue(this[0],type); 922}return this.each(function(){if(fn.constructor==Array){queue(this,type,fn); 923}else{queue(this,type).push(fn); 924if(queue(this,type).length==1){fn.call(this); 925}}}); 926},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers; 927if(clearQueue){this.queue([]); 928}this.each(function(){for(var i=timers.length-1; 929i>=0; 930i--){if(timers[i].elem==this){if(gotoEnd){timers[i](true); 931}timers.splice(i,1); 932}}}); 933if(!gotoEnd){this.dequeue(); 934}return this; 935}}); 936var queue=function(elem,type,array){if(elem){type=type||"fx"; 937var q=jQuery.data(elem,type+"queue"); 938if(!q||array){q=jQuery.data(elem,type+"queue",jQuery.makeArray(array)); 939}}return q; 940}; 941jQuery.fn.dequeue=function(type){type=type||"fx"; 942return this.each(function(){var q=queue(this,type); 943q.shift(); 944if(q.length){q[0].call(this); 945}}); 946}; 947jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing}; 948opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def; 949opt.old=opt.complete; 950opt.complete=function(){if(opt.queue!==false){jQuery(this).dequeue(); 951}if(jQuery.isFunction(opt.old)){opt.old.call(this); 952}}; 953return opt; 954},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p; 955},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum; 956}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options; 957this.elem=elem; 958this.prop=prop; 959if(!options.orig){options.orig={}; 960}}}); 961jQuery.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this); 962}(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this); 963if(this.prop=="height"||this.prop=="width"){this.elem.style.display="block"; 964}},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null){return this.elem[this.prop]; 965}var r=parseFloat(jQuery.css(this.elem,this.prop,force)); 966return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0; 967},custom:function(from,to,unit){this.startTime=now(); 968this.start=from; 969this.end=to; 970this.unit=unit||this.unit||"px"; 971this.now=this.start; 972this.pos=this.state=0; 973this.update(); 974var self=this; 975function t(gotoEnd){return self.step(gotoEnd); 976}t.elem=this.elem; 977jQuery.timers.push(t); 978if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers; 979for(var i=0; 980i<timers.length; 981i++){if(!timers[i]()){timers.splice(i--,1); 982}}if(!timers.length){clearInterval(jQuery.timerId); 983jQuery.timerId=null; 984}},13); 985}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop); 986this.options.show=true; 987this.custom(0,this.cur()); 988if(this.prop=="width"||this.prop=="height"){this.elem.style[this.prop]="1px"; 989}jQuery(this.elem).show(); 990},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop); 991this.options.hide=true; 992this.custom(this.cur(),0); 993},step:function(gotoEnd){var t=now(); 994if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end; 995this.pos=this.state=1; 996this.update(); 997this.options.curAnim[this.prop]=true; 998var done=true; 999for(var i in this.options.curAnim){if(this.options.curAnim[i]!==true){done=false; 1000}}if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow; 1001this.elem.style.display=this.options.display; 1002if(jQuery.css(this.elem,"display")=="none"){this.elem.style.display="block"; 1003}}if(this.options.hide){this.elem.style.display="none"; 1004}if(this.options.hide||this.options.show){for(var p in this.options.curAnim){jQuery.attr(this.elem.style,p,this.options.orig[p]); 1005}}}if(done){this.options.complete.call(this.elem); 1006}return false; 1007}else{var n=t-this.startTime; 1008this.state=n/this.options.duration; 1009this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration); 1010this.now=this.start+((this.end-this.start)*this.pos); 1011this.update(); 1012}return true; 1013}}; 1014jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now; 1015},scrollTop:function(fx){fx.elem.scrollTop=fx.now; 1016},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now); 1017},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit; 1018}}}); 1019jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results; 1020if(elem){with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed"; 1021if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect(); 1022add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop)); 1023add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop); 1024}else{add(elem.offsetLeft,elem.offsetTop); 1025while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop); 1026if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2){border(offsetParent); 1027}if(!fixed&&css(offsetParent,"position")=="fixed"){fixed=true; 1028}offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent; 1029offsetParent=offsetParent.offsetParent; 1030}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display"))){add(-parent.scrollLeft,-parent.scrollTop); 1031}if(mozilla&&css(parent,"overflow")!="visible"){border(parent); 1032}parent=parent.parentNode; 1033}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute")){add(-doc.body.offsetLeft,-doc.body.offsetTop); 1034}if(fixed){add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop)); 1035}}results={top:top,left:left}; 1036}}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true)); 1037}function add(l,t){left+=parseInt(l,10)||0; 1038top+=parseInt(t,10)||0; 1039}return results; 1040}; 1041jQuery.fn.extend({position:function(){var left=0,top=0,results; 1042if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset(); 1043offset.top-=num(this,"marginTop"); 1044offset.left-=num(this,"marginLeft"); 1045parentOffset.top+=num(offsetParent,"borderTopWidth"); 1046parentOffset.left+=num(offsetParent,"borderLeftWidth"); 1047results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left}; 1048}return results; 1049},offsetParent:function(){var offsetParent=this[0].offsetParent; 1050while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,"position")=="static")){offsetParent=offsetParent.offsetParent; 1051}return jQuery(offsetParent); 1052}}); 1053jQuery.each(["Left","Top"],function(i,name){var method="scroll"+name; 1054jQuery.fn[method]=function(val){if(!this[0]){return ; 1055}return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val; 1056}):this[0]==window||this[0]==document?self[i?"pageYOffset":"pageXOffset"]||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method]; 1057}; 1058}); 1059jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom"; 1060jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br); 1061}; 1062jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0); 1063}; 1064}); 1065})(); 1066 1067 1068/* platform.js */ 1069SimileAjax.version="pre 2.3.0"; 1070SimileAjax.jQuery=jQuery.noConflict(true); 1071if(typeof window["$"]=="undefined"){window.$=SimileAjax.jQuery; 1072}SimileAjax.Platform.os={isMac:false,isWin:false,isWin32:false,isUnix:false}; 1073SimileAjax.Platform.browser={isIE:false,isNetscape:false,isMozilla:false,isFirefox:false,isOpera:false,isSafari:false,majorVersion:0,minorVersion:0}; 1074(function(){var C=navigator.appName.toLowerCase(); 1075var A=navigator.userAgent.toLowerCase(); 1076SimileAjax.Platform.os.isMac=(A.indexOf("mac")!=-1); 1077SimileAjax.Platform.os.isWin=(A.indexOf("win")!=-1); 1078SimileAjax.Platform.os.isWin32=SimileAjax.Platform.isWin&&(A.indexOf("95")!=-1||A.indexOf("98")!=-1||A.indexOf("nt")!=-1||A.indexOf("win32")!=-1||A.indexOf("32bit")!=-1); 1079SimileAjax.Platform.os.isUnix=(A.indexOf("x11")!=-1); 1080SimileAjax.Platform.browser.isIE=(C.indexOf("microsoft")!=-1); 1081SimileAjax.Platform.browser.isNetscape=(C.indexOf("netscape")!=-1); 1082SimileAjax.Platform.browser.isMozilla=(A.indexOf("mozilla")!=-1); 1083SimileAjax.Platform.browser.isFirefox=(A.indexOf("firefox")!=-1); 1084SimileAjax.Platform.browser.isOpera=(C.indexOf("opera")!=-1); 1085SimileAjax.Platform.browser.isSafari=(C.indexOf("safari")!=-1); 1086var E=function(G){var F=G.split("."); 1087SimileAjax.Platform.browser.majorVersion=parseInt(F[0]); 1088SimileAjax.Platform.browser.minorVersion=parseInt(F[1]); 1089}; 1090var B=function(H,G,I){var F=H.indexOf(G,I); 1091return F>=0?F:H.length; 1092}; 1093if(SimileAjax.Platform.browser.isMozilla){var D=A.indexOf("mozilla/"); 1094if(D>=0){E(A.substring(D+8,B(A," ",D))); 1095}}if(SimileAjax.Platform.browser.isIE){var D=A.indexOf("msie "); 1096if(D>=0){E(A.substring(D+5,B(A,";",D))); 1097}}if(SimileAjax.Platform.browser.isNetscape){var D=A.indexOf("rv:"); 1098if(D>=0){E(A.substring(D+3,B(A,")",D))); 1099}}if(SimileAjax.Platform.browser.isFirefox){var D=A.indexOf("firefox/"); 1100if(D>=0){E(A.substring(D+8,B(A," ",D))); 1101}}if(!("localeCompare" in String.prototype)){String.prototype.localeCompare=function(F){if(this<F){return -1; 1102}else{if(this>F){return 1; 1103}else{return 0; 1104}}}; 1105}})(); 1106SimileAjax.Platform.getDefaultLocale=function(){return SimileAjax.Platform.clientLocale; 1107}; 1108 1109 1110/* ajax.js */ 1111SimileAjax.ListenerQueue=function(A){this._listeners=[]; 1112this._wildcardHandlerName=A; 1113}; 1114SimileAjax.ListenerQueue.prototype.add=function(A){this._listeners.push(A); 1115}; 1116SimileAjax.ListenerQueue.prototype.remove=function(C){var A=this._listeners; 1117for(var B=0; 1118B<A.length; 1119B++){if(A[B]==C){A.splice(B,1); 1120break; 1121}}}; 1122SimileAjax.ListenerQueue.prototype.fire=function(C,B){var A=[].concat(this._listeners); 1123for(var D=0; 1124D<A.length; 1125D++){var E=A[D]; 1126if(C in E){try{E[C].apply(E,B); 1127}catch(F){SimileAjax.Debug.exception("Error firing event of name "+C,F); 1128}}else{if(this._wildcardHandlerName!=null&&this._wildcardHandlerName in E){try{E[this._wildcardHandlerName].apply(E,[C]); 1129}catch(F){SimileAjax.Debug.exception("Error firing event of name "+C+" to wildcard handler",F); 1130}}}}}; 1131 1132 1133/* data-structure.js */ 1134SimileAjax.Set=function(A){this._hash={}; 1135this._count=0; 1136if(A instanceof Array){for(var B=0; 1137B<A.length; 1138B++){this.add(A[B]); 1139}}else{if(A instanceof SimileAjax.Set){this.addSet(A); 1140}}}; 1141SimileAjax.Set.prototype.add=function(A){if(!(A in this._hash)){this._hash[A]=true; 1142this._count++; 1143return true; 1144}return false; 1145}; 1146SimileAjax.Set.prototype.addSet=function(B){for(var A in B._hash){this.add(A); 1147}}; 1148SimileAjax.Set.prototype.remove=function(A){if(A in this._hash){delete this._hash[A]; 1149this._count--; 1150return true; 1151}return false; 1152}; 1153SimileAjax.Set.prototype.removeSet=function(B){for(var A in B._hash){this.remove(A); 1154}}; 1155SimileAjax.Set.prototype.retainSet=function(B){for(var A in this._hash){if(!B.contains(A)){delete this._hash[A]; 1156this._count--; 1157}}}; 1158SimileAjax.Set.prototype.contains=function(A){return(A in this._hash); 1159}; 1160SimileAjax.Set.prototype.size=function(){return this._count; 1161}; 1162SimileAjax.Set.prototype.toArray=function(){var A=[]; 1163for(var B in this._hash){A.push(B); 1164}return A; 1165}; 1166SimileAjax.Set.prototype.visit=function(A){for(var B in this._hash){if(A(B)==true){break; 1167}}}; 1168SimileAjax.SortedArray=function(B,A){this._a=(A instanceof Array)?A:[]; 1169this._compare=B; 1170}; 1171SimileAjax.SortedArray.prototype.add=function(C){var A=this; 1172var B=this.find(function(D){return A._compare(D,C); 1173}); 1174if(B<this._a.length){this._a.splice(B,0,C); 1175}else{this._a.push(C); 1176}}; 1177SimileAjax.SortedArray.prototype.remove=function(C){var A=this; 1178var B=this.find(function(D){return A._compare(D,C); 1179}); 1180while(B<this._a.length&&this._compare(this._a[B],C)==0){if(this._a[B]==C){this._a.splice(B,1); 1181return true; 1182}else{B++; 1183}}return false; 1184}; 1185SimileAjax.SortedArray.prototype.removeAll=function(){this._a=[]; 1186}; 1187SimileAjax.SortedArray.prototype.elementAt=function(A){return this._a[A]; 1188}; 1189SimileAjax.SortedArray.prototype.length=function(){return this._a.length; 1190}; 1191SimileAjax.SortedArray.prototype.find=function(D){var B=0; 1192var A=this._a.length; 1193while(B<A){var C=Math.floor((B+A)/2); 1194var E=D(this._a[C]); 1195if(C==B){return E<0?B+1:B; 1196}else{if(E<0){B=C; 1197}else{A=C; 1198}}}return B; 1199}; 1200SimileAjax.SortedArray.prototype.getFirst=function(){return(this._a.length>0)?this._a[0]:null; 1201}; 1202SimileAjax.SortedArray.prototype.getLast=function(){return(this._a.length>0)?this._a[this._a.length-1]:null; 1203}; 1204SimileAjax.EventIndex=function(B){var A=this; 1205this._unit=(B!=null)?B:SimileAjax.NativeDateUnit; 1206this._events=new SimileAjax.SortedArray(function(C,D){return A._unit.compare(C.getStart(),D.getStart()); 1207}); 1208this._idToEvent={}; 1209this._indexed=true; 1210}; 1211SimileAjax.EventIndex.prototype.getUnit=function(){return this._unit; 1212}; 1213SimileAjax.EventIndex.prototype.getEvent=function(A){return this._idToEvent[A]; 1214}; 1215SimileAjax.EventIndex.prototype.add=function(A){this._events.add(A); 1216this._idToEvent[A.getID()]=A; 1217this._indexed=false; 1218}; 1219SimileAjax.EventIndex.prototype.removeAll=function(){this._events.removeAll(); 1220this._idToEvent={}; 1221this._indexed=false; 1222}; 1223SimileAjax.EventIndex.prototype.getCount=function(){return this._events.length(); 1224}; 1225SimileAjax.EventIndex.prototype.getIterator=function(A,B){if(!this._indexed){this._index(); 1226}return new SimileAjax.EventIndex._Iterator(this._events,A,B,this._unit); 1227}; 1228SimileAjax.EventIndex.prototype.getReverseIterator=function(A,B){if(!this._indexed){this._index(); 1229}return new SimileAjax.EventIndex._ReverseIterator(this._events,A,B,this._unit); 1230}; 1231SimileAjax.EventIndex.prototype.getAllIterator=function(){return new SimileAjax.EventIndex._AllIterator(this._events); 1232}; 1233SimileAjax.EventIndex.prototype.getEarliestDate=function(){var A=this._events.getFirst(); 1234return(A==null)?null:A.getStart(); 1235}; 1236SimileAjax.EventIndex.prototype.getLatestDate=function(){var A=this._events.getLast(); 1237if(A==null){return null; 1238}if(!this._indexed){this._index(); 1239}var C=A._earliestOverlapIndex; 1240var B=this._events.elementAt(C).getEnd(); 1241for(var D=C+1; 1242D<this._events.length(); 1243D++){B=this._unit.later(B,this._events.elementAt(D).getEnd()); 1244}return B; 1245}; 1246SimileAjax.EventIndex.prototype._index=function(){var E=this._events.length(); 1247for(var F=0; 1248F<E; 1249F++){var D=this._events.elementAt(F); 1250D._earliestOverlapIndex=F; 1251}var G=1; 1252for(var F=0; 1253F<E; 1254F++){var D=this._events.elementAt(F); 1255var C=D.getEnd(); 1256G=Math.max(G,F+1); 1257while(G<E){var A=this._events.elementAt(G); 1258var B=A.getStart(); 1259if(this._unit.compare(B,C)<0){A._earliestOverlapIndex=F; 1260G++; 1261}else{break; 1262}}}this._indexed=true; 1263}; 1264SimileAjax.EventIndex._Iterator=function(A,C,D,B){this._events=A; 1265this._startDate=C; 1266this._endDate=D; 1267this._unit=B; 1268this._currentIndex=A.find(function(E){return B.compare(E.getStart(),C); 1269}); 1270if(this._currentIndex-1>=0){this._currentIndex=this._events.elementAt(this._currentIndex-1)._earliestOverlapIndex; 1271}this._currentIndex--; 1272this._maxIndex=A.find(function(E){return B.compare(E.getStart(),D); 1273}); 1274this._hasNext=false; 1275this._next=null; 1276this._findNext(); 1277}; 1278SimileAjax.EventIndex._Iterator.prototype={hasNext:function(){return this._hasNext; 1279},next:function(){if(this._hasNext){var A=this._next; 1280this._findNext(); 1281return A; 1282}else{return null; 1283}},_findNext:function(){var B=this._unit; 1284while((++this._currentIndex)<this._maxIndex){var A=this._events.elementAt(this._currentIndex); 1285if(B.compare(A.getStart(),this._endDate)<0&&B.compare(A.getEnd(),this._startDate)>0){this._next=A; 1286this._hasNext=true; 1287return ; 1288}}this._next=null; 1289this._hasNext=false; 1290}}; 1291SimileAjax.EventIndex._ReverseIterator=function(A,C,D,B){this._events=A; 1292this._startDate=C; 1293this._endDate=D; 1294this._unit=B; 1295this._minIndex=A.find(function(E){return B.compare(E.getStart(),C); 1296}); 1297if(this._minIndex-1>=0){this._minIndex=this._events.elementAt(this._minIndex-1)._earliestOverlapIndex; 1298}this._maxIndex=A.find(function(E){return B.compare(E.getStart(),D); 1299}); 1300this._currentIndex=this._maxIndex; 1301this._hasNext=false; 1302this._next=null; 1303this._findNext(); 1304}; 1305SimileAjax.EventIndex._ReverseIterator.prototype={hasNext:function(){return this._hasNext; 1306},next:function(){if(this._hasNext){var A=this._next; 1307this._findNext(); 1308return A; 1309}else{return null; 1310}},_findNext:function(){var B=this._unit; 1311while((--this._currentIndex)>=this._minIndex){var A=this._events.elementAt(this._currentIndex); 1312if(B.compare(A.getStart(),this._endDate)<0&&B.compare(A.getEnd(),this._startDate)>0){this._next=A; 1313this._hasNext=true; 1314return ; 1315}}this._next=null; 1316this._hasNext=false; 1317}}; 1318SimileAjax.EventIndex._AllIterator=function(A){this._events=A; 1319this._index=0; 1320}; 1321SimileAjax.EventIndex._AllIterator.prototype={hasNext:function(){return this._index<this._events.length(); 1322},next:function(){return this._index<this._events.length()?this._events.elementAt(this._index++):null; 1323}}; 1324 1325 1326/* date-time.js */ 1327SimileAjax.DateTime=new Object(); 1328SimileAjax.DateTime.MILLISECOND=0; 1329SimileAjax.DateTime.SECOND=1; 1330SimileAjax.DateTime.MINUTE=2; 1331SimileAjax.DateTime.HOUR=3; 1332SimileAjax.DateTime.DAY=4; 1333SimileAjax.DateTime.WEEK=5; 1334SimileAjax.DateTime.MONTH=6; 1335SimileAjax.DateTime.YEAR=7; 1336SimileAjax.DateTime.DECADE=8; 1337SimileAjax.DateTime.CENTURY=9; 1338SimileAjax.DateTime.MILLENNIUM=10; 1339SimileAjax.DateTime.EPOCH=-1; 1340SimileAjax.DateTime.ERA=-2; 1341SimileAjax.DateTime.gregorianUnitLengths=[]; 1342(function(){var B=SimileAjax.DateTime; 1343var A=B.gregorianUnitLengths; 1344A[B.MILLISECOND]=1; 1345A[B.SECOND]=1000; 1346A[B.MINUTE]=A[B.SECOND]*60; 1347A[B.HOUR]=A[B.MINUTE]*60; 1348A[B.DAY]=A[B.HOUR]*24; 1349A[B.WEEK]=A[B.DAY]*7; 1350A[B.MONTH]=A[B.DAY]*31; 1351A[B.YEAR]=A[B.DAY]*365; 1352A[B.DECADE]=A[B.YEAR]*10; 1353A[B.CENTURY]=A[B.YEAR]*100; 1354A[B.MILLENNIUM]=A[B.YEAR]*1000; 1355})(); 1356SimileAjax.DateTime._dateRegexp=new RegExp("^(-?)([0-9]{4})("+["(-?([0-9]{2})(-?([0-9]{2}))?)","(-?([0-9]{3}))","(-?W([0-9]{2})(-?([1-7]))?)"].join("|")+")?$"); 1357SimileAjax.DateTime._timezoneRegexp=new RegExp("Z|(([-+])([0-9]{2})(:?([0-9]{2}))?)$"); 1358SimileAjax.DateTime._timeRegexp=new RegExp("^([0-9]{2})(:?([0-9]{2})(:?([0-9]{2})(.([0-9]+))?)?)?$"); 1359SimileAjax.DateTime.setIso8601Date=function(G,C){var I=C.match(SimileAjax.DateTime._dateRegexp); 1360if(!I){throw new Error("Invalid date string: "+C); 1361}var B=(I[1]=="-")?-1:1; 1362var J=B*I[2]; 1363var H=I[5]; 1364var D=I[7]; 1365var F=I[9]; 1366var A=I[11]; 1367var M=(I[13])?I[13]:1; 1368G.setUTCFullYear(J); 1369if(F){G.setUTCMonth(0); 1370G.setUTCDate(Number(F)); 1371}else{if(A){G.setUTCMonth(0); 1372G.setUTCDate(1); 1373var L=G.getUTCDay(); 1374var K=(L)?L:7; 1375var E=Number(M)+(7*Number(A)); 1376if(K<=4){G.setUTCDate(E+1-K); 1377}else{G.setUTCDate(E+8-K); 1378}}else{if(H){G.setUTCDate(1); 1379G.setUTCMonth(H-1); 1380}if(D){G.setUTCDate(D); 1381}}}return G; 1382}; 1383SimileAjax.DateTime.setIso8601Time=function(F,D){var G=D.match(SimileAjax.DateTime._timeRegexp); 1384if(!G){SimileAjax.Debug.warn("Invalid time string: "+D); 1385return false; 1386}var A=G[1]; 1387var E=Number((G[3])?G[3]:0); 1388var C=(G[5])?G[5]:0; 1389var B=G[7]?(Number("0."+G[7])*1000):0; 1390F.setUTCHours(A); 1391F.setUTCMinutes(E); 1392F.setUTCSeconds(C); 1393F.setUTCMilliseconds(B); 1394return F; 1395}; 1396SimileAjax.DateTime.timezoneOffset=new Date().getTimezoneOffset(); 1397SimileAjax.DateTime.setIso8601=function(B,A){var D=null; 1398var E=(A.indexOf("T")==-1)?A.split(" "):A.split("T"); 1399SimileAjax.DateTime.setIso8601Date(B,E[0]); 1400if(E.length==2){var C=E[1].match(SimileAjax.DateTime._timezoneRegexp); 1401if(C){if(C[0]=="Z"){D=0; 1402}else{D=(Number(C[3])*60)+Number(C[5]); 1403D*=((C[2]=="-")?1:-1); 1404}E[1]=E[1].substr(0,E[1].length-C[0].length); 1405}SimileAjax.DateTime.setIso8601Time(B,E[1]); 1406}if(D==null){D=B.getTimezoneOffset(); 1407}B.setTime(B.getTime()+D*60000); 1408return B; 1409}; 1410SimileAjax.DateTime.parseIso8601DateTime=function(A){try{return SimileAjax.DateTime.setIso8601(new Date(0),A); 1411}catch(B){return null; 1412}}; 1413SimileAjax.DateTime.parseGregorianDateTime=function(F){if(F==null){return null; 1414}else{if(F instanceof Date){return F; 1415}}var B=F.toString(); 1416if(B.length>0&&B.length<8){var C=B.indexOf(" "); 1417if(C>0){var A=parseInt(B.substr(0,C)); 1418var G=B.substr(C+1); 1419if(G.toLowerCase()=="bc"){A=1-A; 1420}}else{var A=parseInt(B); 1421}var E=new Date(0); 1422E.setUTCFullYear(A); 1423return E; 1424}try{return new Date(Date.parse(B)); 1425}catch(D){return null; 1426}}; 1427SimileAjax.DateTime.roundDownToInterval=function(E,B,I,K,A){var F=I*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR]; 1428var J=new Date(E.getTime()+F); 1429var C=function(L){L.setUTCMilliseconds(0); 1430L.setUTCSeconds(0); 1431L.setUTCMinutes(0); 1432L.setUTCHours(0); 1433}; 1434var D=function(L){C(L); 1435L.setUTCDate(1); 1436L.setUTCMonth(0); 1437}; 1438switch(B){case SimileAjax.DateTime.MILLISECOND:var H=J.getUTCMilliseconds(); 1439J.setUTCMilliseconds(H-(H%K)); 1440break; 1441case SimileAjax.DateTime.SECOND:J.setUTCMilliseconds(0); 1442var H=J.getUTCSeconds(); 1443J.setUTCSeconds(H-(H%K)); 1444break; 1445case SimileAjax.DateTime.MINUTE:J.setUTCMilliseconds(0); 1446J.setUTCSeconds(0); 1447var H=J.getUTCMinutes(); 1448J.setTime(J.getTime()-(H%K)*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.MINUTE]); 1449break; 1450case SimileAjax.DateTime.HOUR:J.setUTCMilliseconds(0); 1451J.setUTCSeconds(0); 1452J.setUTCMinutes(0); 1453var H=J.getUTCHours(); 1454J.setUTCHours(H-(H%K)); 1455break; 1456case SimileAjax.DateTime.DAY:C(J); 1457break; 1458case SimileAjax.DateTime.WEEK:C(J); 1459var G=(J.getUTCDay()+7-A)%7; 1460J.setTime(J.getTime()-G*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.DAY]); 1461break; 1462case SimileAjax.DateTime.MONTH:C(J); 1463J.setUTCDate(1); 1464var H=J.getUTCMonth(); 1465J.setUTCMonth(H-(H%K)); 1466break; 1467case SimileAjax.DateTime.YEAR:D(J); 1468var H=J.getUTCFullYear(); 1469J.setUTCFullYear(H-(H%K)); 1470break; 1471case SimileAjax.DateTime.DECADE:D(J); 1472J.setUTCFullYear(Math.floor(J.getUTCFullYear()/10)*10); 1473break; 1474case SimileAjax.DateTime.CENTURY:D(J); 1475J.setUTCFullYear(Math.floor(J.getUTCFullYear()/100)*100); 1476break; 1477case SimileAjax.DateTime.MILLENNIUM:D(J); 1478J.setUTCFullYear(Math.floor(J.getUTCFullYear()/1000)*1000); 1479break; 1480}E.setTime(J.getTime()-F); 1481}; 1482SimileAjax.DateTime.roundUpToInterval=function(C,F,D,A,B){var E=C.getTime(); 1483SimileAjax.DateTime.roundDownToInterval(C,F,D,A,B); 1484if(C.getTime()<E){C.setTime(C.getTime()+SimileAjax.DateTime.gregorianUnitLengths[F]*A); 1485}}; 1486SimileAjax.DateTime.incrementByInterval=function(A,D,B){B=(typeof B=="undefined")?0:B; 1487var E=B*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR]; 1488var C=new Date(A.getTime()+E); 1489switch(D){case SimileAjax.DateTime.MILLISECOND:C.setTime(C.getTime()+1); 1490break; 1491case SimileAjax.DateTime.SECOND:C.setTime(C.getTime()+1000); 1492break; 1493case SimileAjax.DateTime.MINUTE:C.setTime(C.getTime()+SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.MINUTE]); 1494break; 1495case SimileAjax.DateTime.HOUR:C.setTime(C.getTime()+SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR]); 1496break; 1497case SimileAjax.DateTime.DAY:C.setUTCDate(C.getUTCDate()+1); 1498break; 1499case SimileAjax.DateTime.WEEK:C.setUTCDate(C.getUTCDate()+7); 1500break; 1501case SimileAjax.DateTime.MONTH:C.setUTCMonth(C.getUTCMonth()+1); 1502break; 1503case SimileAjax.DateTime.YEAR:C.setUTCFullYear(C.getUTCFullYear()+1); 1504break; 1505case SimileAjax.DateTime.DECADE:C.setUTCFullYear(C.getUTCFullYear()+10); 1506break; 1507case SimileAjax.DateTime.CENTURY:C.setUTCFullYear(C.getUTCFullYear()+100); 1508break; 1509case SimileAjax.DateTime.MILLENNIUM:C.setUTCFullYear(C.getUTCFullYear()+1000); 1510break; 1511}A.setTime(C.getTime()-E); 1512}; 1513SimileAjax.DateTime.removeTimeZoneOffset=function(A,B){return new Date(A.getTime()+B*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR]); 1514}; 1515SimileAjax.DateTime.getTimezone=function(){var A=new Date().getTimezoneOffset(); 1516return A/-60; 1517}; 1518 1519 1520/* debug.js */ 1521SimileAjax.Debug={silent:false}; 1522SimileAjax.Debug.log=function(B){var A; 1523if("console" in window&&"log" in window.console){A=function(C){console.log(C); 1524}; 1525}else{A=function(C){if(!SimileAjax.Debug.silent){alert(C); 1526}}; 1527}SimileAjax.Debug.log=A; 1528A(B); 1529}; 1530SimileAjax.Debug.warn=function(B){var A; 1531if("console" in window&&"warn" in window.console){A=function(C){console.warn(C); 1532}; 1533}else{A=function(C){if(!SimileAjax.Debug.silent){alert(C); 1534}}; 1535}SimileAjax.Debug.warn=A; 1536A(B); 1537}; 1538SimileAjax.Debug.exception=function(B,D){var A,C=SimileAjax.parseURLParameters(); 1539if(C.errors=="throw"||SimileAjax.params.errors=="throw"){A=function(F,E){throw (F); 1540}; 1541}else{if("console" in window&&"error" in window.console){A=function(F,E){if(E!=null){console.error(E+" %o",F); 1542}else{console.error(F); 1543}throw (F); 1544}; 1545}else{A=function(F,E){if(!SimileAjax.Debug.silent){alert("Caught exception: "+E+"\n\nDetails: "+("description" in F?F.description:F)); 1546}throw (F); 1547}; 1548}}SimileAjax.Debug.exception=A; 1549A(B,D); 1550}; 1551SimileAjax.Debug.objectToString=function(A){return SimileAjax.Debug._objectToString(A,""); 1552}; 1553SimileAjax.Debug._objectToString=function(D,C){var B=C+" "; 1554if(typeof D=="object"){var A="{"; 1555for(E in D){A+=B+E+": "+SimileAjax.Debug._objectToString(D[E],B)+"\n"; 1556}A+=C+"}"; 1557return A; 1558}else{if(typeof D=="array"){var A="["; 1559for(var E=0; 1560E<D.length; 1561E++){A+=SimileAjax.Debug._objectToString(D[E],B)+"\n"; 1562}A+=C+"]"; 1563return A; 1564}else{return D; 1565}}}; 1566 1567 1568/* dom.js */ 1569SimileAjax.DOM=new Object(); 1570SimileAjax.DOM.registerEventWithObject=function(C,A,D,B){SimileAjax.DOM.registerEvent(C,A,function(F,E,G){return D[B].call(D,F,E,G); 1571}); 1572}; 1573SimileAjax.DOM.registerEvent=function(C,B,D){var A=function(E){E=(E)?E:((event)?event:null); 1574if(E){var F=(E.target)?E.target:((E.srcElement)?E.srcElement:null); 1575if(F){F=(F.nodeType==1||F.nodeType==9)?F:F.parentNode; 1576}return D(C,E,F); 1577}return true; 1578}; 1579if(SimileAjax.Platform.browser.isIE){C.attachEvent("on"+B,A); 1580}else{C.addEventListener(B,A,false); 1581}}; 1582SimileAjax.DOM.getPageCoordinates=function(B){var E=0; 1583var D=0; 1584if(B.nodeType!=1){B=B.parentNode; 1585}var C=B; 1586while(C!=null){E+=C.offsetLeft; 1587D+=C.offsetTop; 1588C=C.offsetParent; 1589}var A=document.body; 1590while(B!=null&&B!=A){if("scrollLeft" in B){E-=B.scrollLeft; 1591D-=B.scrollTop; 1592}B=B.parentNode; 1593}return{left:E,top:D}; 1594}; 1595SimileAjax.DOM.getSize=function(B){var A=this.getStyle(B,"width"); 1596var C=this.getStyle(B,"height"); 1597if(A.indexOf("px")>-1){A=A.replace("px",""); 1598}if(C.indexOf("px")>-1){C=C.replace("px",""); 1599}return{w:A,h:C}; 1600}; 1601SimileAjax.DOM.getStyle=function(B,A){if(B.currentStyle){var C=B.currentStyle[A]; 1602}else{if(window.getComputedStyle){var C=document.defaultView.getComputedStyle(B,null).getPropertyValue(A); 1603}else{var C=""; 1604}}return C; 1605}; 1606SimileAjax.DOM.getEventRelativeCoordinates=function(B,C){if(SimileAjax.Platform.browser.isIE){if(B.type=="mousewheel"){var A=SimileAjax.DOM.getPageCoordinates(C); 1607return{x:B.clientX-A.left,y:B.clientY-A.top}; 1608}else{return{x:B.offsetX,y:B.offsetY}; 1609}}else{var A=SimileAjax.DOM.getPageCoordinates(C); 1610if((B.type=="DOMMouseScroll")&&SimileAjax.Platform.browser.isFirefox&&(SimileAjax.Platform.browser.majorVersion==2)){return{x:B.screenX-A.left,y:B.screenY-A.top}; 1611}else{return{x:B.pageX-A.left,y:B.pageY-A.top}; 1612}}}; 1613SimileAjax.DOM.getEventPageCoordinates=function(A){if(SimileAjax.Platform.browser.isIE){return{x:A.clientX+document.body.scrollLeft,y:A.clientY+document.body.scrollTop}; 1614}else{return{x:A.pageX,y:A.pageY}; 1615}}; 1616SimileAjax.DOM.hittest=function(A,C,B){return SimileAjax.DOM._hittest(document.body,A,C,B); 1617}; 1618SimileAjax.DOM._hittest=function(C,L,K,A){var M=C.childNodes; 1619outer:for(var G=0; 1620G<M.length; 1621G++){var H=M[G]; 1622for(var F=0; 1623F<A.length; 1624F++){if(H==A[F]){continue outer; 1625}}if(H.offsetWidth==0&&H.offsetHeight==0){var B=SimileAjax.DOM._hittest(H,L,K,A); 1626if(B!=H){return B; 1627}}else{var J=0; 1628var E=0; 1629var D=H; 1630while(D){J+=D.offsetTop; 1631E+=D.offsetLeft; 1632D=D.offsetParent; 1633}if(E<=L&&J<=K&&(L-E)<H.offsetWidth&&(K-J)<H.offsetHeight){return SimileAjax.DOM._hittest(H,L,K,A); 1634}else{if(H.nodeType==1&&H.tagName=="TR"){var I=SimileAjax.DOM._hittest(H,L,K,A); 1635if(I!=H){return I; 1636}}}}}return C; 1637}; 1638SimileAjax.DOM.cancelEvent=function(A){A.returnValue=false; 1639A.cancelBubble=true; 1640if("preventDefault" in A){A.preventDefault(); 1641}}; 1642SimileAjax.DOM.appendClassName=function(D,A){var C=D.className.split(" "); 1643for(var B=0; 1644B<C.length; 1645B++){if(C[B]==A){return ; 1646}}C.push(A); 1647D.className=C.join(" "); 1648}; 1649SimileAjax.DOM.createInputElement=function(A){var B=document.createElement("div"); 1650B.innerHTML="<input type='"+A+"' />"; 1651return B.firstChild; 1652}; 1653SimileAjax.DOM.createDOMFromTemplate=function(A){var B={}; 1654B.elmt=SimileAjax.DOM._createDOMFromTemplate(A,B,null); 1655return B; 1656}; 1657SimileAjax.DOM._createDOMFromTemplate=function(F,G,D){if(F==null){return null; 1658}else{if(typeof F!="object"){var C=document.createTextNode(F); 1659if(D!=null){D.appendChild(C); 1660}return C; 1661}else{var A=null; 1662if("tag" in F){var J=F.tag; 1663if(D!=null){if(J=="tr"){A=D.insertRow(D.rows.length); 1664}else{if(J=="td"){A=D.insertCell(D.cells.length); 1665}}}if(A==null){A=J=="input"?SimileAjax.DOM.createInputElement(F.type):document.createElement(J); 1666if(D!=null){D.appendChild(A); 1667}}}else{A=F.elmt; 1668if(D!=null){D.appendChild(A); 1669}}for(var B in F){var H=F[B]; 1670if(B=="field"){G[H]=A; 1671}else{if(B=="className"){A.className=H; 1672}else{if(B=="id"){A.id=H; 1673}else{if(B=="title"){A.title=H; 1674}else{if(B=="type"&&A.tagName=="input"){}else{if(B=="style"){for(n in H){var I=H[n]; 1675if(n=="float"){n=SimileAjax.Platform.browser.isIE?"styleFloat":"cssFloat"; 1676}A.style[n]=I; 1677}}else{if(B=="children"){for(var E=0; 1678E<H.length; 1679E++){SimileAjax.DOM._createDOMFromTemplate(H[E],G,A); 1680}}else{if(B!="tag"&&B!="elmt"){A.setAttribute(B,H); 1681}}}}}}}}}return A; 1682}}}; 1683SimileAjax.DOM._cachedParent=null; 1684SimileAjax.DOM.createElementFromString=function(A){if(SimileAjax.DOM._cachedParent==null){SimileAjax.DOM._cachedParent=document.createElement("div"); 1685}SimileAjax.DOM._cachedParent.innerHTML=A; 1686return SimileAjax.DOM._cachedParent.firstChild; 1687}; 1688SimileAjax.DOM.createDOMFromString=function(A,C,D){var B=typeof A=="string"?document.createElement(A):A; 1689B.innerHTML=C; 1690var E={elmt:B}; 1691SimileAjax.DOM._processDOMChildrenConstructedFromString(E,B,D!=null?D:{}); 1692return E; 1693}; 1694SimileAjax.DOM._processDOMConstructedFromString=function(D,A,B){var E=A.id; 1695if(E!=null&&E.length>0){A.removeAttribute("id"); 1696if(E in B){var C=A.parentNode; 1697C.insertBefore(B[E],A); 1698C.removeChild(A); 1699D[E]=B[E]; 1700return ; 1701}else{D[E]=A; 1702}}if(A.hasChildNodes()){SimileAjax.DOM._processDOMChildrenConstructedFromString(D,A,B); 1703}}; 1704SimileAjax.DOM._processDOMChildrenConstructedFromString=function(E,B,D){var C=B.firstChild; 1705while(C!=null){var A=C.nextSibling; 1706if(C.nodeType==1){SimileAjax.DOM._processDOMConstructedFromString(E,C,D); 1707}C=A; 1708}}; 1709 1710 1711/* graphics.js */ 1712SimileAjax.Graphics=new Object(); 1713SimileAjax.Graphics.pngIsTranslucent=(!SimileAjax.Platform.browser.isIE)||(SimileAjax.Platform.browser.majorVersion>6); 1714if(!SimileAjax.Graphics.pngIsTranslucent){SimileAjax.includeCssFile(document,SimileAjax.urlPrefix+"styles/graphics-ie6.css"); 1715}SimileAjax.Graphics._createTranslucentImage1=function(A,C){var B=document.createElement("img"); 1716B.setAttribute("src",A); 1717if(C!=null){B.style.verticalAlign=C; 1718}return B; 1719}; 1720SimileAjax.Graphics._createTranslucentImage2=function(A,C){var B=document.createElement("img"); 1721B.style.width="1px"; 1722B.style.height="1px"; 1723B.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+A+"', sizingMethod='image')"; 1724B.style.verticalAlign=(C!=null)?C:"middle"; 1725return B; 1726}; 1727SimileAjax.Graphics.createTranslucentImage=SimileAjax.Graphics.pngIsTranslucent?SimileAjax.Graphics._createTranslucentImage1:SimileAjax.Graphics._createTranslucentImage2; 1728SimileAjax.Graphics._createTranslucentImageHTML1=function(A,B){return'<img src="'+A+'"'+(B!=null?' style="vertical-align: '+B+';"':"")+" />"; 1729}; 1730SimileAjax.Graphics._createTranslucentImageHTML2=function(A,C){var B="width: 1px; height: 1px; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+A+"', sizingMethod='image');"+(C!=null?" vertical-align: "+C+";":""); 1731return"<img src='"+A+"' style=\""+B+'" />'; 1732}; 1733SimileAjax.Graphics.createTranslucentImageHTML=SimileAjax.Graphics.pngIsTranslucent?SimileAjax.Graphics._createTranslucentImageHTML1:SimileAjax.Graphics._createTranslucentImageHTML2; 1734SimileAjax.Graphics.setOpacity=function(B,A){if(SimileAjax.Platform.browser.isIE){B.style.filter="progid:DXImageTransform.Microsoft.Alpha(Style=0,Opacity="+A+")"; 1735}else{var C=(A/100).toString(); 1736B.style.opacity=C; 1737B.style.MozOpacity=C; 1738}}; 1739SimileAjax.Graphics.bubbleConfig={containerCSSClass:"simileAjax-bubble-container",innerContainerCSSClass:"simileAjax-bubble-innerContainer",contentContainerCSSClass:"simileAjax-bubble-contentContainer",borderGraphicSize:50,borderGraphicCSSClassPrefix:"simileAjax-bubble-border-",arrowGraphicTargetOffset:33,arrowGraphicLength:100,arrowGraphicWidth:49,arrowGraphicCSSClassPrefix:"simileAjax-bubble-arrow-",closeGraphicCSSClass:"simileAjax-bubble-close",extraPadding:20}; 1740SimileAjax.Graphics.createBubbleForContentAndPoint=function(F,E,C,B,D,A){if(typeof B!="number"){B=300; 1741}if(typeof A!="number"){A=0; 1742}F.style.position="absolute"; 1743F.style.left="-5000px"; 1744F.style.top="0px"; 1745F.style.width=B+"px"; 1746document.body.appendChild(F); 1747window.setTimeout(function(){var H=F.scrollWidth+10; 1748var J=F.scrollHeight+10; 1749var G=0; 1750if(A>0&&J>A){J=A; 1751G=H-25; 1752}var I=SimileAjax.Graphics.createBubbleForPoint(E,C,H,J,D); 1753document.body.removeChild(F); 1754F.style.position="static"; 1755F.style.left=""; 1756F.style.top=""; 1757if(G>0){var K=document.createElement("div"); 1758F.style.width=""; 1759K.style.width=G+"px"; 1760K.appendChild(F); 1761I.content.appendChild(K); 1762}else{F.style.width=H+"px"; 1763I.content.appendChild(F); 1764}},200); 1765}; 1766SimileAjax.Graphics.createBubbleForPoint=function(B,A,J,N,F){J=parseInt(J,10); 1767N=parseInt(N,10); 1768var E=SimileAjax.Graphics.bubbleConfig; 1769var M=SimileAjax.Graphics.pngIsTranslucent?"pngTranslucent":"pngNotTranslucent"; 1770var L=J+2*E.borderGraphicSize; 1771var O=N+2*E.borderGraphicSize; 1772var K=function(S){return S+" "+S+"-"+M; 1773}; 1774var H=document.createElement("div"); 1775H.className=K(E.containerCSSClass); 1776H.style.width=J+"px"; 1777H.style.height=N+"px"; 1778var D=document.createElement("div"); 1779D.className=K(E.innerContainerCSSClass); 1780H.appendChild(D); 1781var I=function(){if(!Q._closed){document.body.removeChild(Q._div); 1782Q._doc=null; 1783Q._div=null; 1784Q._content=null; 1785Q._closed=true; 1786}}; 1787var Q={_closed:false}; 1788var R=SimileAjax.WindowManager.pushLayer(I,true,H); 1789Q._div=H; 1790Q.close=function(){SimileAjax.WindowManager.popLayer(R); 1791}; 1792var G=function(T){var S=document.createElement("div"); 1793S.className=K(E.borderGraphicCSSClassPrefix+T); 1794D.appendChild(S); 1795}; 1796G("top-left"); 1797G("top-right"); 1798G("bottom-left"); 1799G("bottom-right"); 1800G("left"); 1801G("right"); 1802G("top"); 1803G("bottom"); 1804var C=document.createElement("div"); 1805C.className=K(E.contentContainerCSSClass); 1806D.appendChild(C); 1807Q.content=C; 1808var P=document.createElement("div"); 1809P.className=K(E.closeGraphicCSSClass); 1810D.appendChild(P); 1811SimileAjax.WindowManager.registerEventWithObject(P,"click",Q,"close"); 1812(function(){var Y=SimileAjax.Graphics.getWindowDimensions(); 1813var T=Y.w; 1814var U=Y.h; 1815var V=Math.ceil(E.arrowGraphicWidth/2); 1816var Z=function(b){var a=document.createElement("div"); 1817a.className=K(E.arrowGraphicCSSClassPrefix+"point-"+b); 1818D.appendChild(a); 1819return a; 1820}; 1821if(B-V-E.borderGraphicSize-E.extraPadding>0&&B+V+E.borderGraphicSize+E.extraPadding<T){var X=B-Math.round(J/2); 1822X=B<(T/2)?Math.max(X,E.extraPadding+E.borderGraphicSize):Math.min(X,T-E.extraPadding-E.borderGraphicSize-J); 1823if((F&&F=="top")||(!F&&(A-E.arrowGraphicTargetOffset-N-E.borderGraphicSize-E.extraPadding>0))){var S=Z("down"); 1824S.style.left=(B-V-X)+"px"; 1825H.style.left=X+"px"; 1826H.style.top=(A-E.arrowGraphicTargetOffset-N)+"px"; 1827return ; 1828}else{if((F&&F=="bottom")||(!F&&(A+E.arrowGraphicTargetOffset+N+E.borderGraphicSize+E.extraPadding<U))){var S=Z("up"); 1829S.style.left=(B-V-X)+"px"; 1830H.style.left=X+"px"; 1831H.style.top=(A+E.arrowGraphicTargetOffset)+"px"; 1832return ; 1833}}}var W=A-Math.round(N/2); 1834W=A<(U/2)?Math.max(W,E.extraPadding+E.borderGraphicSize):Math.min(W,U-E.extraPadding-E.borderGraphicSize-N); 1835if((F&&F=="left")||(!F&&(B-E.arrowGraphicTargetOffset-J-E.borderGraphicSize-E.extraPadding>0))){var S=Z("right"); 1836S.style.top=(A-V-W)+"px"; 1837H.style.top=W+"px"; 1838H.style.left=(B-E.arrowGraphicTargetOffset-J)+"px"; 1839}else{var S=Z("left"); 1840S.style.top=(A-V-W)+"px"; 1841H.style.top=W+"px"; 1842H.style.left=(B+E.arrowGraphicTargetOffset)+"px"; 1843}})(); 1844document.body.appendChild(H); 1845return Q; 1846}; 1847SimileAjax.Graphics.getWindowDimensions=function(){if(typeof window.innerHeight=="number"){return{w:window.innerWidth,h:window.innerHeight}; 1848}else{if(document.documentElement&&document.documentElement.clientHeight){return{w:document.documentElement.clientWidth,h:document.documentElement.clientHeight}; 1849}else{if(document.body&&document.body.clientHeight){return{w:document.body.clientWidth,h:document.body.clientHeight}; 1850}}}}; 1851SimileAjax.Graphics.createMessageBubble=function(H){var G=H.createElement("div"); 1852if(SimileAjax.Graphics.pngIsTranslucent){var I=H.createElement("div"); 1853I.style.height="33px"; 1854I.style.background="url("+SimileAjax.urlPrefix+"images/message-top-left.png) top left no-repeat"; 1855I.style.paddingLeft="44px"; 1856G.appendChild(I); 1857var D=H.createElement("div"); 1858D.style.height="33px"; 1859D.style.background="url("+SimileAjax.urlPrefix+"images/message-top-right.png) top right no-repeat"; 1860I.appendChild(D); 1861var F=H.createElement("div"); 1862F.style.background="url("+SimileAjax.urlPrefix+"images/message-left.png) top left repeat-y"; 1863F.style.paddingLeft="44px"; 1864G.appendChild(F); 1865var B=H.createElement("div"); 1866B.style.background="url("+SimileAjax.urlPrefix+"images/message-right.png) top right repeat-y"; 1867B.style.paddingRight="44px"; 1868F.appendChild(B); 1869var C=H.createElement("div"); 1870B.appendChild(C); 1871var E=H.createElement("div"); 1872E.style.height="55px"; 1873E.style.background="url("+SimileAjax.urlPrefix+"images/message-bottom-left.png) bottom left no-repeat"; 1874E.style.paddingLeft="44px"; 1875G.appendChild(E); 1876var A=H.createElement("div"); 1877A.style.height="55px"; 1878A.style.background="url("+SimileAjax.urlPrefix+"images/message-bottom-right.png) bottom right no-repeat"; 1879E.appendChild(A); 1880}else{G.style.border="2px solid #7777AA"; 1881G.style.padding="20px"; 1882G.style.background="white"; 1883SimileAjax.Graphics.setOpacity(G,90); 1884var C=H.createElement("div"); 1885G.appendChild(C); 1886}return{containerDiv:G,contentDiv:C}; 1887}; 1888SimileAjax.Graphics.createAnimation=function(B,E,D,C,A){return new SimileAjax.Graphics._Animation(B,E,D,C,A); 1889}; 1890SimileAjax.Graphics._Animation=function(B,E,D,C,A){this.f=B; 1891this.cont=(typeof A=="function")?A:function(){}; 1892this.from=E; 1893this.to=D; 1894this.current=E; 1895this.duration=C; 1896this.start=new Date().getTime(); 1897this.timePassed=0; 1898}; 1899SimileAjax.Graphics._Animation.prototype.run=function(){var A=this; 1900window.setTimeout(function(){A.step(); 1901},50); 1902}; 1903SimileAjax.Graphics._Animation.prototype.step=function(){this.timePassed+=50; 1904var A=this.timePassed/this.duration; 1905var B=-Math.cos(A*Math.PI)/2+0.5; 1906var D=B*(this.to-this.from)+this.from; 1907try{this.f(D,D-this.current); 1908}catch(C){}this.current=D; 1909if(this.timePassed<this.duration){this.run(); 1910}else{this.f(this.to,0); 1911this["cont"](); 1912}}; 1913SimileAjax.Graphics.createStructuredDataCopyButton=function(F,B,D,E){var G=document.createElement("div"); 1914G.style.position="relative"; 1915G.style.display="inline"; 1916G.style.width=B+"px"; 1917G.style.height=D+"px"; 1918G.style.overflow="hidden"; 1919G.style.margin="2px"; 1920if(SimileAjax.Graphics.pngIsTranslucent){G.style.background="url("+F+") no-repeat"; 1921}else{G.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+F+"', sizingMethod='image')"; 1922}var A; 1923if(SimileAjax.Platform.browser.isIE){A="filter:alpha(opacity=0)"; 1924}else{A="opacity: 0"; 1925}G.innerHTML="<textarea rows='1' autocomplete='off' value='none' style='"+A+"' />"; 1926var C=G.firstChild; 1927C.style.width=B+"px"; 1928C.style.height=D+"px"; 1929C.onmousedown=function(H){H=(H)?H:((event)?event:null); 1930if(H.button==2){C.value=E(); 1931C.select(); 1932}}; 1933return G; 1934}; 1935SimileAjax.Graphics.getWidthHeight=function(C){var A,B; 1936if(C.getBoundingClientRect==null){A=C.offsetWidth; 1937B=C.offsetHeight; 1938}else{var D=C.getBoundingClientRect(); 1939A=Math.ceil(D.right-D.left); 1940B=Math.ceil(D.bottom-D.top); 1941}return{width:A,height:B}; 1942}; 1943SimileAjax.Graphics.getFontRenderingContext=function(A,B){return new SimileAjax.Graphics._FontRenderingContext(A,B); 1944}; 1945SimileAjax.Graphics._FontRenderingContext=function(A,B){this._elmt=A; 1946this._elmt.style.visibility="hidden"; 1947if(typeof B=="string"){this._elmt.style.width=B; 1948}else{if(typeof B=="number"){this._elmt.style.width=B+"px"; 1949}}}; 1950SimileAjax.Graphics._FontRenderingContext.prototype.dispose=function(){this._elmt=null; 1951}; 1952SimileAjax.Graphics._FontRenderingContext.prototype.update=function(){this._elmt.innerHTML="A"; 1953this._lineHeight=this._elmt.offsetHeight; 1954}; 1955SimileAjax.Graphics._FontRenderingContext.prototype.computeSize=function(D,B){var C=this._elmt; 1956C.innerHTML=D; 1957C.className=B===undefined?"":B; 1958var A=SimileAjax.Graphics.getWidthHeight(C); 1959C.className=""; 1960return A; 1961}; 1962SimileAjax.Graphics._FontRenderingContext.prototype.getLineHeight=function(){return this._lineHeight; 1963}; 1964 1965 1966/* history.js */ 1967SimileAjax.History={maxHistoryLength:10,historyFile:"__history__.html",enabled:true,_initialized:false,_listeners:new SimileAjax.ListenerQueue(),_actions:[],_baseIndex:0,_currentIndex:0,_plainDocumentTitle:document.title}; 1968SimileAjax.History.formatHistoryEntryTitle=function(A){return SimileAjax.History._plainDocumentTitle+" {"+A+"}"; 1969}; 1970SimileAjax.History.initialize=function(){if(SimileAjax.History._initialized){return ; 1971}if(SimileAjax.History.enabled){var A=document.createElement("iframe"); 1972A.id="simile-ajax-history"; 1973A.style.position="absolute"; 1974A.style.width="10px"; 1975A.style.height="10px"; 1976A.style.top="0px"; 1977A.style.left="0px"; 1978A.style.visibility="hidden"; 1979A.src=SimileAjax.History.historyFile+"?0"; 1980document.body.appendChild(A); 1981SimileAjax.DOM.registerEvent(A,"load",SimileAjax.History._handleIFrameOnLoad); 1982SimileAjax.History._iframe=A; 1983}SimileAjax.History._initialized=true; 1984}; 1985SimileAjax.History.addListener=function(A){SimileAjax.History.initialize(); 1986SimileAjax.History._listeners.add(A); 1987}; 1988SimileAjax.History.removeListener=function(A){SimileAjax.History.initialize(); 1989SimileAjax.History._listeners.remove(A); 1990}; 1991SimileAjax.History.addAction=function(A){SimileAjax.History.initialize(); 1992SimileAjax.History._listeners.fire("onBeforePerform",[A]); 1993window.setTimeout(function(){try{A.perform(); 1994SimileAjax.History._listeners.fire("onAfterPerform",[A]); 1995if(SimileAjax.History.enabled){SimileAjax.History._actions=SimileAjax.History._actions.slice(0,SimileAjax.History._currentIndex-SimileAjax.History._baseIndex); 1996SimileAjax.History._actions.push(A); 1997SimileAjax.History._currentIndex++; 1998var C=SimileAjax.History._actions.length-SimileAjax.History.maxHistoryLength; 1999if(C>0){SimileAjax.History._actions=SimileAjax.History._actions.slice(C); 2000SimileAjax.History._baseIndex+=C; 2001}try{SimileAjax.History._iframe.contentWindow.location.search="?"+SimileAjax.History._currentIndex; 2002}catch(B){var D=SimileAjax.History.formatHistoryEntryTitle(A.label); 2003document.title=D; 2004}}}catch(B){SimileAjax.Debug.exception(B,"Error adding action {"+A.label+"} to history"); 2005}},0); 2006}; 2007SimileAjax.History.addLengthyAction=function(B,A,C){SimileAjax.History.addAction({perform:B,undo:A,label:C,uiLayer:SimileAjax.WindowManager.getBaseLayer(),lengthy:true}); 2008}; 2009SimileAjax.History._handleIFrameOnLoad=function(){try{var B=SimileAjax.History._iframe.contentWindow.location.search; 2010var F=(B.length==0)?0:Math.max(0,parseInt(B.substr(1))); 2011var D=function(){var G=F-SimileAjax.History._currentIndex; 2012SimileAjax.History._currentIndex+=G; 2013SimileAjax.History._baseIndex+=G; 2014SimileAjax.History._iframe.contentWindow.location.search="?"+F; 2015}; 2016if(F<SimileAjax.History._currentIndex){SimileAjax.History._listeners.fire("onBeforeUndoSeveral",[]); 2017window.setTimeout(function(){while(SimileAjax.History._currentIndex>F&&SimileAjax.History._currentIndex>SimileAjax.History._baseIndex){SimileAjax.History._currentIndex--; 2018var G=SimileAjax.History._actions[SimileAjax.History._currentIndex-SimileAjax.History._baseIndex]; 2019try{G.undo(); 2020}catch(H){SimileAjax.Debug.exception(H,"History: Failed to undo action {"+G.label+"}"); 2021}}SimileAjax.History._listeners.fire("onAfterUndoSeveral",[]); 2022D(); 2023},0); 2024}else{if(F>SimileAjax.History._currentIndex){SimileAjax.History._listeners.fire("onBeforeRedoSeveral",[]); 2025window.setTimeout(function(){while(SimileAjax.History._currentIndex<F&&SimileAjax.History._currentIndex-SimileAjax.History._baseIndex<SimileAjax.History._actions.length){var G=SimileAjax.History._actions[SimileAjax.History._currentIndex-SimileAjax.History._baseIndex]; 2026try{G.perform(); 2027}catch(H){SimileAjax.Debug.exception(H,"History: Failed to redo action {"+G.label+"}"); 2028}SimileAjax.History._currentIndex++; 2029}SimileAjax.History._listeners.fire("onAfterRedoSeveral",[]); 2030D(); 2031},0); 2032}else{var A=SimileAjax.History._currentIndex-SimileAjax.History._baseIndex-1; 2033var E=(A>=0&&A<SimileAjax.History._actions.length)?SimileAjax.History.formatHistoryEntryTitle(SimileAjax.History._actions[A].label):SimileAjax.History._plainDocumentTitle; 2034SimileAjax.History._iframe.contentWindow.document.title=E; 2035document.title=E; 2036}}}catch(C){}}; 2037SimileAjax.History.getNextUndoAction=function(){try{var A=SimileAjax.History._currentIndex-SimileAjax.History._baseIndex-1; 2038return SimileAjax.History._actions[A]; 2039}catch(B){return null; 2040}}; 2041SimileAjax.History.getNextRedoAction=function(){try{var A=SimileAjax.History._currentIndex-SimileAjax.History._baseIndex; 2042return SimileAjax.History._actions[A]; 2043}catch(B){return null; 2044}}; 2045 2046 2047/* html.js */ 2048SimileAjax.HTML=new Object(); 2049SimileAjax.HTML._e2uHash={}; 2050(function(){var A=SimileAjax.HTML._e2uHash; 2051A["nbsp"]="\u00A0[space]"; 2052A["iexcl"]="\u00A1"; 2053A["cent"]="\u00A2"; 2054A["pound"]="\u00A3"; 2055A["curren"]="\u00A4"; 2056A["yen"]="\u00A5"; 2057A["brvbar"]="\u00A6"; 2058A["sect"]="\u00A7"; 2059A["uml"]="\u00A8"; 2060A["copy"]="\u00A9"; 2061A["ordf"]="\u00AA"; 2062A["laquo"]="\u00AB"; 2063A["not"]="\u00AC"; 2064A["shy"]="\u00AD"; 2065A["reg"]="\u00AE"; 2066A["macr"]="\u00AF"; 2067A["deg"]="\u00B0"; 2068A["plusmn"]="\u00B1"; 2069A["sup2"]="\u00B2"; 2070A["sup3"]="\u00B3"; 2071A["acute"]="\u00B4"; 2072A["micro"]="\u00B5"; 2073A["para"]="\u00B6"; 2074A["middot"]="\u00B7"; 2075A["cedil"]="\u00B8"; 2076A["sup1"]="\u00B9"; 2077A["ordm"]="\u00BA"; 2078A["raquo"]="\u00BB"; 2079A["frac14"]="\u00BC"; 2080A["frac12"]="\u00BD"; 2081A["frac34"]="\u00BE"; 2082A["iquest"]="\u00BF"; 2083A["Agrave"]="\u00C0"; 2084A["Aacute"]="\u00C1"; 2085A["Acirc"]="\u00C2"; 2086A["Atilde"]="\u00C3"; 2087A["Auml"]="\u00C4"; 2088A["Aring"]="\u00C5"; 2089A["AElig"]="\u00C6"; 2090A["Ccedil"]="\u00C7"; 2091A["Egrave"]="\u00C8"; 2092A["Eacute"]="\u00C9"; 2093A["Ecirc"]="\u00CA"; 2094A["Euml"]="\u00CB"; 2095A["Igrave"]="\u00CC"; 2096A["Iacute"]="\u00CD"; 2097A["Icirc"]="\u00CE"; 2098A["Iuml"]="\u00CF"; 2099A["ETH"]="\u00D0"; 2100A["Ntilde"]="\u00D1"; 2101A["Ograve"]="\u00D2"; 2102A["Oacute"]="\u00D3"; 2103A["Ocirc"]="\u00D4"; 2104A["Otilde"]="\u00D5"; 2105A["Ouml"]="\u00D6"; 2106A["times"]="\u00D7"; 2107A["Oslash"]="\u00D8"; 2108A["Ugrave"]="\u00D9"; 2109A["Uacute"]="\u00DA"; 2110A["Ucirc"]="\u00DB"; 2111A["Uuml"]="\u00DC"; 2112A["Yacute"]="\u00DD"; 2113A["THORN"]="\u00DE"; 2114A["szlig"]="\u00DF"; 2115A["agrave"]="\u00E0"; 2116A["aacute"]="\u00E1"; 2117A["acirc"]="\u00E2"; 2118A["atilde"]="\u00E3"; 2119A["auml"]="\u00E4"; 2120A["aring"]="\u00E5"; 2121A["aelig"]="\u00E6"; 2122A["ccedil"]="\u00E7"; 2123A["egrave"]="\u00E8"; 2124A["eacute"]="\u00E9"; 2125A["ecirc"]="\u00EA"; 2126A["euml"]="\u00EB"; 2127A["igrave"]="\u00EC"; 2128A["iacute"]="\u00ED"; 2129A["icirc"]="\u00EE"; 2130A["iuml"]="\u00EF"; 2131A["eth"]="\u00F0"; 2132A["ntilde"]="\u00F1"; 2133A["ograve"]="\u00F2"; 2134A["oacute"]="\u00F3"; 2135A["ocirc"]="\u00F4"; 2136A["otilde"]="\u00F5"; 2137A["ouml"]="\u00F6"; 2138A["divide"]="\u00F7"; 2139A["oslash"]="\u00F8"; 2140A["ugrave"]="\u00F9"; 2141A["uacute"]="\u00FA"; 2142A["ucirc"]="\u00FB"; 2143A["uuml"]="\u00FC"; 2144A["yacute"]="\u00FD"; 2145A["thorn"]="\u00FE"; 2146A["yuml"]="\u00FF"; 2147A["quot"]="\u0022"; 2148A["amp"]="\u0026"; 2149A["lt"]="\u003C"; 2150A["gt"]="\u003E"; 2151A["OElig"]=""; 2152A["oelig"]="\u0153"; 2153A["Scaron"]="\u0160"; 2154A["scaron"]="\u0161"; 2155A["Yuml"]="\u0178"; 2156A["circ"]="\u02C6"; 2157A["tilde"]="\u02DC"; 2158A["ensp"]="\u2002"; 2159A["emsp"]="\u2003"; 2160A["thinsp"]="\u2009"; 2161A["zwnj"]="\u200C"; 2162A["zwj"]="\u200D"; 2163A["lrm"]="\u200E"; 2164A["rlm"]="\u200F"; 2165A["ndash"]="\u2013"; 2166A["mdash"]="\u2014"; 2167A["lsquo"]="\u2018"; 2168A["rsquo"]="\u2019"; 2169A["sbquo"]="\u201A"; 2170A["ldquo"]="\u201C"; 2171A["rdquo"]="\u201D"; 2172A["bdquo"]="\u201E"; 2173A["dagger"]="\u2020"; 2174A["Dagger"]="\u2021"; 2175A["permil"]="\u2030"; 2176A["lsaquo"]="\u2039"; 2177A["rsaquo"]="\u203A"; 2178A["euro"]="\u20AC"; 2179A["fnof"]="\u0192"; 2180A["Alpha"]="\u0391"; 2181A["Beta"]="\u0392"; 2182A["Gamma"]="\u0393"; 2183A["Delta"]="\u0394"; 2184A["Epsilon"]="\u0395"; 2185A["Zeta"]="\u0396"; 2186A["Eta"]="\u0397"; 2187A["Theta"]="\u0398"; 2188A["Iota"]="\u0399"; 2189A["Kappa"]="\u039A"; 2190A["Lambda"]="\u039B"; 2191A["Mu"]="\u039C"; 2192A["Nu"]="\u039D"; 2193A["Xi"]="\u039E"; 2194A["Omicron"]="\u039F"; 2195A["Pi"]="\u03A0"; 2196A["Rho"]="\u03A1"; 2197A["Sigma"]="\u03A3"; 2198A["Tau"]="\u03A4"; 2199A["Upsilon"]="\u03A5"; 2200A["Phi"]="\u03A6"; 2201A["Chi"]="\u03A7"; 2202A["Psi"]="\u03A8"; 2203A["Omega"]="\u03A9"; 2204A["alpha"]="\u03B1"; 2205A["beta"]="\u03B2"; 2206A["gamma"]="\u03B3"; 2207A["delta"]="\u03B4"; 2208A["epsilon"]="\u03B5"; 2209A["zeta"]="\u03B6"; 2210A["eta"]="\u03B7"; 2211A["theta"]="\u03B8"; 2212A["iota"]="\u03B9"; 2213A["kappa"]="\u03BA"; 2214A["lambda"]="\u03BB"; 2215A["mu"]="\u03BC"; 2216A["nu"]="\u03BD"; 2217A["xi"]="\u03BE"; 2218A["omicron"]="\u03BF"; 2219A["pi"]="\u03C0"; 2220A["rho"]="\u03C1"; 2221A["sigmaf"]="\u03C2"; 2222A["sigma"]="\u03C3"; 2223A["tau"]="\u03C4"; 2224A["upsilon"]="\u03C5"; 2225A["phi"]="\u03C6"; 2226A["chi"]="\u03C7"; 2227A["psi"]="\u03C8"; 2228A["omega"]="\u03C9"; 2229A["thetasym"]="\u03D1"; 2230A["upsih"]="\u03D2"; 2231A["piv"]="\u03D6"; 2232A["bull"]="\u2022"; 2233A["hellip"]="\u2026"; 2234A["prime"]="\u2032"; 2235A["Prime"]="\u2033"; 2236A["oline"]="\u203E"; 2237A["frasl"]="\u2044"; 2238A["weierp"]="\u2118"; 2239A["image"]="\u2111"; 2240A["real"]="\u211C"; 2241A["trade"]="\u2122"; 2242A["alefsym"]="\u2135"; 2243A["larr"]="\u2190"; 2244A["uarr"]="\u2191"; 2245A["rarr"]="\u2192"; 2246A["darr"]="\u2193"; 2247A["harr"]="\u2194"; 2248A["crarr"]="\u21B5"; 2249A["lArr"]="\u21D0"; 2250A["uArr"]="\u21D1"; 2251A["rArr"]="\u21D2"; 2252A["dArr"]="\u21D3"; 2253A["hArr"]="\u21D4"; 2254A["forall"]="\u2200"; 2255A["part"]="\u2202"; 2256A["exist"]="\u2203"; 2257A["empty"]="\u2205"; 2258A["nabla"]="\u2207"; 2259A["isin"]="\u2208"; 2260A["notin"]="\u2209"; 2261A["ni"]="\u220B"; 2262A["prod"]="\u220F"; 2263A["sum"]="\u2211"; 2264A["minus"]="\u2212"; 2265A["lowast"]="\u2217"; 2266A["radic"]="\u221A"; 2267A["prop"]="\u221D"; 2268A["infin"]="\u221E"; 2269A["ang"]="\u2220"; 2270A["and"]="\u2227"; 2271A["or"]="\u2228"; 2272A["cap"]="\u2229"; 2273A["cup"]="\u222A"; 2274A["int"]="\u222B"; 2275A["there4"]="\u2234"; 2276A["sim"]="\u223C"; 2277A["cong"]="\u2245"; 2278A["asymp"]="\u2248"; 2279A["ne"]="\u2260"; 2280A["equiv"]="\u2261"; 2281A["le"]="\u2264"; 2282A["ge"]="\u2265"; 2283A["sub"]="\u2282"; 2284A["sup"]="\u2283"; 2285A["nsub"]="\u2284"; 2286A["sube"]="\u2286"; 2287A["supe"]="\u2287"; 2288A["oplus"]="\u2295"; 2289A["otimes"]="\u2297"; 2290A["perp"]="\u22A5"; 2291A["sdot"]="\u22C5"; 2292A["lceil"]="\u2308"; 2293A["rceil"]="\u2309"; 2294A["lfloor"]="\u230A"; 2295A["rfloor"]="\u230B"; 2296A["lang"]="\u2329"; 2297A["rang"]="\u232A"; 2298A["loz"]="\u25CA"; 2299A["spades"]="\u2660"; 2300A["clubs"]="\u2663"; 2301A["hearts"]="\u2665"; 2302A["diams"]="\u2666"; 2303})(); 2304SimileAjax.HTML.deEntify=function(C){var D=SimileAjax.HTML._e2uHash; 2305var B=/&(\w+?);/; 2306while(B.test(C)){var A=C.match(B); 2307C=C.replace(B,D[A[1]]); 2308}return C; 2309}; 2310 2311 2312/* json.js */ 2313SimileAjax.JSON=new Object(); 2314(function(){var m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"}; 2315var s={array:function(x){var a=["["],b,f,i,l=x.length,v; 2316for(i=0; 2317i<l; 2318i+=1){v=x[i]; 2319f=s[typeof v]; 2320if(f){v=f(v); 2321if(typeof v=="string"){if(b){a[a.length]=","; 2322}a[a.length]=v; 2323b=true; 2324}}}a[a.length]="]"; 2325return a.join(""); 2326},"boolean":function(x){return String(x); 2327},"null":function(x){return"null"; 2328},number:function(x){return isFinite(x)?String(x):"null"; 2329},object:function(x){if(x){if(x instanceof Array){return s.array(x); 2330}var a=["{"],b,f,i,v; 2331for(i in x){v=x[i]; 2332f=s[typeof v]; 2333if(f){v=f(v); 2334if(typeof v=="string"){if(b){a[a.length]=","; 2335}a.push(s.string(i),":",v); 2336b=true; 2337}}}a[a.length]="}"; 2338return a.join(""); 2339}return"null"; 2340},string:function(x){if(/["\\\x00-\x1f]/.test(x)){x=x.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b]; 2341if(c){return c; 2342}c=b.charCodeAt(); 2343return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16); 2344}); 2345}return'"'+x+'"'; 2346}}; 2347SimileAjax.JSON.toJSONString=function(o){if(o instanceof Object){return s.object(o); 2348}else{if(o instanceof Array){return s.array(o); 2349}else{return o.toString(); 2350}}}; 2351SimileAjax.JSON.parseJSON=function(){try{return !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(this.replace(/"(\\.|[^"\\])*"/g,"")))&&eval("("+this+")"); 2352}catch(e){return false; 2353}}; 2354})(); 2355 2356 2357/* string.js */ 2358String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,""); 2359}; 2360String.prototype.startsWith=function(A){return this.length>=A.length&&this.substr(0,A.length)==A; 2361}; 2362String.prototype.endsWith=function(A){return this.length>=A.length&&this.substr(this.length-A.length)==A; 2363}; 2364String.substitute=function(C,A){var D=""; 2365var F=0; 2366while(F<C.length-1){var B=C.indexOf("%",F); 2367if(B<0||B==C.length-1){break; 2368}else{if(B>F&&C.charAt(B-1)=="\\"){D+=C.substring(F,B-1)+"%"; 2369F=B+1; 2370}else{var E=parseInt(C.charAt(B+1)); 2371if(isNaN(E)||E>=A.length){D+=C.substring(F,B+2); 2372}else{D+=C.substring(F,B)+A[E].toString(); 2373}F=B+2; 2374}}}if(F<C.length){D+=C.substring(F); 2375}return D; 2376}; 2377 2378 2379/* units.js */ 2380SimileAjax.NativeDateUnit=new Object(); 2381SimileAjax.NativeDateUnit.makeDefaultValue=function(){return new Date(); 2382}; 2383SimileAjax.NativeDateUnit.cloneValue=function(A){return new Date(A.getTime()); 2384}; 2385SimileAjax.NativeDateUnit.getParser=function(A){if(typeof A=="string"){A=A.toLowerCase(); 2386}return(A=="iso8601"||A=="iso 8601")?SimileAjax.DateTime.parseIso8601DateTime:SimileAjax.DateTime.parseGregorianDateTime; 2387}; 2388SimileAjax.NativeDateUnit.parseFromObject=function(A){return SimileAjax.DateTime.parseGregorianDateTime(A); 2389}; 2390SimileAjax.NativeDateUnit.toNumber=function(A){return A.getTime(); 2391}; 2392SimileAjax.NativeDateUnit.fromNumber=function(A){return new Date(A); 2393}; 2394SimileAjax.NativeDateUnit.compare=function(D,C){var B,A; 2395if(typeof D=="object"){B=D.getTime(); 2396}else{B=Number(D); 2397}if(typeof C=="object"){A=C.getTime(); 2398}else{A=Number(C); 2399}return B-A; 2400}; 2401SimileAjax.NativeDateUnit.earlier=function(B,A){return SimileAjax.NativeDateUnit.compare(B,A)<0?B:A; 2402}; 2403SimileAjax.NativeDateUnit.later=function(B,A){return SimileAjax.NativeDateUnit.compare(B,A)>0?B:A; 2404}; 2405SimileAjax.NativeDateUnit.change=function(A,B){return new Date(A.getTime()+B); 2406}; 2407 2408 2409/* window-manager.js */ 2410SimileAjax.WindowManager={_initialized:false,_listeners:[],_draggedElement:null,_draggedElementCallback:null,_dropTargetHighlightElement:null,_lastCoords:null,_ghostCoords:null,_draggingMode:"",_dragging:false,_layers:[]}; 2411SimileAjax.WindowManager.initialize=function(){if(SimileAjax.WindowManager._initialized){return ; 2412}SimileAjax.DOM.registerEvent(document.body,"mousedown",SimileAjax.WindowManager._onBodyMouseDown); 2413SimileAjax.DOM.registerEvent(document.body,"mousemove",SimileAjax.WindowManager._onBodyMouseMove); 2414SimileAjax.DOM.registerEvent(document.body,"mouseup",SimileAjax.WindowManager._onBodyMouseUp); 2415SimileAjax.DOM.registerEvent(document,"keydown",SimileAjax.WindowManager._onBodyKeyDown); 2416SimileAjax.DOM.registerEvent(document,"keyup",SimileAjax.WindowManager._onBodyKeyUp); 2417SimileAjax.WindowManager._layers.push({index:0}); 2418SimileAjax.WindowManager._historyListener={onBeforeUndoSeveral:function(){},onAfterUndoSeveral:function(){},onBeforeUndo:function(){},onAfterUndo:function(){},onBeforeRedoSeveral:function(){},onAfterRedoSeveral:function(){},onBeforeRedo:function(){},onAfterRedo:function(){}}; 2419SimileAjax.History.addListener(SimileAjax.WindowManager._historyListener); 2420SimileAjax.WindowManager._initialized=true; 2421}; 2422SimileAjax.WindowManager.getBaseLayer=function(){SimileAjax.WindowManager.initialize(); 2423return SimileAjax.WindowManager._layers[0]; 2424}; 2425SimileAjax.WindowManager.getHighestLayer=function(){SimileAjax.WindowManager.initialize(); 2426return SimileAjax.WindowManager._layers[SimileAjax.WindowManager._layers.length-1]; 2427}; 2428SimileAjax.WindowManager.registerEventWithObject=function(D,A,E,B,C){SimileAjax.WindowManager.registerEvent(D,A,function(G,F,H){return E[B].call(E,G,F,H); 2429},C); 2430}; 2431SimileAjax.WindowManager.registerEvent=function(D,B,E,C){if(C==null){C=SimileAjax.WindowManager.getHighestLayer(); 2432}var A=function(G,F,I){if(SimileAjax.WindowManager._canProcessEventAtLayer(C)){SimileAjax.WindowManager._popToLayer(C.index); 2433try{E(G,F,I); 2434}catch(H){SimileAjax.Debug.exception(H); 2435}}SimileAjax.DOM.cancelEvent(F); 2436return false; 2437}; 2438SimileAjax.DOM.registerEvent(D,B,A); 2439}; 2440SimileAjax.WindowManager.pushLayer=function(C,D,B){var A={onPop:C,index:SimileAjax.WindowManager._layers.length,ephemeral:(D),elmt:B}; 2441SimileAjax.WindowManager._layers.push(A); 2442return A; 2443}; 2444SimileAjax.WindowManager.popLayer=function(B){for(var A=1; 2445A<SimileAjax.WindowManager._layers.length; 2446A++){if(SimileAjax.WindowManager._layers[A]==B){SimileAjax.WindowManager._popToLayer(A-1); 2447break; 2448}}}; 2449SimileAjax.WindowManager.popAllLayers=function(){SimileAjax.WindowManager._popToLayer(0); 2450}; 2451SimileAjax.WindowManager.registerForDragging=function(B,C,A){SimileAjax.WindowManager.registerEvent(B,"mousedown",function(E,D,F){SimileAjax.WindowManager._handleMouseDown(E,D,C); 2452},A); 2453}; 2454SimileAjax.WindowManager._popToLayer=function(C){while(C+1<SimileAjax.WindowManager._layers.length){try{var A=SimileAjax.WindowManager._layers.pop(); 2455if(A.onPop!=null){A.onPop(); 2456}}catch(B){}}}; 2457SimileAjax.WindowManager._canProcessEventAtLayer=function(B){if(B.index==(SimileAjax.WindowManager._layers.length-1)){return true; 2458}for(var A=B.index+1; 2459A<SimileAjax.WindowManager._layers.length; 2460A++){if(!SimileAjax.WindowManager._layers[A].ephemeral){return false; 2461}}return true; 2462}; 2463SimileAjax.WindowManager.cancelPopups=function(A){var F=(A)?SimileAjax.DOM.getEventPageCoordinates(A):{x:-1,y:-1}; 2464var E=SimileAjax.WindowManager._layers.length-1; 2465while(E>0&&SimileAjax.WindowManager._layers[E].ephemeral){var D=SimileAjax.WindowManager._layers[E]; 2466if(D.elmt!=null){var C=D.elmt; 2467var B=SimileAjax.DOM.getPageCoordinates(C); 2468if(F.x>=B.left&&F.x<(B.left+C.offsetWidth)&&F.y>=B.top&&F.y<(B.top+C.offsetHeight)){break; 2469}}E--; 2470}SimileAjax.WindowManager._popToLayer(E); 2471}; 2472SimileAjax.WindowManager._onBodyMouseDown=function(B,A,C){if(!("eventPhase" in A)||A.eventPhase==A.BUBBLING_PHASE){SimileAjax.WindowManager.cancelPopups(A); 2473}}; 2474SimileAjax.WindowManager._handleMouseDown=function(B,A,C){SimileAjax.WindowManager._draggedElement=B; 2475SimileAjax.WindowManager._draggedElementCallback=C; 2476SimileAjax.WindowManager._lastCoords={x:A.clientX,y:A.clientY}; 2477SimileAjax.DOM.cancelEvent(A); 2478return false; 2479}; 2480SimileAjax.WindowManager._onBodyKeyDown=function(C,A,D){if(SimileAjax.WindowManager._dragging){if(A.keyCode==27){SimileAjax.WindowManager._cancelDragging(); 2481}else{if((A.keyCode==17||A.keyCode==16)&&SimileAjax.WindowManager._draggingMode!="copy"){SimileAjax.WindowManager._draggingMode="copy"; 2482var B=SimileAjax.Graphics.createTranslucentImage(SimileAjax.urlPrefix+"images/copy.png"); 2483B.style.position="absolute"; 2484B.style.left=(SimileAjax.WindowManager._ghostCoords.left-16)+"px"; 2485B.style.top=(SimileAjax.WindowManager._ghostCoords.top)+"px"; 2486document.body.appendChild(B); 2487SimileAjax.WindowManager._draggingModeIndicatorElmt=B; 2488}}}}; 2489SimileAjax.WindowManager._onBodyKeyUp=function(B,A,C){if(SimileAjax.WindowManager._dragging){if(A.keyCode==17||A.keyCode==16){SimileAjax.WindowManager._draggingMode=""; 2490if(SimileAjax.WindowManager._draggingModeIndicatorElmt!=null){document.body.removeChild(SimileAjax.WindowManager._draggingModeIndicatorElmt); 2491SimileAjax.WindowManager._draggingModeIndicatorElmt=null; 2492}}}}; 2493SimileAjax.WindowManager._onBodyMouseMove=function(C,M,B){if(SimileAjax.WindowManager._draggedElement!=null){var L=SimileAjax.WindowManager._draggedElementCallback; 2494var G=SimileAjax.WindowManager._lastCoords; 2495var J=M.clientX-G.x; 2496var I=M.clientY-G.y; 2497if(!SimileAjax.WindowManager._dragging){if(Math.abs(J)>5||Math.abs(I)>5){try{if("onDragStart" in L){L.onDragStart(); 2498}if("ghost" in L&&L.ghost){var P=SimileAjax.WindowManager._draggedElement; 2499SimileAjax.WindowManager._ghostCoords=SimileAjax.DOM.getPageCoordinates(P); 2500SimileAjax.WindowManager._ghostCoords.left+=J; 2501SimileAjax.WindowManager._ghostCoords.top+=I; 2502var K=P.cloneNode(true); 2503K.style.position="absolute"; 2504K.style.left=SimileAjax.WindowManager._ghostCoords.left+"px"; 2505K.style.top=SimileAjax.WindowManager._ghostCoords.top+"px"; 2506K.style.zIndex=1000; 2507SimileAjax.Graphics.setOpacity(K,50); 2508document.body.appendChild(K); 2509L._ghostElmt=K; 2510}SimileAjax.WindowManager._dragging=true; 2511SimileAjax.WindowManager._lastCoords={x:M.clientX,y:M.clientY}; 2512document.body.focus(); 2513}catch(H){SimileAjax.Debug.exception("WindowManager: Error handling mouse down",H); 2514SimileAjax.WindowManager._cancelDragging(); 2515}}}else{try{SimileAjax.WindowManager._lastCoords={x:M.clientX,y:M.clientY}; 2516if("onDragBy" in L){L.onDragBy(J,I); 2517}if("_ghostElmt" in L){var K=L._ghostElmt; 2518SimileAjax.WindowManager._ghostCoords.left+=J; 2519SimileAjax.WindowManager._ghostCoords.top+=I; 2520K.style.left=SimileAjax.WindowManager._ghostCoords.left+"px"; 2521K.style.top=SimileAjax.WindowManager._ghostCoords.top+"px"; 2522if(SimileAjax.WindowManager._draggingModeIndicatorElmt!=null){var O=SimileAjax.WindowManager._draggingModeIndicatorElmt; 2523O.style.left=(SimileAjax.WindowManager._ghostCoords.left-16)+"px"; 2524O.style.top=SimileAjax.WindowManager._ghostCoords.top+"px"; 2525}if("droppable" in L&&L.droppable){var N=SimileAjax.DOM.getEventPageCoordinates(M); 2526var B=SimileAjax.DOM.hittest(N.x,N.y,[SimileAjax.WindowManager._ghostElmt,SimileAjax.WindowManager._dropTargetHighlightElement]); 2527B=SimileAjax.WindowManager._findDropTarget(B); 2528if(B!=SimileAjax.WindowManager._potentialDropTarget){if(SimileAjax.WindowManager._dropTargetHighlightElement!=null){document.body.removeChild(SimileAjax.WindowManager._dropTargetHighlightElement); 2529SimileAjax.WindowManager._dropTargetHighlightElement=null; 2530SimileAjax.WindowManager._potentialDropTarget=null; 2531}var A=false; 2532if(B!=null){if((!("canDropOn" in L)||L.canDropOn(B))&&(!("canDrop" in B)||B.canDrop(SimileAjax.WindowManager._draggedElement))){A=true; 2533}}if(A){var E=4; 2534var D=SimileAjax.DOM.getPageCoordinates(B); 2535var F=document.createElement("div"); 2536F.style.border=E+"px solid yellow"; 2537F.style.backgroundColor="yellow"; 2538F.style.position="absolute"; 2539F.style.left=D.left+"px"; 2540F.style.top=D.top+"px"; 2541F.style.width=(B.offsetWidth-E*2)+"px"; 2542F.style.height=(B.offsetHeight-E*2)+"px"; 2543SimileAjax.Graphics.setOpacity(F,30); 2544document.body.appendChild(F); 2545SimileAjax.WindowManager._potentialDropTarget=B; 2546SimileAjax.WindowManager._dropTargetHighlightElement=F; 2547}}}}}catch(H){SimileAjax.Debug.exception("WindowManager: Error handling mouse move",H); 2548SimileAjax.WindowManager._cancelDragging(); 2549}}SimileAjax.DOM.cancelEvent(M); 2550return false; 2551}}; 2552SimileAjax.WindowManager._onBodyMouseUp=function(B,A,E){if(SimileAjax.WindowManager._draggedElement!=null){try{if(SimileAjax.WindowManager._dragging){var C=SimileAjax.WindowManager._draggedElementCallback; 2553if("onDragEnd" in C){C.onDragEnd(); 2554}if("droppable" in C&&C.droppable){var D=false; 2555var E=SimileAjax.WindowManager._potentialDropTarget; 2556if(E!=null){if((!("canDropOn" in C)||C.canDropOn(E))&&(!("canDrop" in E)||E.canDrop(SimileAjax.WindowManager._draggedElement))){if("onDropOn" in C){C.onDropOn(E); 2557}E.ondrop(SimileAjax.WindowManager._draggedElement,SimileAjax.WindowManager._draggingMode); 2558D=true; 2559}}if(!D){}}}}finally{SimileAjax.WindowManager._cancelDragging(); 2560}SimileAjax.DOM.cancelEvent(A); 2561return false; 2562}}; 2563SimileAjax.WindowManager._cancelDragging=function(){var A=SimileAjax.WindowManager._draggedElementCallback; 2564if("_ghostElmt" in A){var B=A._ghostElmt; 2565document.body.removeChild(B); 2566delete A._ghostElmt; 2567}if(SimileAjax.WindowManager._dropTargetHighlightElement!=null){document.body.removeChild(SimileAjax.WindowManager._dropTargetHighlightElement); 2568SimileAjax.WindowManager._dropTargetHighlightElement=null; 2569}if(SimileAjax.WindowManager._draggingModeIndicatorElmt!=null){document.body.removeChild(SimileAjax.WindowManager._draggingModeIndicatorElmt); 2570SimileAjax.WindowManager._draggingModeIndicatorElmt=null; 2571}SimileAjax.WindowManager._draggedElement=null; 2572SimileAjax.WindowManager._draggedElementCallback=null; 2573SimileAjax.WindowManager._potentialDropTarget=null; 2574SimileAjax.WindowManager._dropTargetHighlightElement=null; 2575SimileAjax.WindowManager._lastCoords=null; 2576SimileAjax.WindowManager._ghostCoords=null; 2577SimileAjax.WindowManager._draggingMode=""; 2578SimileAjax.WindowManager._dragging=false; 2579}; 2580SimileAjax.WindowManager._findDropTarget=function(A){while(A!=null){if("ondrop" in A&&(typeof A.ondrop)=="function"){break; 2581}A=A.parentNode; 2582}return A; 2583}; 2584 2585 2586/* xmlhttp.js */ 2587SimileAjax.XmlHttp=new Object(); 2588SimileAjax.XmlHttp._onReadyStateChange=function(A,D,B){switch(A.readyState){case 4:try{if(A.status==0||A.status==200){if(B){B(A); 2589}}else{if(D){D(A.statusText,A.status,A); 2590}}}catch(C){SimileAjax.Debug.exception("XmlHttp: Error handling onReadyStateChange",C); 2591}break; 2592}}; 2593SimileAjax.XmlHttp._createRequest=function(){if(SimileAjax.Platform.browser.isIE){var B=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"]; 2594for(var C=0; 2595C<B.length; 2596C++){try{var A=B[C]; 2597var D=function(){return new ActiveXObject(A); 2598}; 2599var F=D(); 2600SimileAjax.XmlHttp._createRequest=D; 2601return F; 2602}catch(E){}}}try{var D=function(){return new XMLHttpRequest(); 2603}; 2604var F=D(); 2605SimileAjax.XmlHttp._createRequest=D; 2606return F; 2607}catch(E){throw new Error("Failed to create an XMLHttpRequest object"); 2608}}; 2609SimileAjax.XmlHttp.get=function(B,D,C){var A=SimileAjax.XmlHttp._createRequest(); 2610A.open("GET",B,true); 2611A.onreadystatechange=function(){SimileAjax.XmlHttp._onReadyStateChange(A,D,C); 2612}; 2613A.send(null); 2614}; 2615SimileAjax.XmlHttp.post=function(C,A,E,D){var B=SimileAjax.XmlHttp._createRequest(); 2616B.open("POST",C,true); 2617B.onreadystatechange=function(){SimileAjax.XmlHttp._onReadyStateChange(B,E,D); 2618}; 2619B.send(A); 2620}; 2621SimileAjax.XmlHttp._forceXML=function(A){try{A.overrideMimeType("text/xml"); 2622}catch(B){A.setrequestheader("Content-Type","text/xml"); 2623}}; 2624