/* jquery-1.2.6.min.js */ /* Disco Modified - 2012-07-04 G# - Bundled jQuery Removed */ /* platform.js */ SimileAjax.version="pre 2.3.0"; SimileAjax.jQuery=jQuery.noConflict(true); if(typeof window["$"]=="undefined"){window.$=SimileAjax.jQuery; }SimileAjax.Platform.os={isMac:false,isWin:false,isWin32:false,isUnix:false}; SimileAjax.Platform.browser={isIE:false,isNetscape:false,isMozilla:false,isFirefox:false,isOpera:false,isSafari:false,majorVersion:0,minorVersion:0}; (function(){var C=navigator.appName.toLowerCase(); var A=navigator.userAgent.toLowerCase(); SimileAjax.Platform.os.isMac=(A.indexOf("mac")!=-1); SimileAjax.Platform.os.isWin=(A.indexOf("win")!=-1); SimileAjax.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); SimileAjax.Platform.os.isUnix=(A.indexOf("x11")!=-1); SimileAjax.Platform.browser.isIE=(C.indexOf("microsoft")!=-1); SimileAjax.Platform.browser.isNetscape=(C.indexOf("netscape")!=-1); SimileAjax.Platform.browser.isMozilla=(A.indexOf("mozilla")!=-1); SimileAjax.Platform.browser.isFirefox=(A.indexOf("firefox")!=-1); SimileAjax.Platform.browser.isOpera=(C.indexOf("opera")!=-1); SimileAjax.Platform.browser.isSafari=(C.indexOf("safari")!=-1); var E=function(G){var F=G.split("."); SimileAjax.Platform.browser.majorVersion=parseInt(F[0]); SimileAjax.Platform.browser.minorVersion=parseInt(F[1]); }; var B=function(H,G,I){var F=H.indexOf(G,I); return F>=0?F:H.length; }; if(SimileAjax.Platform.browser.isMozilla){var D=A.indexOf("mozilla/"); if(D>=0){E(A.substring(D+8,B(A," ",D))); }}if(SimileAjax.Platform.browser.isIE){var D=A.indexOf("msie "); if(D>=0){E(A.substring(D+5,B(A,";",D))); }}if(SimileAjax.Platform.browser.isNetscape){var D=A.indexOf("rv:"); if(D>=0){E(A.substring(D+3,B(A,")",D))); }}if(SimileAjax.Platform.browser.isFirefox){var D=A.indexOf("firefox/"); if(D>=0){E(A.substring(D+8,B(A," ",D))); }}if(!("localeCompare" in String.prototype)){String.prototype.localeCompare=function(F){if(thisF){return 1; }else{return 0; }}}; }})(); SimileAjax.Platform.getDefaultLocale=function(){return SimileAjax.Platform.clientLocale; }; /* ajax.js */ SimileAjax.ListenerQueue=function(A){this._listeners=[]; this._wildcardHandlerName=A; }; SimileAjax.ListenerQueue.prototype.add=function(A){this._listeners.push(A); }; SimileAjax.ListenerQueue.prototype.remove=function(C){var A=this._listeners; for(var B=0; B0)?this._a[0]:null; }; SimileAjax.SortedArray.prototype.getLast=function(){return(this._a.length>0)?this._a[this._a.length-1]:null; }; SimileAjax.EventIndex=function(B){var A=this; this._unit=(B!=null)?B:SimileAjax.NativeDateUnit; this._events=new SimileAjax.SortedArray(function(C,D){return A._unit.compare(C.getStart(),D.getStart()); }); this._idToEvent={}; this._indexed=true; }; SimileAjax.EventIndex.prototype.getUnit=function(){return this._unit; }; SimileAjax.EventIndex.prototype.getEvent=function(A){return this._idToEvent[A]; }; SimileAjax.EventIndex.prototype.add=function(A){this._events.add(A); this._idToEvent[A.getID()]=A; this._indexed=false; }; SimileAjax.EventIndex.prototype.removeAll=function(){this._events.removeAll(); this._idToEvent={}; this._indexed=false; }; SimileAjax.EventIndex.prototype.getCount=function(){return this._events.length(); }; SimileAjax.EventIndex.prototype.getIterator=function(A,B){if(!this._indexed){this._index(); }return new SimileAjax.EventIndex._Iterator(this._events,A,B,this._unit); }; SimileAjax.EventIndex.prototype.getReverseIterator=function(A,B){if(!this._indexed){this._index(); }return new SimileAjax.EventIndex._ReverseIterator(this._events,A,B,this._unit); }; SimileAjax.EventIndex.prototype.getAllIterator=function(){return new SimileAjax.EventIndex._AllIterator(this._events); }; SimileAjax.EventIndex.prototype.getEarliestDate=function(){var A=this._events.getFirst(); return(A==null)?null:A.getStart(); }; SimileAjax.EventIndex.prototype.getLatestDate=function(){var A=this._events.getLast(); if(A==null){return null; }if(!this._indexed){this._index(); }var C=A._earliestOverlapIndex; var B=this._events.elementAt(C).getEnd(); for(var D=C+1; D=0){this._currentIndex=this._events.elementAt(this._currentIndex-1)._earliestOverlapIndex; }this._currentIndex--; this._maxIndex=A.find(function(E){return B.compare(E.getStart(),D); }); this._hasNext=false; this._next=null; this._findNext(); }; SimileAjax.EventIndex._Iterator.prototype={hasNext:function(){return this._hasNext; },next:function(){if(this._hasNext){var A=this._next; this._findNext(); return A; }else{return null; }},_findNext:function(){var B=this._unit; while((++this._currentIndex)0){this._next=A; this._hasNext=true; return ; }}this._next=null; this._hasNext=false; }}; SimileAjax.EventIndex._ReverseIterator=function(A,C,D,B){this._events=A; this._startDate=C; this._endDate=D; this._unit=B; this._minIndex=A.find(function(E){return B.compare(E.getStart(),C); }); if(this._minIndex-1>=0){this._minIndex=this._events.elementAt(this._minIndex-1)._earliestOverlapIndex; }this._maxIndex=A.find(function(E){return B.compare(E.getStart(),D); }); this._currentIndex=this._maxIndex; this._hasNext=false; this._next=null; this._findNext(); }; SimileAjax.EventIndex._ReverseIterator.prototype={hasNext:function(){return this._hasNext; },next:function(){if(this._hasNext){var A=this._next; this._findNext(); return A; }else{return null; }},_findNext:function(){var B=this._unit; while((--this._currentIndex)>=this._minIndex){var A=this._events.elementAt(this._currentIndex); if(B.compare(A.getStart(),this._endDate)<0&&B.compare(A.getEnd(),this._startDate)>0){this._next=A; this._hasNext=true; return ; }}this._next=null; this._hasNext=false; }}; SimileAjax.EventIndex._AllIterator=function(A){this._events=A; this._index=0; }; SimileAjax.EventIndex._AllIterator.prototype={hasNext:function(){return this._index0&&B.length<8){var C=B.indexOf(" "); if(C>0){var A=parseInt(B.substr(0,C)); var G=B.substr(C+1); if(G.toLowerCase()=="bc"){A=1-A; }}else{var A=parseInt(B); }var E=new Date(0); E.setUTCFullYear(A); return E; }try{return new Date(Date.parse(B)); }catch(D){return null; }}; SimileAjax.DateTime.roundDownToInterval=function(E,B,I,K,A){var F=I*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR]; var J=new Date(E.getTime()+F); var C=function(L){L.setUTCMilliseconds(0); L.setUTCSeconds(0); L.setUTCMinutes(0); L.setUTCHours(0); }; var D=function(L){C(L); L.setUTCDate(1); L.setUTCMonth(0); }; switch(B){case SimileAjax.DateTime.MILLISECOND:var H=J.getUTCMilliseconds(); J.setUTCMilliseconds(H-(H%K)); break; case SimileAjax.DateTime.SECOND:J.setUTCMilliseconds(0); var H=J.getUTCSeconds(); J.setUTCSeconds(H-(H%K)); break; case SimileAjax.DateTime.MINUTE:J.setUTCMilliseconds(0); J.setUTCSeconds(0); var H=J.getUTCMinutes(); J.setTime(J.getTime()-(H%K)*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.MINUTE]); break; case SimileAjax.DateTime.HOUR:J.setUTCMilliseconds(0); J.setUTCSeconds(0); J.setUTCMinutes(0); var H=J.getUTCHours(); J.setUTCHours(H-(H%K)); break; case SimileAjax.DateTime.DAY:C(J); break; case SimileAjax.DateTime.WEEK:C(J); var G=(J.getUTCDay()+7-A)%7; J.setTime(J.getTime()-G*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.DAY]); break; case SimileAjax.DateTime.MONTH:C(J); J.setUTCDate(1); var H=J.getUTCMonth(); J.setUTCMonth(H-(H%K)); break; case SimileAjax.DateTime.YEAR:D(J); var H=J.getUTCFullYear(); J.setUTCFullYear(H-(H%K)); break; case SimileAjax.DateTime.DECADE:D(J); J.setUTCFullYear(Math.floor(J.getUTCFullYear()/10)*10); break; case SimileAjax.DateTime.CENTURY:D(J); J.setUTCFullYear(Math.floor(J.getUTCFullYear()/100)*100); break; case SimileAjax.DateTime.MILLENNIUM:D(J); J.setUTCFullYear(Math.floor(J.getUTCFullYear()/1000)*1000); break; }E.setTime(J.getTime()-F); }; SimileAjax.DateTime.roundUpToInterval=function(C,F,D,A,B){var E=C.getTime(); SimileAjax.DateTime.roundDownToInterval(C,F,D,A,B); if(C.getTime()-1){A=A.replace("px",""); }if(C.indexOf("px")>-1){C=C.replace("px",""); }return{w:A,h:C}; }; SimileAjax.DOM.getStyle=function(B,A){if(B.currentStyle){var C=B.currentStyle[A]; }else{if(window.getComputedStyle){var C=document.defaultView.getComputedStyle(B,null).getPropertyValue(A); }else{var C=""; }}return C; }; SimileAjax.DOM.getEventRelativeCoordinates=function(B,C){if(SimileAjax.Platform.browser.isIE){if(B.type=="mousewheel"){var A=SimileAjax.DOM.getPageCoordinates(C); return{x:B.clientX-A.left,y:B.clientY-A.top}; }else{return{x:B.offsetX,y:B.offsetY}; }}else{var A=SimileAjax.DOM.getPageCoordinates(C); if((B.type=="DOMMouseScroll")&&SimileAjax.Platform.browser.isFirefox&&(SimileAjax.Platform.browser.majorVersion==2)){return{x:B.screenX-A.left,y:B.screenY-A.top}; }else{return{x:B.pageX-A.left,y:B.pageY-A.top}; }}}; SimileAjax.DOM.getEventPageCoordinates=function(A){if(SimileAjax.Platform.browser.isIE){return{x:A.clientX+document.body.scrollLeft,y:A.clientY+document.body.scrollTop}; }else{return{x:A.pageX,y:A.pageY}; }}; SimileAjax.DOM.hittest=function(A,C,B){return SimileAjax.DOM._hittest(document.body,A,C,B); }; SimileAjax.DOM._hittest=function(C,L,K,A){var M=C.childNodes; outer:for(var G=0; G"; return B.firstChild; }; SimileAjax.DOM.createDOMFromTemplate=function(A){var B={}; B.elmt=SimileAjax.DOM._createDOMFromTemplate(A,B,null); return B; }; SimileAjax.DOM._createDOMFromTemplate=function(F,G,D){if(F==null){return null; }else{if(typeof F!="object"){var C=document.createTextNode(F); if(D!=null){D.appendChild(C); }return C; }else{var A=null; if("tag" in F){var J=F.tag; if(D!=null){if(J=="tr"){A=D.insertRow(D.rows.length); }else{if(J=="td"){A=D.insertCell(D.cells.length); }}}if(A==null){A=J=="input"?SimileAjax.DOM.createInputElement(F.type):document.createElement(J); if(D!=null){D.appendChild(A); }}}else{A=F.elmt; if(D!=null){D.appendChild(A); }}for(var B in F){var H=F[B]; if(B=="field"){G[H]=A; }else{if(B=="className"){A.className=H; }else{if(B=="id"){A.id=H; }else{if(B=="title"){A.title=H; }else{if(B=="type"&&A.tagName=="input"){}else{if(B=="style"){for(n in H){var I=H[n]; if(n=="float"){n=SimileAjax.Platform.browser.isIE?"styleFloat":"cssFloat"; }A.style[n]=I; }}else{if(B=="children"){for(var E=0; E0){A.removeAttribute("id"); if(E in B){var C=A.parentNode; C.insertBefore(B[E],A); C.removeChild(A); D[E]=B[E]; return ; }else{D[E]=A; }}if(A.hasChildNodes()){SimileAjax.DOM._processDOMChildrenConstructedFromString(D,A,B); }}; SimileAjax.DOM._processDOMChildrenConstructedFromString=function(E,B,D){var C=B.firstChild; while(C!=null){var A=C.nextSibling; if(C.nodeType==1){SimileAjax.DOM._processDOMConstructedFromString(E,C,D); }C=A; }}; /* graphics.js */ SimileAjax.Graphics=new Object(); SimileAjax.Graphics.pngIsTranslucent=(!SimileAjax.Platform.browser.isIE)||(SimileAjax.Platform.browser.majorVersion>6); if(!SimileAjax.Graphics.pngIsTranslucent){SimileAjax.includeCssFile(document,SimileAjax.urlPrefix+"styles/graphics-ie6.css"); }SimileAjax.Graphics._createTranslucentImage1=function(A,C){var B=document.createElement("img"); B.setAttribute("src",A); if(C!=null){B.style.verticalAlign=C; }return B; }; SimileAjax.Graphics._createTranslucentImage2=function(A,C){var B=document.createElement("img"); B.style.width="1px"; B.style.height="1px"; B.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+A+"', sizingMethod='image')"; B.style.verticalAlign=(C!=null)?C:"middle"; return B; }; SimileAjax.Graphics.createTranslucentImage=SimileAjax.Graphics.pngIsTranslucent?SimileAjax.Graphics._createTranslucentImage1:SimileAjax.Graphics._createTranslucentImage2; SimileAjax.Graphics._createTranslucentImageHTML1=function(A,B){return'"; }; SimileAjax.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+";":""); return"'; }; SimileAjax.Graphics.createTranslucentImageHTML=SimileAjax.Graphics.pngIsTranslucent?SimileAjax.Graphics._createTranslucentImageHTML1:SimileAjax.Graphics._createTranslucentImageHTML2; SimileAjax.Graphics.setOpacity=function(B,A){if(SimileAjax.Platform.browser.isIE){B.style.filter="progid:DXImageTransform.Microsoft.Alpha(Style=0,Opacity="+A+")"; }else{var C=(A/100).toString(); B.style.opacity=C; B.style.MozOpacity=C; }}; SimileAjax.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}; SimileAjax.Graphics.createBubbleForContentAndPoint=function(F,E,C,B,D,A){if(typeof B!="number"){B=300; }if(typeof A!="number"){A=0; }F.style.position="absolute"; F.style.left="-5000px"; F.style.top="0px"; F.style.width=B+"px"; document.body.appendChild(F); window.setTimeout(function(){var H=F.scrollWidth+10; var J=F.scrollHeight+10; var G=0; if(A>0&&J>A){J=A; G=H-25; }var I=SimileAjax.Graphics.createBubbleForPoint(E,C,H,J,D); document.body.removeChild(F); F.style.position="static"; F.style.left=""; F.style.top=""; if(G>0){var K=document.createElement("div"); F.style.width=""; K.style.width=G+"px"; K.appendChild(F); I.content.appendChild(K); }else{F.style.width=H+"px"; I.content.appendChild(F); }},200); }; SimileAjax.Graphics.createBubbleForPoint=function(B,A,J,N,F){J=parseInt(J,10); N=parseInt(N,10); var E=SimileAjax.Graphics.bubbleConfig; var M=SimileAjax.Graphics.pngIsTranslucent?"pngTranslucent":"pngNotTranslucent"; var L=J+2*E.borderGraphicSize; var O=N+2*E.borderGraphicSize; var K=function(S){return S+" "+S+"-"+M; }; var H=document.createElement("div"); H.className=K(E.containerCSSClass); H.style.width=J+"px"; H.style.height=N+"px"; var D=document.createElement("div"); D.className=K(E.innerContainerCSSClass); H.appendChild(D); var I=function(){if(!Q._closed){document.body.removeChild(Q._div); Q._doc=null; Q._div=null; Q._content=null; Q._closed=true; }}; var Q={_closed:false}; var R=SimileAjax.WindowManager.pushLayer(I,true,H); Q._div=H; Q.close=function(){SimileAjax.WindowManager.popLayer(R); }; var G=function(T){var S=document.createElement("div"); S.className=K(E.borderGraphicCSSClassPrefix+T); D.appendChild(S); }; G("top-left"); G("top-right"); G("bottom-left"); G("bottom-right"); G("left"); G("right"); G("top"); G("bottom"); var C=document.createElement("div"); C.className=K(E.contentContainerCSSClass); D.appendChild(C); Q.content=C; var P=document.createElement("div"); P.className=K(E.closeGraphicCSSClass); D.appendChild(P); SimileAjax.WindowManager.registerEventWithObject(P,"click",Q,"close"); (function(){var Y=SimileAjax.Graphics.getWindowDimensions(); var T=Y.w; var U=Y.h; var V=Math.ceil(E.arrowGraphicWidth/2); var Z=function(b){var a=document.createElement("div"); a.className=K(E.arrowGraphicCSSClassPrefix+"point-"+b); D.appendChild(a); return a; }; if(B-V-E.borderGraphicSize-E.extraPadding>0&&B+V+E.borderGraphicSize+E.extraPadding0))){var S=Z("down"); S.style.left=(B-V-X)+"px"; H.style.left=X+"px"; H.style.top=(A-E.arrowGraphicTargetOffset-N)+"px"; return ; }else{if((F&&F=="bottom")||(!F&&(A+E.arrowGraphicTargetOffset+N+E.borderGraphicSize+E.extraPadding0))){var S=Z("right"); S.style.top=(A-V-W)+"px"; H.style.top=W+"px"; H.style.left=(B-E.arrowGraphicTargetOffset-J)+"px"; }else{var S=Z("left"); S.style.top=(A-V-W)+"px"; H.style.top=W+"px"; H.style.left=(B+E.arrowGraphicTargetOffset)+"px"; }})(); document.body.appendChild(H); return Q; }; SimileAjax.Graphics.getWindowDimensions=function(){if(typeof window.innerHeight=="number"){return{w:window.innerWidth,h:window.innerHeight}; }else{if(document.documentElement&&document.documentElement.clientHeight){return{w:document.documentElement.clientWidth,h:document.documentElement.clientHeight}; }else{if(document.body&&document.body.clientHeight){return{w:document.body.clientWidth,h:document.body.clientHeight}; }}}}; SimileAjax.Graphics.createMessageBubble=function(H){var G=H.createElement("div"); if(SimileAjax.Graphics.pngIsTranslucent){var I=H.createElement("div"); I.style.height="33px"; I.style.background="url("+SimileAjax.urlPrefix+"images/message-top-left.png) top left no-repeat"; I.style.paddingLeft="44px"; G.appendChild(I); var D=H.createElement("div"); D.style.height="33px"; D.style.background="url("+SimileAjax.urlPrefix+"images/message-top-right.png) top right no-repeat"; I.appendChild(D); var F=H.createElement("div"); F.style.background="url("+SimileAjax.urlPrefix+"images/message-left.png) top left repeat-y"; F.style.paddingLeft="44px"; G.appendChild(F); var B=H.createElement("div"); B.style.background="url("+SimileAjax.urlPrefix+"images/message-right.png) top right repeat-y"; B.style.paddingRight="44px"; F.appendChild(B); var C=H.createElement("div"); B.appendChild(C); var E=H.createElement("div"); E.style.height="55px"; E.style.background="url("+SimileAjax.urlPrefix+"images/message-bottom-left.png) bottom left no-repeat"; E.style.paddingLeft="44px"; G.appendChild(E); var A=H.createElement("div"); A.style.height="55px"; A.style.background="url("+SimileAjax.urlPrefix+"images/message-bottom-right.png) bottom right no-repeat"; E.appendChild(A); }else{G.style.border="2px solid #7777AA"; G.style.padding="20px"; G.style.background="white"; SimileAjax.Graphics.setOpacity(G,90); var C=H.createElement("div"); G.appendChild(C); }return{containerDiv:G,contentDiv:C}; }; SimileAjax.Graphics.createAnimation=function(B,E,D,C,A){return new SimileAjax.Graphics._Animation(B,E,D,C,A); }; SimileAjax.Graphics._Animation=function(B,E,D,C,A){this.f=B; this.cont=(typeof A=="function")?A:function(){}; this.from=E; this.to=D; this.current=E; this.duration=C; this.start=new Date().getTime(); this.timePassed=0; }; SimileAjax.Graphics._Animation.prototype.run=function(){var A=this; window.setTimeout(function(){A.step(); },50); }; SimileAjax.Graphics._Animation.prototype.step=function(){this.timePassed+=50; var A=this.timePassed/this.duration; var B=-Math.cos(A*Math.PI)/2+0.5; var D=B*(this.to-this.from)+this.from; try{this.f(D,D-this.current); }catch(C){}this.current=D; if(this.timePassed"; var C=G.firstChild; C.style.width=B+"px"; C.style.height=D+"px"; C.onmousedown=function(H){H=(H)?H:((event)?event:null); if(H.button==2){C.value=E(); C.select(); }}; return G; }; SimileAjax.Graphics.getWidthHeight=function(C){var A,B; if(C.getBoundingClientRect==null){A=C.offsetWidth; B=C.offsetHeight; }else{var D=C.getBoundingClientRect(); A=Math.ceil(D.right-D.left); B=Math.ceil(D.bottom-D.top); }return{width:A,height:B}; }; SimileAjax.Graphics.getFontRenderingContext=function(A,B){return new SimileAjax.Graphics._FontRenderingContext(A,B); }; SimileAjax.Graphics._FontRenderingContext=function(A,B){this._elmt=A; this._elmt.style.visibility="hidden"; if(typeof B=="string"){this._elmt.style.width=B; }else{if(typeof B=="number"){this._elmt.style.width=B+"px"; }}}; SimileAjax.Graphics._FontRenderingContext.prototype.dispose=function(){this._elmt=null; }; SimileAjax.Graphics._FontRenderingContext.prototype.update=function(){this._elmt.innerHTML="A"; this._lineHeight=this._elmt.offsetHeight; }; SimileAjax.Graphics._FontRenderingContext.prototype.computeSize=function(D,B){var C=this._elmt; C.innerHTML=D; C.className=B===undefined?"":B; var A=SimileAjax.Graphics.getWidthHeight(C); C.className=""; return A; }; SimileAjax.Graphics._FontRenderingContext.prototype.getLineHeight=function(){return this._lineHeight; }; /* history.js */ SimileAjax.History={maxHistoryLength:10,historyFile:"__history__.html",enabled:true,_initialized:false,_listeners:new SimileAjax.ListenerQueue(),_actions:[],_baseIndex:0,_currentIndex:0,_plainDocumentTitle:document.title}; SimileAjax.History.formatHistoryEntryTitle=function(A){return SimileAjax.History._plainDocumentTitle+" {"+A+"}"; }; SimileAjax.History.initialize=function(){if(SimileAjax.History._initialized){return ; }if(SimileAjax.History.enabled){var A=document.createElement("iframe"); A.id="simile-ajax-history"; A.style.position="absolute"; A.style.width="10px"; A.style.height="10px"; A.style.top="0px"; A.style.left="0px"; A.style.visibility="hidden"; A.src=SimileAjax.History.historyFile+"?0"; document.body.appendChild(A); SimileAjax.DOM.registerEvent(A,"load",SimileAjax.History._handleIFrameOnLoad); SimileAjax.History._iframe=A; }SimileAjax.History._initialized=true; }; SimileAjax.History.addListener=function(A){SimileAjax.History.initialize(); SimileAjax.History._listeners.add(A); }; SimileAjax.History.removeListener=function(A){SimileAjax.History.initialize(); SimileAjax.History._listeners.remove(A); }; SimileAjax.History.addAction=function(A){SimileAjax.History.initialize(); SimileAjax.History._listeners.fire("onBeforePerform",[A]); window.setTimeout(function(){try{A.perform(); SimileAjax.History._listeners.fire("onAfterPerform",[A]); if(SimileAjax.History.enabled){SimileAjax.History._actions=SimileAjax.History._actions.slice(0,SimileAjax.History._currentIndex-SimileAjax.History._baseIndex); SimileAjax.History._actions.push(A); SimileAjax.History._currentIndex++; var C=SimileAjax.History._actions.length-SimileAjax.History.maxHistoryLength; if(C>0){SimileAjax.History._actions=SimileAjax.History._actions.slice(C); SimileAjax.History._baseIndex+=C; }try{SimileAjax.History._iframe.contentWindow.location.search="?"+SimileAjax.History._currentIndex; }catch(B){var D=SimileAjax.History.formatHistoryEntryTitle(A.label); document.title=D; }}}catch(B){SimileAjax.Debug.exception(B,"Error adding action {"+A.label+"} to history"); }},0); }; SimileAjax.History.addLengthyAction=function(B,A,C){SimileAjax.History.addAction({perform:B,undo:A,label:C,uiLayer:SimileAjax.WindowManager.getBaseLayer(),lengthy:true}); }; SimileAjax.History._handleIFrameOnLoad=function(){try{var B=SimileAjax.History._iframe.contentWindow.location.search; var F=(B.length==0)?0:Math.max(0,parseInt(B.substr(1))); var D=function(){var G=F-SimileAjax.History._currentIndex; SimileAjax.History._currentIndex+=G; SimileAjax.History._baseIndex+=G; SimileAjax.History._iframe.contentWindow.location.search="?"+F; }; if(FF&&SimileAjax.History._currentIndex>SimileAjax.History._baseIndex){SimileAjax.History._currentIndex--; var G=SimileAjax.History._actions[SimileAjax.History._currentIndex-SimileAjax.History._baseIndex]; try{G.undo(); }catch(H){SimileAjax.Debug.exception(H,"History: Failed to undo action {"+G.label+"}"); }}SimileAjax.History._listeners.fire("onAfterUndoSeveral",[]); D(); },0); }else{if(F>SimileAjax.History._currentIndex){SimileAjax.History._listeners.fire("onBeforeRedoSeveral",[]); window.setTimeout(function(){while(SimileAjax.History._currentIndex=0&&A=A.length&&this.substr(0,A.length)==A; }; String.prototype.endsWith=function(A){return this.length>=A.length&&this.substr(this.length-A.length)==A; }; String.substitute=function(C,A){var D=""; var F=0; while(FF&&C.charAt(B-1)=="\\"){D+=C.substring(F,B-1)+"%"; F=B+1; }else{var E=parseInt(C.charAt(B+1)); if(isNaN(E)||E>=A.length){D+=C.substring(F,B+2); }else{D+=C.substring(F,B)+A[E].toString(); }F=B+2; }}}if(F0?B:A; }; SimileAjax.NativeDateUnit.change=function(A,B){return new Date(A.getTime()+B); }; /* window-manager.js */ SimileAjax.WindowManager={_initialized:false,_listeners:[],_draggedElement:null,_draggedElementCallback:null,_dropTargetHighlightElement:null,_lastCoords:null,_ghostCoords:null,_draggingMode:"",_dragging:false,_layers:[]}; SimileAjax.WindowManager.initialize=function(){if(SimileAjax.WindowManager._initialized){return ; }SimileAjax.DOM.registerEvent(document.body,"mousedown",SimileAjax.WindowManager._onBodyMouseDown); SimileAjax.DOM.registerEvent(document.body,"mousemove",SimileAjax.WindowManager._onBodyMouseMove); SimileAjax.DOM.registerEvent(document.body,"mouseup",SimileAjax.WindowManager._onBodyMouseUp); SimileAjax.DOM.registerEvent(document,"keydown",SimileAjax.WindowManager._onBodyKeyDown); SimileAjax.DOM.registerEvent(document,"keyup",SimileAjax.WindowManager._onBodyKeyUp); SimileAjax.WindowManager._layers.push({index:0}); SimileAjax.WindowManager._historyListener={onBeforeUndoSeveral:function(){},onAfterUndoSeveral:function(){},onBeforeUndo:function(){},onAfterUndo:function(){},onBeforeRedoSeveral:function(){},onAfterRedoSeveral:function(){},onBeforeRedo:function(){},onAfterRedo:function(){}}; SimileAjax.History.addListener(SimileAjax.WindowManager._historyListener); SimileAjax.WindowManager._initialized=true; }; SimileAjax.WindowManager.getBaseLayer=function(){SimileAjax.WindowManager.initialize(); return SimileAjax.WindowManager._layers[0]; }; SimileAjax.WindowManager.getHighestLayer=function(){SimileAjax.WindowManager.initialize(); return SimileAjax.WindowManager._layers[SimileAjax.WindowManager._layers.length-1]; }; SimileAjax.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); },C); }; SimileAjax.WindowManager.registerEvent=function(D,B,E,C){if(C==null){C=SimileAjax.WindowManager.getHighestLayer(); }var A=function(G,F,I){if(SimileAjax.WindowManager._canProcessEventAtLayer(C)){SimileAjax.WindowManager._popToLayer(C.index); try{E(G,F,I); }catch(H){SimileAjax.Debug.exception(H); }}SimileAjax.DOM.cancelEvent(F); return false; }; SimileAjax.DOM.registerEvent(D,B,A); }; SimileAjax.WindowManager.pushLayer=function(C,D,B){var A={onPop:C,index:SimileAjax.WindowManager._layers.length,ephemeral:(D),elmt:B}; SimileAjax.WindowManager._layers.push(A); return A; }; SimileAjax.WindowManager.popLayer=function(B){for(var A=1; A0&&SimileAjax.WindowManager._layers[E].ephemeral){var D=SimileAjax.WindowManager._layers[E]; if(D.elmt!=null){var C=D.elmt; var B=SimileAjax.DOM.getPageCoordinates(C); if(F.x>=B.left&&F.x<(B.left+C.offsetWidth)&&F.y>=B.top&&F.y<(B.top+C.offsetHeight)){break; }}E--; }SimileAjax.WindowManager._popToLayer(E); }; SimileAjax.WindowManager._onBodyMouseDown=function(B,A,C){if(!("eventPhase" in A)||A.eventPhase==A.BUBBLING_PHASE){SimileAjax.WindowManager.cancelPopups(A); }}; SimileAjax.WindowManager._handleMouseDown=function(B,A,C){SimileAjax.WindowManager._draggedElement=B; SimileAjax.WindowManager._draggedElementCallback=C; SimileAjax.WindowManager._lastCoords={x:A.clientX,y:A.clientY}; SimileAjax.DOM.cancelEvent(A); return false; }; SimileAjax.WindowManager._onBodyKeyDown=function(C,A,D){if(SimileAjax.WindowManager._dragging){if(A.keyCode==27){SimileAjax.WindowManager._cancelDragging(); }else{if((A.keyCode==17||A.keyCode==16)&&SimileAjax.WindowManager._draggingMode!="copy"){SimileAjax.WindowManager._draggingMode="copy"; var B=SimileAjax.Graphics.createTranslucentImage(SimileAjax.urlPrefix+"images/copy.png"); B.style.position="absolute"; B.style.left=(SimileAjax.WindowManager._ghostCoords.left-16)+"px"; B.style.top=(SimileAjax.WindowManager._ghostCoords.top)+"px"; document.body.appendChild(B); SimileAjax.WindowManager._draggingModeIndicatorElmt=B; }}}}; SimileAjax.WindowManager._onBodyKeyUp=function(B,A,C){if(SimileAjax.WindowManager._dragging){if(A.keyCode==17||A.keyCode==16){SimileAjax.WindowManager._draggingMode=""; if(SimileAjax.WindowManager._draggingModeIndicatorElmt!=null){document.body.removeChild(SimileAjax.WindowManager._draggingModeIndicatorElmt); SimileAjax.WindowManager._draggingModeIndicatorElmt=null; }}}}; SimileAjax.WindowManager._onBodyMouseMove=function(C,M,B){if(SimileAjax.WindowManager._draggedElement!=null){var L=SimileAjax.WindowManager._draggedElementCallback; var G=SimileAjax.WindowManager._lastCoords; var J=M.clientX-G.x; var I=M.clientY-G.y; if(!SimileAjax.WindowManager._dragging){if(Math.abs(J)>5||Math.abs(I)>5){try{if("onDragStart" in L){L.onDragStart(); }if("ghost" in L&&L.ghost){var P=SimileAjax.WindowManager._draggedElement; SimileAjax.WindowManager._ghostCoords=SimileAjax.DOM.getPageCoordinates(P); SimileAjax.WindowManager._ghostCoords.left+=J; SimileAjax.WindowManager._ghostCoords.top+=I; var K=P.cloneNode(true); K.style.position="absolute"; K.style.left=SimileAjax.WindowManager._ghostCoords.left+"px"; K.style.top=SimileAjax.WindowManager._ghostCoords.top+"px"; K.style.zIndex=1000; SimileAjax.Graphics.setOpacity(K,50); document.body.appendChild(K); L._ghostElmt=K; }SimileAjax.WindowManager._dragging=true; SimileAjax.WindowManager._lastCoords={x:M.clientX,y:M.clientY}; document.body.focus(); }catch(H){SimileAjax.Debug.exception("WindowManager: Error handling mouse down",H); SimileAjax.WindowManager._cancelDragging(); }}}else{try{SimileAjax.WindowManager._lastCoords={x:M.clientX,y:M.clientY}; if("onDragBy" in L){L.onDragBy(J,I); }if("_ghostElmt" in L){var K=L._ghostElmt; SimileAjax.WindowManager._ghostCoords.left+=J; SimileAjax.WindowManager._ghostCoords.top+=I; K.style.left=SimileAjax.WindowManager._ghostCoords.left+"px"; K.style.top=SimileAjax.WindowManager._ghostCoords.top+"px"; if(SimileAjax.WindowManager._draggingModeIndicatorElmt!=null){var O=SimileAjax.WindowManager._draggingModeIndicatorElmt; O.style.left=(SimileAjax.WindowManager._ghostCoords.left-16)+"px"; O.style.top=SimileAjax.WindowManager._ghostCoords.top+"px"; }if("droppable" in L&&L.droppable){var N=SimileAjax.DOM.getEventPageCoordinates(M); var B=SimileAjax.DOM.hittest(N.x,N.y,[SimileAjax.WindowManager._ghostElmt,SimileAjax.WindowManager._dropTargetHighlightElement]); B=SimileAjax.WindowManager._findDropTarget(B); if(B!=SimileAjax.WindowManager._potentialDropTarget){if(SimileAjax.WindowManager._dropTargetHighlightElement!=null){document.body.removeChild(SimileAjax.WindowManager._dropTargetHighlightElement); SimileAjax.WindowManager._dropTargetHighlightElement=null; SimileAjax.WindowManager._potentialDropTarget=null; }var A=false; if(B!=null){if((!("canDropOn" in L)||L.canDropOn(B))&&(!("canDrop" in B)||B.canDrop(SimileAjax.WindowManager._draggedElement))){A=true; }}if(A){var E=4; var D=SimileAjax.DOM.getPageCoordinates(B); var F=document.createElement("div"); F.style.border=E+"px solid yellow"; F.style.backgroundColor="yellow"; F.style.position="absolute"; F.style.left=D.left+"px"; F.style.top=D.top+"px"; F.style.width=(B.offsetWidth-E*2)+"px"; F.style.height=(B.offsetHeight-E*2)+"px"; SimileAjax.Graphics.setOpacity(F,30); document.body.appendChild(F); SimileAjax.WindowManager._potentialDropTarget=B; SimileAjax.WindowManager._dropTargetHighlightElement=F; }}}}}catch(H){SimileAjax.Debug.exception("WindowManager: Error handling mouse move",H); SimileAjax.WindowManager._cancelDragging(); }}SimileAjax.DOM.cancelEvent(M); return false; }}; SimileAjax.WindowManager._onBodyMouseUp=function(B,A,E){if(SimileAjax.WindowManager._draggedElement!=null){try{if(SimileAjax.WindowManager._dragging){var C=SimileAjax.WindowManager._draggedElementCallback; if("onDragEnd" in C){C.onDragEnd(); }if("droppable" in C&&C.droppable){var D=false; var E=SimileAjax.WindowManager._potentialDropTarget; if(E!=null){if((!("canDropOn" in C)||C.canDropOn(E))&&(!("canDrop" in E)||E.canDrop(SimileAjax.WindowManager._draggedElement))){if("onDropOn" in C){C.onDropOn(E); }E.ondrop(SimileAjax.WindowManager._draggedElement,SimileAjax.WindowManager._draggingMode); D=true; }}if(!D){}}}}finally{SimileAjax.WindowManager._cancelDragging(); }SimileAjax.DOM.cancelEvent(A); return false; }}; SimileAjax.WindowManager._cancelDragging=function(){var A=SimileAjax.WindowManager._draggedElementCallback; if("_ghostElmt" in A){var B=A._ghostElmt; document.body.removeChild(B); delete A._ghostElmt; }if(SimileAjax.WindowManager._dropTargetHighlightElement!=null){document.body.removeChild(SimileAjax.WindowManager._dropTargetHighlightElement); SimileAjax.WindowManager._dropTargetHighlightElement=null; }if(SimileAjax.WindowManager._draggingModeIndicatorElmt!=null){document.body.removeChild(SimileAjax.WindowManager._draggingModeIndicatorElmt); SimileAjax.WindowManager._draggingModeIndicatorElmt=null; }SimileAjax.WindowManager._draggedElement=null; SimileAjax.WindowManager._draggedElementCallback=null; SimileAjax.WindowManager._potentialDropTarget=null; SimileAjax.WindowManager._dropTargetHighlightElement=null; SimileAjax.WindowManager._lastCoords=null; SimileAjax.WindowManager._ghostCoords=null; SimileAjax.WindowManager._draggingMode=""; SimileAjax.WindowManager._dragging=false; }; SimileAjax.WindowManager._findDropTarget=function(A){while(A!=null){if("ondrop" in A&&(typeof A.ondrop)=="function"){break; }A=A.parentNode; }return A; }; /* xmlhttp.js */ SimileAjax.XmlHttp=new Object(); SimileAjax.XmlHttp._onReadyStateChange=function(A,D,B){switch(A.readyState){case 4:try{if(A.status==0||A.status==200){if(B){B(A); }}else{if(D){D(A.statusText,A.status,A); }}}catch(C){SimileAjax.Debug.exception("XmlHttp: Error handling onReadyStateChange",C); }break; }}; SimileAjax.XmlHttp._createRequest=function(){if(SimileAjax.Platform.browser.isIE){var B=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"]; for(var C=0; C