window.SimileAjax={loaded:!0,loadingScriptsCount:0,error:null,params:{bundle:"true"},Platform:{}};SimileAjax.version="pre 2.3.0";SimileAjax.jQuery=jQuery.noConflict(!0);typeof $=="undefined"&&(window.$=SimileAjax.jQuery);SimileAjax.Platform.os={isMac:!1,isWin:!1,isWin32:!1,isUnix:!1};SimileAjax.Platform.browser={isIE:!1,isNetscape:!1,isMozilla:!1,isFirefox:!1,isOpera:!1,isSafari:!1,majorVersion:0,minorVersion:0},function(){var u=navigator.appName.toLowerCase(),n=navigator.userAgent.toLowerCase(),i,r,t;SimileAjax.Platform.os.isMac=n.indexOf("mac")!=-1;SimileAjax.Platform.os.isWin=n.indexOf("win")!=-1;SimileAjax.Platform.os.isWin32=SimileAjax.Platform.isWin&&(n.indexOf("95")!=-1||n.indexOf("98")!=-1||n.indexOf("nt")!=-1||n.indexOf("win32")!=-1||n.indexOf("32bit")!=-1);SimileAjax.Platform.os.isUnix=n.indexOf("x11")!=-1;SimileAjax.Platform.browser.isIE=u.indexOf("microsoft")!=-1;SimileAjax.Platform.browser.isNetscape=u.indexOf("netscape")!=-1;SimileAjax.Platform.browser.isMozilla=n.indexOf("mozilla")!=-1;SimileAjax.Platform.browser.isFirefox=n.indexOf("firefox")!=-1;SimileAjax.Platform.browser.isOpera=u.indexOf("opera")!=-1;SimileAjax.Platform.browser.isSafari=u.indexOf("safari")!=-1;i=function(n){var t=n.split(".");SimileAjax.Platform.browser.majorVersion=parseInt(t[0]);SimileAjax.Platform.browser.minorVersion=parseInt(t[1])};r=function(n,t,i){var r=n.indexOf(t,i);return r>=0?r:n.length};SimileAjax.Platform.browser.isMozilla&&(t=n.indexOf("mozilla/"),t>=0&&i(n.substring(t+8,r(n," ",t))));SimileAjax.Platform.browser.isIE&&(t=n.indexOf("msie "),t>=0&&i(n.substring(t+5,r(n,";",t))));SimileAjax.Platform.browser.isNetscape&&(t=n.indexOf("rv:"),t>=0&&i(n.substring(t+3,r(n,")",t))));SimileAjax.Platform.browser.isFirefox&&(t=n.indexOf("firefox/"),t>=0&&i(n.substring(t+8,r(n," ",t))));"localeCompare"in String.prototype||(String.prototype.localeCompare=function(n){return thisn?1:0})}();SimileAjax.Platform.getDefaultLocale=function(){return SimileAjax.Platform.clientLocale};SimileAjax.ListenerQueue=function(n){this._listeners=[];this._wildcardHandlerName=n};SimileAjax.ListenerQueue.prototype.add=function(n){this._listeners.push(n)};SimileAjax.ListenerQueue.prototype.remove=function(n){for(var i=this._listeners,t=0;t0?this._a[0]:null};SimileAjax.SortedArray.prototype.getLast=function(){return this._a.length>0?this._a[this._a.length-1]:null};SimileAjax.EventIndex=function(n){var t=this;this._unit=n!=null?n:SimileAjax.NativeDateUnit;this._events=new SimileAjax.SortedArray(function(n,i){return t._unit.compare(n.getStart(),i.getStart())});this._idToEvent={};this._indexed=!0};SimileAjax.EventIndex.prototype.getUnit=function(){return this._unit};SimileAjax.EventIndex.prototype.getEvent=function(n){return this._idToEvent[n]};SimileAjax.EventIndex.prototype.add=function(n){this._events.add(n);this._idToEvent[n.getID()]=n;this._indexed=!1};SimileAjax.EventIndex.prototype.removeAll=function(){this._events.removeAll();this._idToEvent={};this._indexed=!1};SimileAjax.EventIndex.prototype.getCount=function(){return this._events.length()};SimileAjax.EventIndex.prototype.getIterator=function(n,t){return this._indexed||this._index(),new SimileAjax.EventIndex._Iterator(this._events,n,t,this._unit)};SimileAjax.EventIndex.prototype.getReverseIterator=function(n,t){return this._indexed||this._index(),new SimileAjax.EventIndex._ReverseIterator(this._events,n,t,this._unit)};SimileAjax.EventIndex.prototype.getAllIterator=function(){return new SimileAjax.EventIndex._AllIterator(this._events)};SimileAjax.EventIndex.prototype.getEarliestDate=function(){var n=this._events.getFirst();return n==null?null:n.getStart()};SimileAjax.EventIndex.prototype.getLatestDate=function(){var r=this._events.getLast(),i,n,t;if(r==null)return null;for(this._indexed||this._index(),i=r._earliestOverlapIndex,n=this._events.elementAt(i).getEnd(),t=i+1;t=0&&(this._currentIndex=this._events.elementAt(this._currentIndex-1)._earliestOverlapIndex);this._currentIndex--;this._maxIndex=n.find(function(n){return r.compare(n.getStart(),i)});this._hasNext=!1;this._next=null;this._findNext()};SimileAjax.EventIndex._Iterator.prototype={hasNext:function(){return this._hasNext},next:function(){if(this._hasNext){var n=this._next;return this._findNext(),n}return null},_findNext:function(){for(var t=this._unit,n;++this._currentIndex0){this._next=n;this._hasNext=!0;return}this._next=null;this._hasNext=!1}};SimileAjax.EventIndex._ReverseIterator=function(n,t,i,r){this._events=n;this._startDate=t;this._endDate=i;this._unit=r;this._minIndex=n.find(function(n){return r.compare(n.getStart(),t)});this._minIndex-1>=0&&(this._minIndex=this._events.elementAt(this._minIndex-1)._earliestOverlapIndex);this._maxIndex=n.find(function(n){return r.compare(n.getStart(),i)});this._currentIndex=this._maxIndex;this._hasNext=!1;this._next=null;this._findNext()};SimileAjax.EventIndex._ReverseIterator.prototype={hasNext:function(){return this._hasNext},next:function(){if(this._hasNext){var n=this._next;return this._findNext(),n}return null},_findNext:function(){for(var t=this._unit,n;--this._currentIndex>=this._minIndex;)if(n=this._events.elementAt(this._currentIndex),t.compare(n.getStart(),this._endDate)<0&&t.compare(n.getEnd(),this._startDate)>0){this._next=n;this._hasNext=!0;return}this._next=null;this._hasNext=!1}};SimileAjax.EventIndex._AllIterator=function(n){this._events=n;this._index=0};SimileAjax.EventIndex._AllIterator.prototype={hasNext:function(){return this._index0&&t.length<8)return r=t.indexOf(" "),r>0?(i=parseInt(t.substr(0,r)),f=t.substr(r+1),f.toLowerCase()=="bc"&&(i=1-i)):i=parseInt(t),u=new Date(0),u.setUTCFullYear(i),u;try{return new Date(Date.parse(t))}catch(e){return null}};SimileAjax.DateTime.roundDownToInterval=function(n,t,i,r,u){var h=i*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.HOUR],f=new Date(n.getTime()+h),o=function(n){n.setUTCMilliseconds(0);n.setUTCSeconds(0);n.setUTCMinutes(0);n.setUTCHours(0)},s=function(n){o(n);n.setUTCDate(1);n.setUTCMonth(0)},c,e;switch(t){case SimileAjax.DateTime.MILLISECOND:e=f.getUTCMilliseconds();f.setUTCMilliseconds(e-e%r);break;case SimileAjax.DateTime.SECOND:f.setUTCMilliseconds(0);e=f.getUTCSeconds();f.setUTCSeconds(e-e%r);break;case SimileAjax.DateTime.MINUTE:f.setUTCMilliseconds(0);f.setUTCSeconds(0);e=f.getUTCMinutes();f.setTime(f.getTime()-e%r*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.MINUTE]);break;case SimileAjax.DateTime.HOUR:f.setUTCMilliseconds(0);f.setUTCSeconds(0);f.setUTCMinutes(0);e=f.getUTCHours();f.setUTCHours(e-e%r);break;case SimileAjax.DateTime.DAY:o(f);break;case SimileAjax.DateTime.WEEK:o(f);c=(f.getUTCDay()+7-u)%7;f.setTime(f.getTime()-c*SimileAjax.DateTime.gregorianUnitLengths[SimileAjax.DateTime.DAY]);break;case SimileAjax.DateTime.MONTH:o(f);f.setUTCDate(1);e=f.getUTCMonth();f.setUTCMonth(e-e%r);break;case SimileAjax.DateTime.YEAR:s(f);e=f.getUTCFullYear();f.setUTCFullYear(e-e%r);break;case SimileAjax.DateTime.DECADE:s(f);f.setUTCFullYear(Math.floor(f.getUTCFullYear()/10)*10);break;case SimileAjax.DateTime.CENTURY:s(f);f.setUTCFullYear(Math.floor(f.getUTCFullYear()/100)*100);break;case SimileAjax.DateTime.MILLENNIUM:s(f);f.setUTCFullYear(Math.floor(f.getUTCFullYear()/1e3)*1e3)}n.setTime(f.getTime()-h)};SimileAjax.DateTime.roundUpToInterval=function(n,t,i,r,u){var f=n.getTime();SimileAjax.DateTime.roundDownToInterval(n,t,i,r,u);n.getTime()-1&&(t=t.replace("px","")),i.indexOf("px")>-1&&(i=i.replace("px","")),{w:t,h:i}};SimileAjax.DOM.getStyle=function(n,t){var i;return n.currentStyle?n.currentStyle[t]:window.getComputedStyle?document.defaultView.getComputedStyle(n,null).getPropertyValue(t):""};SimileAjax.DOM.getEventRelativeCoordinates=function(n,t){var i;return SimileAjax.Platform.browser.isIE?n.type=="mousewheel"?(i=SimileAjax.DOM.getPageCoordinates(t),{x:n.clientX-i.left,y:n.clientY-i.top}):{x:n.offsetX,y:n.offsetY}:(i=SimileAjax.DOM.getPageCoordinates(t),n.type=="DOMMouseScroll"&&SimileAjax.Platform.browser.isFirefox&&SimileAjax.Platform.browser.majorVersion==2?{x:n.screenX-i.left,y:n.screenY-i.top}:{x:n.pageX-i.left,y:n.pageY-i.top})};SimileAjax.DOM.getEventPageCoordinates=function(n){return SimileAjax.Platform.browser.isIE?{x:n.clientX+document.body.scrollLeft,y:n.clientY+document.body.scrollTop}:{x:n.pageX,y:n.pageY}};SimileAjax.DOM.hittest=function(n,t,i){return SimileAjax.DOM._hittest(document.body,n,t,i)};SimileAjax.DOM._hittest=function(n,t,i,r){var a=n.childNodes,e,u,o,s,l;n:for(e=0;e",t.firstChild};SimileAjax.DOM.createDOMFromTemplate=function(n){var t={};return t.elmt=SimileAjax.DOM._createDOMFromTemplate(n,t,null),t};SimileAjax.DOM._createDOMFromTemplate=function(t,i,r){var h,u,o,f,e,c,s;if(t==null)return null;if(typeof t!="object")return h=document.createTextNode(t),r!=null&&r.appendChild(h),h;u=null;"tag"in t?(o=t.tag,r!=null&&(o=="tr"?u=r.insertRow(r.rows.length):o=="td"&&(u=r.insertCell(r.cells.length))),u==null&&(u=o=="input"?SimileAjax.DOM.createInputElement(t.type):document.createElement(o),r!=null&&r.appendChild(u))):(u=t.elmt,r!=null&&r.appendChild(u));for(f in t)if(e=t[f],f=="field")i[e]=u;else if(f=="className")u.className=e;else if(f=="id")u.id=e;else if(f=="title")u.title=e;else if(f!="type"||u.tagName!="input")if(f=="style")for(n in e)c=e[n],n=="float"&&(n=SimileAjax.Platform.browser.isIE?"styleFloat":"cssFloat"),u.style[n]=c;else if(f=="children")for(s=0;s0){if(t.removeAttribute("id"),r in i){u=t.parentNode;u.insertBefore(i[r],t);u.removeChild(t);n[r]=i[r];return}n[r]=t}t.hasChildNodes()&&SimileAjax.DOM._processDOMChildrenConstructedFromString(n,t,i)};SimileAjax.DOM._processDOMChildrenConstructedFromString=function(n,t,i){for(var r=t.firstChild,u;r!=null;)u=r.nextSibling,r.nodeType==1&&SimileAjax.DOM._processDOMConstructedFromString(n,r,i),r=u};SimileAjax.Graphics={};SimileAjax.Graphics.pngIsTranslucent=!SimileAjax.Platform.browser.isIE||SimileAjax.Platform.browser.majorVersion>6;SimileAjax.Graphics.pngIsTranslucent||SimileAjax.includeCssFile(document,SimileAjax.urlPrefix+"styles/graphics-ie6.css");SimileAjax.Graphics._createTranslucentImage1=function(n,t){var i=document.createElement("img");return i.setAttribute("src",n),t!=null&&(i.style.verticalAlign=t),i};SimileAjax.Graphics._createTranslucentImage2=function(n,t){var i=document.createElement("img");return i.style.width="1px",i.style.height="1px",i.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+n+"', sizingMethod='image')",i.style.verticalAlign=t!=null?t:"middle",i};SimileAjax.Graphics.createTranslucentImage=SimileAjax.Graphics.pngIsTranslucent?SimileAjax.Graphics._createTranslucentImage1:SimileAjax.Graphics._createTranslucentImage2;SimileAjax.Graphics._createTranslucentImageHTML1=function(n,t){return'"};SimileAjax.Graphics._createTranslucentImageHTML2=function(n,t){var i="width: 1px; height: 1px; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+n+"', sizingMethod='image');"+(t!=null?" vertical-align: "+t+";":"");return"'};SimileAjax.Graphics.createTranslucentImageHTML=SimileAjax.Graphics.pngIsTranslucent?SimileAjax.Graphics._createTranslucentImageHTML1:SimileAjax.Graphics._createTranslucentImageHTML2;SimileAjax.Graphics.setOpacity=function(n,t){if(SimileAjax.Platform.browser.isIE)n.style.filter="progid:DXImageTransform.Microsoft.Alpha(Style=0,Opacity="+t+")";else{var i=(t/100).toString();n.style.opacity=i;n.style.MozOpacity=i}};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(n,t,i,r,u,f){typeof r!="number"&&(r=300);typeof f!="number"&&(f=0);n.style.position="absolute";n.style.left="-5000px";n.style.top="0px";n.style.width=r+"px";document.body.appendChild(n);window.setTimeout(function(){var e=n.scrollWidth+10,o=n.scrollHeight+10,s=0,h,r;f>0&&o>f&&(o=f,s=e-25);h=SimileAjax.Graphics.createBubbleForPoint(t,i,e,o,u);document.body.removeChild(n);n.style.position="static";n.style.left="";n.style.top="";s>0?(r=document.createElement("div"),n.style.width="",r.style.width=s+"px",r.appendChild(n),h.content.appendChild(r)):(n.style.width=e+"px",h.content.appendChild(n))},200)};SimileAjax.Graphics.createBubbleForPoint=function(n,t,i,r,u){var h,s,l,a;i=parseInt(i,10);r=parseInt(r,10);var f=SimileAjax.Graphics.bubbleConfig,v=SimileAjax.Graphics.pngIsTranslucent?"pngTranslucent":"pngNotTranslucent",w=i+2*f.borderGraphicSize,b=r+2*f.borderGraphicSize,c=function(n){return n+" "+n+"-"+v},e=document.createElement("div");e.className=c(f.containerCSSClass);e.style.width=i+"px";e.style.height=r+"px";h=document.createElement("div");h.className=c(f.innerContainerCSSClass);e.appendChild(h);var y=function(){o._closed||(document.body.removeChild(o._div),o._doc=null,o._div=null,o._content=null,o._closed=!0)},o={_closed:!1},p=SimileAjax.WindowManager.pushLayer(y,!0,e);return o._div=e,o.close=function(){SimileAjax.WindowManager.popLayer(p)},s=function(n){var t=document.createElement("div");t.className=c(f.borderGraphicCSSClassPrefix+n);h.appendChild(t)},s("top-left"),s("top-right"),s("bottom-left"),s("bottom-right"),s("left"),s("right"),s("top"),s("bottom"),l=document.createElement("div"),l.className=c(f.contentContainerCSSClass),h.appendChild(l),o.content=l,a=document.createElement("div"),a.className=c(f.closeGraphicCSSClass),h.appendChild(a),SimileAjax.WindowManager.registerEventWithObject(a,"click",o,"close"),function(){var w=SimileAjax.Graphics.getWindowDimensions(),y=w.w,p=w.h,a=Math.ceil(f.arrowGraphicWidth/2),v=function(n){var t=document.createElement("div");return t.className=c(f.arrowGraphicCSSClassPrefix+"point-"+n),h.appendChild(t),t},o,l,s;if(n-a-f.borderGraphicSize-f.extraPadding>0&&n+a+f.borderGraphicSize+f.extraPadding0){s=v("down");s.style.left=n-a-o+"px";e.style.left=o+"px";e.style.top=t-f.arrowGraphicTargetOffset-r+"px";return}if(u&&u=="bottom"||!u&&t+f.arrowGraphicTargetOffset+r+f.borderGraphicSize+f.extraPadding0?(s=v("right"),s.style.top=t-a-l+"px",e.style.top=l+"px",e.style.left=n-f.arrowGraphicTargetOffset-i+"px"):(s=v("left"),s.style.top=t-a-l+"px",e.style.top=l+"px",e.style.left=n+f.arrowGraphicTargetOffset+"px")}(),document.body.appendChild(e),o};SimileAjax.Graphics.getWindowDimensions=function(){return typeof innerHeight=="number"?{w:window.innerWidth,h:window.innerHeight}:document.documentElement&&document.documentElement.clientHeight?{w:document.documentElement.clientWidth,h:document.documentElement.clientHeight}:document.body&&document.body.clientHeight?{w:document.body.clientWidth,h:document.body.clientHeight}:void 0};SimileAjax.Graphics.createMessageBubble=function(n){var t=n.createElement("div"),i,o,u,f,r,s,e;return SimileAjax.Graphics.pngIsTranslucent?(i=n.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",t.appendChild(i),o=n.createElement("div"),o.style.height="33px",o.style.background="url("+SimileAjax.urlPrefix+"images/message-top-right.png) top right no-repeat",i.appendChild(o),u=n.createElement("div"),u.style.background="url("+SimileAjax.urlPrefix+"images/message-left.png) top left repeat-y",u.style.paddingLeft="44px",t.appendChild(u),f=n.createElement("div"),f.style.background="url("+SimileAjax.urlPrefix+"images/message-right.png) top right repeat-y",f.style.paddingRight="44px",u.appendChild(f),e=n.createElement("div"),f.appendChild(e),r=n.createElement("div"),r.style.height="55px",r.style.background="url("+SimileAjax.urlPrefix+"images/message-bottom-left.png) bottom left no-repeat",r.style.paddingLeft="44px",t.appendChild(r),s=n.createElement("div"),s.style.height="55px",s.style.background="url("+SimileAjax.urlPrefix+"images/message-bottom-right.png) bottom right no-repeat",r.appendChild(s)):(t.style.border="2px solid #7777AA",t.style.padding="20px",t.style.background="white",SimileAjax.Graphics.setOpacity(t,90),e=n.createElement("div"),t.appendChild(e)),{containerDiv:t,contentDiv:e}};SimileAjax.Graphics.createAnimation=function(n,t,i,r,u){return new SimileAjax.Graphics._Animation(n,t,i,r,u)};SimileAjax.Graphics._Animation=function(n,t,i,r,u){this.f=n;this.cont=typeof u=="function"?u:function(){};this.from=t;this.to=i;this.current=t;this.duration=r;this.start=(new Date).getTime();this.timePassed=0};SimileAjax.Graphics._Animation.prototype.run=function(){var n=this;window.setTimeout(function(){n.step()},50)};SimileAjax.Graphics._Animation.prototype.step=function(){this.timePassed+=50;var t=this.timePassed/this.duration,i=-Math.cos(t*Math.PI)/2+.5,n=i*(this.to-this.from)+this.from;try{this.f(n,n-this.current)}catch(r){}this.current=n;this.timePassed",f=u.firstChild,f.style.width=t+"px",f.style.height=i+"px",f.onmousedown=function(n){n=n?n:event?event:null;n.button==2&&(f.value=r(),f.select())},u};SimileAjax.Graphics.getWidthHeight=function(n){var i,r,t;return n.getBoundingClientRect==null?(i=n.offsetWidth,r=n.offsetHeight):(t=n.getBoundingClientRect(),i=Math.ceil(t.right-t.left),r=Math.ceil(t.bottom-t.top)),{width:i,height:r}};SimileAjax.Graphics.getFontRenderingContext=function(n,t){return new SimileAjax.Graphics._FontRenderingContext(n,t)};SimileAjax.Graphics._FontRenderingContext=function(n,t){this._elmt=n;this._elmt.style.visibility="hidden";typeof t=="string"?this._elmt.style.width=t:typeof t=="number"&&(this._elmt.style.width=t+"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(n,t){var i=this._elmt,r;return i.innerHTML=n,i.className=t===undefined?"":t,r=SimileAjax.Graphics.getWidthHeight(i),i.className="",r};SimileAjax.Graphics._FontRenderingContext.prototype.getLineHeight=function(){return this._lineHeight};SimileAjax.History={maxHistoryLength:10,historyFile:"__history__.html",enabled:!0,_initialized:!1,_listeners:new SimileAjax.ListenerQueue,_actions:[],_baseIndex:0,_currentIndex:0,_plainDocumentTitle:document.title};SimileAjax.History.formatHistoryEntryTitle=function(n){return SimileAjax.History._plainDocumentTitle+" {"+n+"}"};SimileAjax.History.initialize=function(){if(!SimileAjax.History._initialized){if(SimileAjax.History.enabled){var n=document.createElement("iframe");n.id="simile-ajax-history";n.style.position="absolute";n.style.width="10px";n.style.height="10px";n.style.top="0px";n.style.left="0px";n.style.visibility="hidden";n.src=SimileAjax.History.historyFile+"?0";document.body.appendChild(n);SimileAjax.DOM.registerEvent(n,"load",SimileAjax.History._handleIFrameOnLoad);SimileAjax.History._iframe=n}SimileAjax.History._initialized=!0}};SimileAjax.History.addListener=function(n){SimileAjax.History.initialize();SimileAjax.History._listeners.add(n)};SimileAjax.History.removeListener=function(n){SimileAjax.History.initialize();SimileAjax.History._listeners.remove(n)};SimileAjax.History.addAction=function(n){SimileAjax.History.initialize();SimileAjax.History._listeners.fire("onBeforePerform",[n]);window.setTimeout(function(){var t,i;try{if(n.perform(),SimileAjax.History._listeners.fire("onAfterPerform",[n]),SimileAjax.History.enabled){SimileAjax.History._actions=SimileAjax.History._actions.slice(0,SimileAjax.History._currentIndex-SimileAjax.History._baseIndex);SimileAjax.History._actions.push(n);SimileAjax.History._currentIndex++;t=SimileAjax.History._actions.length-SimileAjax.History.maxHistoryLength;t>0&&(SimileAjax.History._actions=SimileAjax.History._actions.slice(t),SimileAjax.History._baseIndex+=t);try{SimileAjax.History._iframe.contentWindow.location.search="?"+SimileAjax.History._currentIndex}catch(r){i=SimileAjax.History.formatHistoryEntryTitle(n.label);document.title=i}}}catch(r){SimileAjax.Debug.exception(r,"Error adding action {"+n.label+"} to history")}},0)};SimileAjax.History.addLengthyAction=function(n,t,i){SimileAjax.History.addAction({perform:n,undo:t,label:i,uiLayer:SimileAjax.WindowManager.getBaseLayer(),lengthy:!0})};SimileAjax.History._handleIFrameOnLoad=function(){var t,i;try{var r=SimileAjax.History._iframe.contentWindow.location.search,n=r.length==0?0:Math.max(0,parseInt(r.substr(1))),u=function(){var t=n-SimileAjax.History._currentIndex;SimileAjax.History._currentIndex+=t;SimileAjax.History._baseIndex+=t;SimileAjax.History._iframe.contentWindow.location.search="?"+n};nn&&SimileAjax.History._currentIndex>SimileAjax.History._baseIndex){SimileAjax.History._currentIndex--;var t=SimileAjax.History._actions[SimileAjax.History._currentIndex-SimileAjax.History._baseIndex];try{t.undo()}catch(i){SimileAjax.Debug.exception(i,"History: Failed to undo action {"+t.label+"}")}}SimileAjax.History._listeners.fire("onAfterUndoSeveral",[]);u()},0)):n>SimileAjax.History._currentIndex?(SimileAjax.History._listeners.fire("onBeforeRedoSeveral",[]),window.setTimeout(function(){while(SimileAjax.History._currentIndex=0&&t";n.OElig="";n.oelig="œ";n.Scaron="Š";n.scaron="š";n.Yuml="Ÿ";n.circ="ˆ";n.tilde="˜";n.ensp=" ";n.emsp=" ";n.thinsp=" ";n.zwnj="‌";n.zwj="‍";n.lrm="‎";n.rlm="‏";n.ndash="–";n.mdash="—";n.lsquo="‘";n.rsquo="’";n.sbquo="‚";n.ldquo="“";n.rdquo="”";n.bdquo="„";n.dagger="†";n.Dagger="‡";n.permil="‰";n.lsaquo="‹";n.rsaquo="›";n.euro="€";n.fnof="ƒ";n.Alpha="Α";n.Beta="Β";n.Gamma="Γ";n.Delta="Δ";n.Epsilon="Ε";n.Zeta="Ζ";n.Eta="Η";n.Theta="Θ";n.Iota="Ι";n.Kappa="Κ";n.Lambda="Λ";n.Mu="Μ";n.Nu="Ν";n.Xi="Ξ";n.Omicron="Ο";n.Pi="Π";n.Rho="Ρ";n.Sigma="Σ";n.Tau="Τ";n.Upsilon="Υ";n.Phi="Φ";n.Chi="Χ";n.Psi="Ψ";n.Omega="Ω";n.alpha="α";n.beta="β";n.gamma="γ";n.delta="δ";n.epsilon="ε";n.zeta="ζ";n.eta="η";n.theta="θ";n.iota="ι";n.kappa="κ";n.lambda="λ";n.mu="μ";n.nu="ν";n.xi="ξ";n.omicron="ο";n.pi="π";n.rho="ρ";n.sigmaf="ς";n.sigma="σ";n.tau="τ";n.upsilon="υ";n.phi="φ";n.chi="χ";n.psi="ψ";n.omega="ω";n.thetasym="ϑ";n.upsih="ϒ";n.piv="ϖ";n.bull="•";n.hellip="…";n.prime="′";n.Prime="″";n.oline="‾";n.frasl="⁄";n.weierp="℘";n.image="ℑ";n.real="ℜ";n.trade="™";n.alefsym="ℵ";n.larr="←";n.uarr="↑";n.rarr="→";n.darr="↓";n.harr="↔";n.crarr="↵";n.lArr="⇐";n.uArr="⇑";n.rArr="⇒";n.dArr="⇓";n.hArr="⇔";n.forall="∀";n.part="∂";n.exist="∃";n.empty="∅";n.nabla="∇";n.isin="∈";n.notin="∉";n.ni="∋";n.prod="∏";n.sum="∑";n.minus="−";n.lowast="∗";n.radic="√";n.prop="∝";n.infin="∞";n.ang="∠";n.and="∧";n.or="∨";n.cap="∩";n.cup="∪";n.int="∫";n.there4="∴";n.sim="∼";n.cong="≅";n.asymp="≈";n.ne="≠";n.equiv="≡";n.le="≤";n.ge="≥";n.sub="⊂";n.sup="⊃";n.nsub="⊄";n.sube="⊆";n.supe="⊇";n.oplus="⊕";n.otimes="⊗";n.perp="⊥";n.sdot="⋅";n.lceil="⌈";n.rceil="⌉";n.lfloor="⌊";n.rfloor="⌋";n.lang="〈";n.rang="〉";n.loz="◊";n.spades="♠";n.clubs="♣";n.hearts="♥";n.diams="♦"}();SimileAjax.HTML.deEntify=function(n){for(var r=SimileAjax.HTML._e2uHash,t=/&(\w+?);/,i;t.test(n);)i=n.match(t),n=n.replace(t,r[i[1]]);return n};SimileAjax.JSON={},function(){var t={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},n={array:function(t){for(var i=["["],e,f,o=t.length,r,u=0;u=n.length&&this.substr(0,n.length)==n};String.prototype.endsWith=function(n){return this.length>=n.length&&this.substr(this.length-n.length)==n};String.substitute=function(n,t){for(var u="",r=0,i,f;rr&&n.charAt(i-1)=="\\"?(u+=n.substring(r,i-1)+"%",r=i+1):(f=parseInt(n.charAt(i+1)),u+=isNaN(f)||f>=t.length?n.substring(r,i+2):n.substring(r,i)+t[f].toString(),r=i+2);return r0?n:t};SimileAjax.NativeDateUnit.change=function(n,t){return new Date(n.getTime()+t)};SimileAjax.WindowManager={_initialized:!1,_listeners:[],_draggedElement:null,_draggedElementCallback:null,_dropTargetHighlightElement:null,_lastCoords:null,_ghostCoords:null,_draggingMode:"",_dragging:!1,_layers:[]};SimileAjax.WindowManager.initialize=function(){SimileAjax.WindowManager._initialized||(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=!0)};SimileAjax.WindowManager.getBaseLayer=function(){return SimileAjax.WindowManager.initialize(),SimileAjax.WindowManager._layers[0]};SimileAjax.WindowManager.getHighestLayer=function(){return SimileAjax.WindowManager.initialize(),SimileAjax.WindowManager._layers[SimileAjax.WindowManager._layers.length-1]};SimileAjax.WindowManager.registerEventWithObject=function(n,t,i,r,u){SimileAjax.WindowManager.registerEvent(n,t,function(n,t,u){return i[r].call(i,n,t,u)},u)};SimileAjax.WindowManager.registerEvent=function(n,t,i,r){r==null&&(r=SimileAjax.WindowManager.getHighestLayer());var u=function(n,t,u){if(SimileAjax.WindowManager._canProcessEventAtLayer(r)){SimileAjax.WindowManager._popToLayer(r.index);try{i(n,t,u)}catch(f){SimileAjax.Debug.exception(f)}}return SimileAjax.DOM.cancelEvent(t),!1};SimileAjax.DOM.registerEvent(n,t,u)};SimileAjax.WindowManager.pushLayer=function(n,t,i){var r={onPop:n,index:SimileAjax.WindowManager._layers.length,ephemeral:t,elmt:i};return SimileAjax.WindowManager._layers.push(r),r};SimileAjax.WindowManager.popLayer=function(n){for(var t=1;t0&&SimileAjax.WindowManager._layers[t].ephemeral;){if(f=SimileAjax.WindowManager._layers[t],f.elmt!=null&&(u=f.elmt,i=SimileAjax.DOM.getPageCoordinates(u),r.x>=i.left&&r.x=i.top&&r.y5||Math.abs(o)>5)try{"onDragStart"in r&&r.onDragStart();"ghost"in r&&r.ghost&&(s=SimileAjax.WindowManager._draggedElement,SimileAjax.WindowManager._ghostCoords=SimileAjax.DOM.getPageCoordinates(s),SimileAjax.WindowManager._ghostCoords.left+=e,SimileAjax.WindowManager._ghostCoords.top+=o,u=s.cloneNode(!0),u.style.position="absolute",u.style.left=SimileAjax.WindowManager._ghostCoords.left+"px",u.style.top=SimileAjax.WindowManager._ghostCoords.top+"px",u.style.zIndex=1e3,SimileAjax.Graphics.setOpacity(u,50),document.body.appendChild(u),r._ghostElmt=u);SimileAjax.WindowManager._dragging=!0;SimileAjax.WindowManager._lastCoords={x:t.clientX,y:t.clientY};document.body.focus()}catch(y){SimileAjax.Debug.exception("WindowManager: Error handling mouse down",y);SimileAjax.WindowManager._cancelDragging()}return SimileAjax.DOM.cancelEvent(t),!1}};SimileAjax.WindowManager._onBodyMouseUp=function(n,t,i){var r,u,i;if(SimileAjax.WindowManager._draggedElement!=null){try{if(SimileAjax.WindowManager._dragging&&(r=SimileAjax.WindowManager._draggedElementCallback,"onDragEnd"in r&&r.onDragEnd(),"droppable"in r&&r.droppable)){if(u=!1,i=SimileAjax.WindowManager._potentialDropTarget,i!=null&&(!("canDropOn"in r)||r.canDropOn(i))&&(!("canDrop"in i)||i.canDrop(SimileAjax.WindowManager._draggedElement))){if("onDropOn"in r)r.onDropOn(i);i.ondrop(SimileAjax.WindowManager._draggedElement,SimileAjax.WindowManager._draggingMode);u=!0}!u}}finally{SimileAjax.WindowManager._cancelDragging()}return SimileAjax.DOM.cancelEvent(t),!1}};SimileAjax.WindowManager._cancelDragging=function(){var n=SimileAjax.WindowManager._draggedElementCallback,t;"_ghostElmt"in n&&(t=n._ghostElmt,document.body.removeChild(t),delete n._ghostElmt);SimileAjax.WindowManager._dropTargetHighlightElement!=null&&(document.body.removeChild(SimileAjax.WindowManager._dropTargetHighlightElement),SimileAjax.WindowManager._dropTargetHighlightElement=null);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=!1};SimileAjax.WindowManager._findDropTarget=function(n){while(n!=null){if("ondrop"in n&&typeof n.ondrop=="function")break;n=n.parentNode}return n};SimileAjax.XmlHttp={};SimileAjax.XmlHttp._onReadyStateChange=function(n,t,i){switch(n.readyState){case 4:try{n.status==0||n.status==200?i&&i(n):t&&t(n.statusText,n.status,n)}catch(r){SimileAjax.Debug.exception("XmlHttp: Error handling onReadyStateChange",r)}}};SimileAjax.XmlHttp._createRequest=function(){var i,t,n,r;if(SimileAjax.Platform.browser.isIE)for(i=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],t=0;t-1?0:parseInt(t.width)),this._timeline=n,this._bandInfo=t,this._index=i,this._locale=("locale"in t)?t.locale:Timeline.getDefaultLocale(),this._timeZone=("timeZone"in t)?t.timeZone:0,this._labeller=("labeller"in t)?t.labeller:("createLabeller"in n.getUnit())?n.getUnit().createLabeller(this._locale,this._timeZone):new Timeline.GregorianDateLabeller(this._locale,this._timeZone),this._theme=t.theme,this._zoomIndex=("zoomIndex"in t)?t.zoomIndex:0,this._zoomSteps=("zoomSteps"in t)?t.zoomSteps:null,this._dragging=!1,this._changing=!1,this._originalScrollSpeed=5,this._scrollSpeed=this._originalScrollSpeed,this._onScrollListeners=[],r=this,this._syncWithBand=null,this._syncWithBandHandler=function(){r._onHighlightBandScroll()},this._selectorListener=function(){r._onHighlightBandScroll()},u=this._timeline.getDocument().createElement("div"),u.className="timeline-band-input",this._timeline.addDiv(u),this._keyboardInput=document.createElement("input"),this._keyboardInput.type="text",u.appendChild(this._keyboardInput),SimileAjax.DOM.registerEventWithObject(this._keyboardInput,"keydown",this,"_onKeyDown"),SimileAjax.DOM.registerEventWithObject(this._keyboardInput,"keyup",this,"_onKeyUp"),this._div=this._timeline.getDocument().createElement("div"),this._div.id="timeline-band-"+i,this._div.className="timeline-band timeline-band-"+i,this._timeline.addDiv(this._div),SimileAjax.DOM.registerEventWithObject(this._div,"mousedown",this,"_onMouseDown"),SimileAjax.DOM.registerEventWithObject(this._div,"mousemove",this,"_onMouseMove"),SimileAjax.DOM.registerEventWithObject(this._div,"mouseup",this,"_onMouseUp"),SimileAjax.DOM.registerEventWithObject(this._div,"mouseout",this,"_onMouseOut"),SimileAjax.DOM.registerEventWithObject(this._div,"dblclick",this,"_onDblClick"),e=this._theme!=null?this._theme.mouseWheel:"scroll",(e==="zoom"||e==="scroll"||this._zoomSteps)&&(SimileAjax.Platform.browser.isFirefox?SimileAjax.DOM.registerEventWithObject(this._div,"DOMMouseScroll",this,"_onMouseScroll"):SimileAjax.DOM.registerEventWithObject(this._div,"mousewheel",this,"_onMouseScroll")),this._innerDiv=this._timeline.getDocument().createElement("div"),this._innerDiv.className="timeline-band-inner",this._div.appendChild(this._innerDiv),this._ether=t.ether,t.ether.initialize(this,n),this._etherPainter=t.etherPainter,t.etherPainter.initialize(this,n),this._eventSource=t.eventSource,this._eventSource&&(this._eventListener={onAddMany:function(){r._onAddMany()},onClear:function(){r._onClear()}},this._eventSource.addListener(this._eventListener)),this._eventPainter=t.eventPainter,this._eventTracksNeeded=0,this._eventTrackIncrement=0,t.eventPainter.initialize(this,n),this._decorators=("decorators"in t)?t.decorators:[],f=0;fthis._eventTracksNeeded&&(this._eventTracksNeeded=n)};Timeline._Band.prototype.checkAutoWidth=function(){var t;if(this._timeline.autoWidth){var i=this._eventPainter.getType()=="overview",r=i?this._theme.event.overviewTrack.autoWidthMargin:this._theme.event.track.autoWidthMargin,n=Math.ceil((this._eventTracksNeeded+r)*this._eventTrackIncrement);n+=i?this._theme.event.overviewTrack.offset:this._theme.event.track.offset;t=this._bandInfo;n!=t.width&&(t.width=n)}};Timeline._Band.prototype.layout=function(){this.paint()};Timeline._Band.prototype.paint=function(){this._etherPainter.paint();this._paintDecorators();this._paintEvents()};Timeline._Band.prototype.softLayout=function(){this.softPaint()};Timeline._Band.prototype.softPaint=function(){this._etherPainter.softPaint();this._softPaintDecorators();this._softPaintEvents()};Timeline._Band.prototype.setBandShiftAndWidth=function(n,t){var i=this._keyboardInput.parentNode,r=n+Math.floor(t/2);this._timeline.isHorizontal()?(this._div.style.top=n+"px",this._div.style.height=t+"px",i.style.top=r+"px",i.style.left="-1em"):(this._div.style.left=n+"px",this._div.style.width=t+"px",i.style.left=r+"px",i.style.top="-1em")};Timeline._Band.prototype.getViewWidth=function(){return this._timeline.isHorizontal()?this._div.offsetHeight:this._div.offsetWidth};Timeline._Band.prototype.setViewLength=function(n){this._viewLength=n;this._recenterDiv();this._onChanging()};Timeline._Band.prototype.getViewLength=function(){return this._viewLength};Timeline._Band.prototype.getTotalViewLength=function(){return Timeline._Band.SCROLL_MULTIPLES*this._viewLength};Timeline._Band.prototype.getViewOffset=function(){return this._viewOffset};Timeline._Band.prototype.getMinDate=function(){return this._ether.pixelOffsetToDate(this._viewOffset)};Timeline._Band.prototype.getMaxDate=function(){return this._ether.pixelOffsetToDate(this._viewOffset+Timeline._Band.SCROLL_MULTIPLES*this._viewLength)};Timeline._Band.prototype.getMinVisibleDate=function(){return this._ether.pixelOffsetToDate(0)};Timeline._Band.prototype.getMinVisibleDateAfterDelta=function(n){return this._ether.pixelOffsetToDate(n)};Timeline._Band.prototype.getMaxVisibleDate=function(){return this._ether.pixelOffsetToDate(this._viewLength)};Timeline._Band.prototype.getMaxVisibleDateAfterDelta=function(n){return this._ether.pixelOffsetToDate(this._viewLength+n)};Timeline._Band.prototype.getCenterVisibleDate=function(){return this._ether.pixelOffsetToDate(this._viewLength/2)};Timeline._Band.prototype.setMinVisibleDate=function(n){this._changing||this._moveEther(Math.round(-this._ether.dateToPixelOffset(n)))};Timeline._Band.prototype.setMaxVisibleDate=function(n){this._changing||this._moveEther(Math.round(this._viewLength-this._ether.dateToPixelOffset(n)))};Timeline._Band.prototype.setCenterVisibleDate=function(n){this._changing||this._moveEther(Math.round(this._viewLength/2-this._ether.dateToPixelOffset(n)))};Timeline._Band.prototype.dateToPixelOffset=function(n){return this._ether.dateToPixelOffset(n)-this._viewOffset};Timeline._Band.prototype.pixelOffsetToDate=function(n){return this._ether.pixelOffsetToDate(n+this._viewOffset)};Timeline._Band.prototype.createLayerDiv=function(n,t){var r=this._timeline.getDocument().createElement("div"),i;return r.className="timeline-band-layer"+(typeof t=="string"?" "+t:""),r.style.zIndex=n,this._innerDiv.appendChild(r),i=this._timeline.getDocument().createElement("div"),i.className="timeline-band-layer-inner",i.style.cursor=SimileAjax.Platform.browser.isIE?"move":"-moz-grab",r.appendChild(i),i};Timeline._Band.prototype.removeLayerDiv=function(n){this._innerDiv.removeChild(n.parentNode)};Timeline._Band.prototype.scrollToCenter=function(n,t){var i=this._ether.dateToPixelOffset(n);i<-this._viewLength/2?this.setCenterVisibleDate(this.pixelOffsetToDate(i+this._viewLength)):i>3*this._viewLength/2&&this.setCenterVisibleDate(this.pixelOffsetToDate(i-this._viewLength));this._autoScroll(Math.round(this._viewLength/2-this._ether.dateToPixelOffset(n)),t)};Timeline._Band.prototype.showBubbleForEvent=function(n){var t=this.getEventSource().getEvent(n),i;t&&(i=this,this.scrollToCenter(t.getStart(),function(){i._eventPainter.showBubble(t)}))};Timeline._Band.prototype.zoom=function(n,t){if(this._zoomSteps){t+=this._viewOffset;var i=this._ether.pixelOffsetToDate(t),r=this._ether.zoom(n);this._etherPainter.zoom(r);this._moveEther(Math.round(-this._ether.dateToPixelOffset(i)));this._moveEther(t)}};Timeline._Band.prototype._onMouseDown=function(n,t){this.closeBubble();this._dragging=!0;this._dragX=t.clientX;this._dragY=t.clientY};Timeline._Band.prototype._onMouseMove=function(n,t){if(this._dragging){var i=t.clientX-this._dragX,r=t.clientY-this._dragY;this._dragX=t.clientX;this._dragY=t.clientY;this._moveEther(this._timeline.isHorizontal()?i:r);this._positionHighlight()}};Timeline._Band.prototype._onMouseUp=function(){this._dragging=!1;this._keyboardInput.focus()};Timeline._Band.prototype._onMouseOut=function(n,t){var i=SimileAjax.DOM.getEventRelativeCoordinates(t,n);i.x+=this._viewOffset;(i.x<0||i.x>n.offsetWidth||i.y<0||i.y>n.offsetHeight)&&(this._dragging=!1)};Timeline._Band.prototype._onMouseScroll=function(n,t){var r=new Date,i,u,f,e,o;r=r.getTime();(!this._lastScrollTime||r-this._lastScrollTime>50)&&(this._lastScrollTime=r,i=0,t.wheelDelta?i=t.wheelDelta/120:t.detail&&(i=-t.detail/3),u=this._theme.mouseWheel,this._zoomSteps||u==="zoom"?(f=SimileAjax.DOM.getEventRelativeCoordinates(t,n),i!=0&&(i>0&&(e=!0),i<0&&(e=!1),this._timeline.zoom(e,f.x,f.y,n))):u==="scroll"&&(o=50*(i<0?-1:1),this._moveEther(o)));t.stopPropagation&&t.stopPropagation();t.cancelBubble=!0;t.preventDefault&&t.preventDefault();t.returnValue=!1};Timeline._Band.prototype._onDblClick=function(n,t){var i=SimileAjax.DOM.getEventRelativeCoordinates(t,n),r=i.x-(this._viewLength/2-this._viewOffset);this._autoScroll(-r)};Timeline._Band.prototype._onKeyDown=function(n,t){if(!this._dragging){switch(t.keyCode){case 27:break;case 37:case 38:this._scrollSpeed=Math.min(50,Math.abs(this._scrollSpeed*1.05));this._moveEther(this._scrollSpeed);break;case 39:case 40:this._scrollSpeed=-Math.min(50,Math.abs(this._scrollSpeed*1.05));this._moveEther(this._scrollSpeed);break;default:return!0}return this.closeBubble(),SimileAjax.DOM.cancelEvent(t),!1}return!0};Timeline._Band.prototype._onKeyUp=function(n,t){if(!this._dragging){this._scrollSpeed=this._originalScrollSpeed;switch(t.keyCode){case 35:this.setCenterVisibleDate(this._eventSource.getLatestDate());break;case 36:this.setCenterVisibleDate(this._eventSource.getEarliestDate());break;case 33:this._autoScroll(this._timeline.getPixelLength());break;case 34:this._autoScroll(-this._timeline.getPixelLength());break;default:return!0}return this.closeBubble(),SimileAjax.DOM.cancelEvent(t),!1}return!0};Timeline._Band.prototype._autoScroll=function(n,t){var i=this,r=SimileAjax.Graphics.createAnimation(function(n,t){i._moveEther(t)},0,n,1e3,t);r.run()};Timeline._Band.prototype._moveEther=function(n){(this.closeBubble(),this._timeline.shiftOK(this._index,n))&&(this._viewOffset+=n,this._ether.shiftPixels(-n),this._timeline.isHorizontal()?this._div.style.left=this._viewOffset+"px":this._div.style.top=this._viewOffset+"px",this._viewOffset>-this._viewLength*.5||this._viewOffset<-this._viewLength*(Timeline._Band.SCROLL_MULTIPLES-1.5)?this._recenterDiv():this.softLayout(),this._onChanging())};Timeline._Band.prototype._onChanging=function(){this._changing=!0;this._fireOnScroll();this._setSyncWithBandDate();this._changing=!1};Timeline._Band.prototype.busy=function(){return this._changing};Timeline._Band.prototype._fireOnScroll=function(){for(var n=0;n<\/div>";this._eventLayer.appendChild(u);var c=this,lt=function(){var i,t,n,r;try{for(i=parseInt(this.getAttribute("index")),t=u.firstChild.childNodes,n=0;n0&&(o[s-1].end=Math.max(o[s-1].end,l)),g=r.height+f.iconBottomMargin+k;g>0;)o.push({start:a,end:l}),g-=f.trackHeight;var et=u.text,p=this._frc.computeSize(et),rt=p.height+f.labelBottomMargin+k,nt=l+p.width+f.labelRightMargin;for(s>0&&(o[s-1].end=Math.max(o[s-1].end,nt)),w=0;rt>0;w++)s+w=0){var f=this._timeline.getDocument(),u=i.event,e=u.highlightColors[Math.min(n,u.highlightColors.length-1)],r=f.createElement("div");r.style.position="absolute";r.style.overflow="hidden";r.style.left=t.left-2+"px";r.style.width=t.width+4+"px";r.style.top=t.top-2+"px";r.style.height=t.height+4+"px";this._highlightLayer.appendChild(r)}};Timeline.CompactEventPainter.prototype._onClickMultiplePreciseInstantEvent=function(n,t,i){var f=SimileAjax.DOM.getPageCoordinates(n),u,r;for(this._showBubble(f.left+Math.ceil(n.offsetWidth/2),f.top+Math.ceil(n.offsetHeight/2),i),u=[],r=0;r0){u=this._unit.later(u,this._startDate);f=this._unit.earlier(f,this._endDate);var r=this._band.dateToPixelOffset(u),e=this._band.dateToPixelOffset(f),h=this._timeline.getDocument(),c=function(){var n=h.createElement("table");return n.insertRow(0).insertCell(0),n},n=h.createElement("div");n.className="timeline-highlight-decorator";this._cssClass&&(n.className+=" "+this._cssClass);this._color!=null&&(n.style.backgroundColor=this._color);this._opacity<100&&SimileAjax.Graphics.setOpacity(n,this._opacity);this._layerDiv.appendChild(n);t=c();t.className="timeline-highlight-label timeline-highlight-label-start";o=t.rows[0].cells[0];o.innerHTML=this._startLabel;this._cssClass&&(o.className="label_"+this._cssClass);this._layerDiv.appendChild(t);i=c();i.className="timeline-highlight-label timeline-highlight-label-end";s=i.rows[0].cells[0];s.innerHTML=this._endLabel;this._cssClass&&(s.className="label_"+this._cssClass);this._layerDiv.appendChild(i);this._timeline.isHorizontal()?(n.style.left=r+"px",n.style.width=e-r+"px",t.style.right=this._band.getTotalViewLength()-r+"px",t.style.width=this._startLabel.length+"em",i.style.left=e+"px",i.style.width=this._endLabel.length+"em"):(n.style.top=r+"px",n.style.height=e-r+"px",t.style.bottom=r+"px",t.style.height="1.5px",i.style.top=e+"px",i.style.height="1.5px")}this._layerDiv.style.display="block"};Timeline.SpanHighlightDecorator.prototype.softPaint=function(){};Timeline.PointHighlightDecorator=function(n){this._unit=n.unit!=null?n.unit:SimileAjax.NativeDateUnit;this._date=typeof n.date=="string"?this._unit.parseFromObject(n.date):n.date;this._width=n.width!=null?n.width:10;this._color=n.color;this._cssClass=n.cssClass!=null?n.cssClass:"";this._opacity=n.opacity!=null?n.opacity:100};Timeline.PointHighlightDecorator.prototype.initialize=function(n,t){this._band=n;this._timeline=t;this._layerDiv=null};Timeline.PointHighlightDecorator.prototype.paint=function(){var t,i;if(this._layerDiv!=null&&this._band.removeLayerDiv(this._layerDiv),this._layerDiv=this._band.createLayerDiv(10),this._layerDiv.setAttribute("name","span-highlight-decorator"),this._layerDiv.style.display="none",t=this._band.getMinDate(),i=this._band.getMaxDate(),this._unit.compare(this._date,i)<0&&this._unit.compare(this._date,t)>0){var u=this._band.dateToPixelOffset(this._date),r=u-Math.round(this._width/2),f=this._timeline.getDocument(),n=f.createElement("div");n.className="timeline-highlight-point-decorator";n.className+=" "+this._cssClass;this._color!=null&&(n.style.backgroundColor=this._color);this._opacity<100&&SimileAjax.Graphics.setOpacity(n,this._opacity);this._layerDiv.appendChild(n);this._timeline.isHorizontal()?(n.style.left=r+"px",n.style.width=this._width):(n.style.top=r+"px",n.style.height=this._width)}this._layerDiv.style.display="block"};Timeline.PointHighlightDecorator.prototype.softPaint=function(){};Timeline.DetailedEventPainter=function(n){this._params=n;this._onSelectListeners=[];this._filterMatcher=null;this._highlightMatcher=null;this._frc=null;this._eventIdToElmt={}};Timeline.DetailedEventPainter.prototype.initialize=function(n,t){this._band=n;this._timeline=t;this._backLayer=null;this._eventLayer=null;this._lineLayer=null;this._highlightLayer=null;this._eventIdToElmt=null};Timeline.DetailedEventPainter.prototype.getType=function(){return"detailed"};Timeline.DetailedEventPainter.prototype.addOnSelectListener=function(n){this._onSelectListeners.push(n)};Timeline.DetailedEventPainter.prototype.removeOnSelectListener=function(n){for(var t=0;t=o+f.width?(s.solid=h,s.text=o):(s.solid=h,o=u+i.event.label.offsetFromLine,l=this._findFreeTrackForText(e,o+f.width,function(n){n.line=u-2}),this._getTrackData(l).text=h,this._paintEventLine(n,u,e,l,t,i));var w=Math.round(t.trackOffset+l*t.trackIncrement+t.trackHeight/2-f.height/2),b=this._paintEventLabel(n,a,o,w,f.width,f.height,i),k=this,y=function(t,i){return k._onClickInstantEvent(c.elmt,i,n)};SimileAjax.DOM.registerEvent(c.elmt,"mousedown",y);SimileAjax.DOM.registerEvent(b.elmt,"mousedown",y);this._createHighlightDiv(r,c,i);this._eventIdToElmt[n.getID()]=c.elmt};Timeline.DetailedEventPainter.prototype.paintImpreciseInstantEvent=function(n,t,i,r){var it=this._timeline.getDocument(),y=n.getText(),p=n.getStart(),w=n.getEnd(),u=Math.round(this._band.dateToPixelOffset(p)),l=Math.round(this._band.dateToPixelOffset(w)),b=Math.round(u+t.iconWidth/2),a=Math.round(u-t.iconWidth/2),e=this._frc.computeSize(y),f=this._findFreeTrackForSolid(l,u),k=this._paintEventTape(n,f,u,l,i.event.instant.impreciseColor,i.event.instant.impreciseOpacity,t,i),h=this._paintEventIcon(n,f,a,t,i),d=this._getTrackData(f),o,c,s;d.solid=a;o=b+i.event.label.offsetFromLine;c=o+e.width;cn&&(!t||r.line>t))return i}else return this._lowerTracks.push({solid:Number.POSITIVE_INFINITY,text:Number.POSITIVE_INFINITY,line:Number.POSITIVE_INFINITY}),i;if(in&&(!t||r.line>t))return-1-i}else return this._upperTracks.push({solid:Number.POSITIVE_INFINITY,text:Number.POSITIVE_INFINITY,line:Number.POSITIVE_INFINITY}),-1-i}};Timeline.DetailedEventPainter.prototype._findFreeTrackForText=function(n,t,i){var e,r,u,o,s,h,f;if(n<0?(e=!0,u=-n,r=this._findFreeUpperTrackForText(u,t),o=-1-r):n>0?(e=!1,u=n+1,r=this._findFreeLowerTrackForText(u,t),o=r):(s=this._findFreeUpperTrackForText(0,t),h=this._findFreeLowerTrackForText(1,t),h-1<=s?(e=!1,u=1,r=h,o=r):(e=!0,u=0,r=s,o=-1-r)),e)for(r==this._upperTracks.length&&this._upperTracks.push({solid:Number.POSITIVE_INFINITY,text:Number.POSITIVE_INFINITY,line:Number.POSITIVE_INFINITY}),f=u;f=t)break}return n};Timeline.DetailedEventPainter.prototype._findFreeUpperTrackForText=function(n,t){for(;n=t)break}return n};Timeline.DetailedEventPainter.prototype._getTrackData=function(n){return n<0?this._upperTracks[-n-1]:this._lowerTracks[n]};Timeline.DetailedEventPainter.prototype._paintEventLine=function(n,t,i,r,u,f){var s=Math.round(u.trackOffset+i*u.trackIncrement+u.trackHeight/2),h=Math.round(Math.abs(r-i)*u.trackIncrement),o="1px solid "+f.event.label.lineColor,e=this._timeline.getDocument().createElement("div");e.style.position="absolute";e.style.left=t+"px";e.style.width=f.event.label.offsetFromLine+"px";e.style.height=h+"px";i>r?(e.style.top=s-h+"px",e.style.borderTop=o):(e.style.top=s+"px",e.style.borderBottom=o);e.style.borderLeft=o;this._lineLayer.appendChild(e)};Timeline.DetailedEventPainter.prototype._paintEventIcon=function(n,t,i,r){var f=n.getIcon();f=f!=null?f:r.icon;var o=r.trackOffset+t*r.trackIncrement+r.trackHeight/2,e=Math.round(o-r.iconHeight/2),s=SimileAjax.Graphics.createTranslucentImage(f),u=this._timeline.getDocument().createElement("div");return u.style.position="absolute",u.style.left=i+"px",u.style.top=e+"px",u.appendChild(s),u.style.cursor="pointer",n._title!=null&&(u.title=n._title),this._eventLayer.appendChild(u),{left:i,top:e,width:r.iconWidth,height:r.iconHeight,elmt:u}};Timeline.DetailedEventPainter.prototype._paintEventLabel=function(n,t,i,r,u,f,e){var c=this._timeline.getDocument(),s=c.createElement("div"),o,h;return s.style.position="absolute",s.style.left=i+"px",s.style.width=u+"px",s.style.top=r+"px",s.style.height=f+"px",s.style.backgroundColor=e.event.label.backgroundColor,SimileAjax.Graphics.setOpacity(s,e.event.label.backgroundOpacity),this._eventLayer.appendChild(s),o=c.createElement("div"),o.style.position="absolute",o.style.left=i+"px",o.style.width=u+"px",o.style.top=r+"px",o.innerHTML=t,o.style.cursor="pointer",n._title!=null&&(o.title=n._title),h=n.getTextColor(),h==null&&(h=n.getColor()),h!=null&&(o.style.color=h),this._eventLayer.appendChild(o),{left:i,top:r,width:u,height:f,elmt:o}};Timeline.DetailedEventPainter.prototype._paintEventTape=function(n,t,i,r,u,f,e,o){var c=r-i,h=o.event.tape.height,a=e.trackOffset+t*e.trackIncrement+e.trackHeight/2,l=Math.round(a-h/2),s=this._timeline.getDocument().createElement("div");return s.style.position="absolute",s.style.left=i+"px",s.style.width=c+"px",s.style.top=l+"px",s.style.height=h+"px",s.style.backgroundColor=u,s.style.overflow="hidden",s.style.cursor="pointer",n._title!=null&&(s.title=n._title),SimileAjax.Graphics.setOpacity(s,f),this._eventLayer.appendChild(s),{left:i,top:l,width:c,height:h,elmt:s}};Timeline.DetailedEventPainter.prototype._createHighlightDiv=function(n,t,i){if(n>=0){var f=this._timeline.getDocument(),u=i.event,e=u.highlightColors[Math.min(n,u.highlightColors.length-1)],r=f.createElement("div");r.style.position="absolute";r.style.overflow="hidden";r.style.left=t.left-2+"px";r.style.width=t.width+4+"px";r.style.top=t.top-2+"px";r.style.height=t.height+4+"px";r.style.background=e;this._highlightLayer.appendChild(r)}};Timeline.DetailedEventPainter.prototype._onClickInstantEvent=function(n,t,i){var r=SimileAjax.DOM.getPageCoordinates(n);return this._showBubble(r.left+Math.ceil(n.offsetWidth/2),r.top+Math.ceil(n.offsetHeight/2),i),this._fireOnSelect(i.getID()),t.cancelBubble=!0,SimileAjax.DOM.cancelEvent(t),!1};Timeline.DetailedEventPainter.prototype._onClickDurationEvent=function(n,t,i){var r,u;if("pageX"in t)r=t.pageX,u=t.pageY;else var f=SimileAjax.DOM.getPageCoordinates(n),r=t.offsetX+f.left,u=t.offsetY+f.top;return this._showBubble(r,u,i),this._fireOnSelect(i.getID()),t.cancelBubble=!0,SimileAjax.DOM.cancelEvent(t),!1};Timeline.DetailedEventPainter.prototype.showBubble=function(n){var t=this._eventIdToElmt[n.getID()],i;t&&(i=SimileAjax.DOM.getPageCoordinates(t),this._showBubble(i.left+t.offsetWidth/2,i.top+t.offsetHeight/2,n))};Timeline.DetailedEventPainter.prototype._showBubble=function(n,t,i){var r=document.createElement("div"),u=this._params.theme.event.bubble;i.fillInfoBubble(r,this._params.theme,this._band.getLabeller());SimileAjax.WindowManager.cancelPopups();SimileAjax.Graphics.createBubbleForContentAndPoint(r,n,t,u.width,null,u.maxHeight)};Timeline.DetailedEventPainter.prototype._fireOnSelect=function(n){for(var t=0;ti;r++)t=this._zones[r],it.startTime&&(this._zones.splice(r,0,{startTime:t.startTime,endTime:i,unit:t.unit,multiple:t.multiple}),r++,t.startTime=i),f=0;){if(e.getTime()>this._zones[t].startTime)break;t--}for(r=i;r<=t;r++){var n=this._zones[r],u=new Date(Math.max(f.getTime(),n.startTime)),s=new Date(Math.min(e.getTime(),n.endTime));for(SimileAjax.DateTime.roundDownToInterval(u,n.unit,o,n.multiple,this._theme.firstDayOfWeek),SimileAjax.DateTime.roundUpToInterval(s,n.unit,o,n.multiple,this._theme.firstDayOfWeek);u.getTime()0&&(i=t-1),!n&&t0;u++)i=this._zones[u],this._unit.compare(r,i.endTime)<0&&(this._unit.compare(r,i.startTime)>0&&(this._zones.splice(u,0,{startTime:i.startTime,endTime:r,magnify:i.magnify}),u++,i.startTime=r),this._unit.compare(f,i.endTime)<0?(this._zones.splice(u,0,{startTime:r,endTime:f,magnify:o.magnify*i.magnify}),u++,i.startTime=f,r=f):(i.magnify*=o.magnify,r=i.endTime))}"startsOn"in this._params?this._start=this._unit.parseFromObject(this._params.startsOn):"endsOn"in this._params?(this._start=this._unit.parseFromObject(this._params.endsOn),this.shiftPixels(-this._timeline.getPixelLength())):"centersOn"in this._params?(this._start=this._unit.parseFromObject(this._params.centersOn),this.shiftPixels(-this._timeline.getPixelLength()/2)):(this._start=this._unit.makeDefaultValue(),this.shiftPixels(-this._timeline.getPixelLength()/2))};Timeline.HotZoneEther.prototype.setDate=function(n){this._start=this._unit.cloneValue(n)};Timeline.HotZoneEther.prototype.shiftPixels=function(n){this._start=this.pixelOffsetToDate(n)};Timeline.HotZoneEther.prototype.dateToPixelOffset=function(n){return this._dateDiffToPixelOffset(this._start,n)};Timeline.HotZoneEther.prototype.pixelOffsetToDate=function(n){return this._pixelOffsetToDate(n,this._start)};Timeline.HotZoneEther.prototype.zoom=function(n){var t=this._band._zoomIndex,i=t;return n&&t>0&&(i=t-1),!n&&t=0;){if(this._unit.compare(r,this._zones[i].startTime)>0)break;i--}while(this._unit.compare(r,e)>0)u=this._zones[i],f=this._unit.later(e,u.startTime),o+=this._unit.compare(f,r)/(s/u.magnify),r=f,i--}return o};Timeline.HotZoneEther.prototype._pixelOffsetToDate=function(n,t){var o=this._getScale(),i=t,r,u,f,e;if(n>0){for(r=0;r0)u=this._zones[r],f=o/u.magnify,u.endTime==Number.POSITIVE_INFINITY?(i=this._unit.change(i,n*f),n=0):(e=this._unit.compare(u.endTime,i)/f,e>n?(i=this._unit.change(i,n*f),n=0):(i=u.endTime,n-=e)),r++}else{for(r=this._zones.length-1;r>=0;){if(this._unit.compare(i,this._zones[r].startTime)>0)break;r--}for(n=-n;n>0;)u=this._zones[r],f=o/u.magnify,u.startTime==Number.NEGATIVE_INFINITY?(i=this._unit.change(i,-n*f),n=0):(e=this._unit.compare(i,u.startTime)/f,e>n?(i=this._unit.change(i,-n*f),n=0):(i=u.startTime,n-=e)),r--}return i};Timeline.HotZoneEther.prototype._getScale=function(){return this._interval/this._pixelsPerInterval};Timeline.EventUtils={};Timeline.EventUtils.getNewEventID=function(){return this._lastEventID==null&&(this._lastEventID=0),this._lastEventID+=1,"e"+this._lastEventID};Timeline.EventUtils.decodeEventElID=function(n){var t=n.split("-");if(t[1]!="tl")return alert("Internal Timeline problem 101, please consult support"),{band:null,evt:null};var r=Timeline.getTimelineFromID(t[2]),i=r.getBand(t[3]),u=i.getEventSource.getEvent(t[4]);return{band:i,evt:u}};Timeline.EventUtils.encodeEventElID=function(n,t,i,r){return i+"-tl-"+n.timelineID+"-"+t.getIndex()+"-"+r.getID()};Timeline.GregorianDateLabeller=function(n,t){this._locale=n;this._timeZone=t};Timeline.GregorianDateLabeller.monthNames=[];Timeline.GregorianDateLabeller.dayNames=[];Timeline.GregorianDateLabeller.labelIntervalFunctions=[];Timeline.GregorianDateLabeller.getMonthName=function(n,t){return Timeline.GregorianDateLabeller.monthNames[t][n]};Timeline.GregorianDateLabeller.prototype.labelInterval=function(n,t){var i=Timeline.GregorianDateLabeller.labelIntervalFunctions[this._locale];return i==null&&(i=Timeline.GregorianDateLabeller.prototype.defaultLabelInterval),i.call(this,n,t)};Timeline.GregorianDateLabeller.prototype.labelPrecise=function(n){return SimileAjax.DateTime.removeTimeZoneOffset(n,this._timeZone).toUTCString()};Timeline.GregorianDateLabeller.prototype.defaultLabelInterval=function(n,t){var i,f=!1,r,u;n=SimileAjax.DateTime.removeTimeZoneOffset(n,this._timeZone);switch(t){case SimileAjax.DateTime.MILLISECOND:i=n.getUTCMilliseconds();break;case SimileAjax.DateTime.SECOND:i=n.getUTCSeconds();break;case SimileAjax.DateTime.MINUTE:r=n.getUTCMinutes();r==0?(i=n.getUTCHours()+":00",f=!0):i=r;break;case SimileAjax.DateTime.HOUR:i=n.getUTCHours()+"hr";break;case SimileAjax.DateTime.DAY:i=Timeline.GregorianDateLabeller.getMonthName(n.getUTCMonth(),this._locale)+" "+n.getUTCDate();break;case SimileAjax.DateTime.WEEK:i=Timeline.GregorianDateLabeller.getMonthName(n.getUTCMonth(),this._locale)+" "+n.getUTCDate();break;case SimileAjax.DateTime.MONTH:if(r=n.getUTCMonth(),r!=0){i=Timeline.GregorianDateLabeller.getMonthName(r,this._locale);break}case SimileAjax.DateTime.YEAR:case SimileAjax.DateTime.DECADE:case SimileAjax.DateTime.CENTURY:case SimileAjax.DateTime.MILLENNIUM:u=n.getUTCFullYear();i=u>0?n.getUTCFullYear():1-u+"BC";f=t==SimileAjax.DateTime.MONTH||t==SimileAjax.DateTime.DECADE&&u%100==0||t==SimileAjax.DateTime.CENTURY&&u%1e3==0;break;default:i=n.toUTCString()}return{text:i,emphasized:f}};Timeline.OriginalEventPainter=function(n){this._params=n;this._onSelectListeners=[];this._eventPaintListeners=[];this._filterMatcher=null;this._highlightMatcher=null;this._frc=null;this._eventIdToElmt={}};Timeline.OriginalEventPainter.prototype.initialize=function(n,t){this._band=n;this._timeline=t;this._backLayer=null;this._eventLayer=null;this._lineLayer=null;this._highlightLayer=null;this._eventIdToElmt=null};Timeline.OriginalEventPainter.prototype.getType=function(){return"original"};Timeline.OriginalEventPainter.prototype.addOnSelectListener=function(n){this._onSelectListeners.push(n)};Timeline.OriginalEventPainter.prototype.removeOnSelectListener=function(n){for(var t=0;tt)break;return i};Timeline.OriginalEventPainter.prototype._paintEventIcon=function(n,t,i,r,u,f){var o=n.getIcon(),s,h,c,e;return o=o!=null?o:r.icon,f>0?s=r.trackOffset+t*r.trackIncrement+f+r.impreciseIconMargin:(h=r.trackOffset+t*r.trackIncrement+r.trackHeight/2,s=Math.round(h-r.iconHeight/2)),c=SimileAjax.Graphics.createTranslucentImage(o),e=this._timeline.getDocument().createElement("div"),e.className=this._getElClassName("timeline-event-icon",n,"icon"),e.id=this._encodeEventElID("icon",n),e.style.left=i+"px",e.style.top=s+"px",e.appendChild(c),n._title!=null&&(e.title=n._title),this._eventLayer.appendChild(e),{left:i,top:s,width:r.iconWidth,height:r.iconHeight,elmt:e}};Timeline.OriginalEventPainter.prototype._paintEventLabel=function(n,t,i,r,u,f,e,o,s){var l=this._timeline.getDocument(),h=l.createElement("div"),c;return h.className=o,h.id=this._encodeEventElID("label",n),h.style.left=i+"px",h.style.width=u+"px",h.style.top=r+"px",h.innerHTML=t,n._title!=null&&(h.title=n._title),c=n.getTextColor(),c==null&&(c=n.getColor()),c!=null&&(h.style.color=c),e.event.highlightLabelBackground&&s>=0&&(h.style.background=this._getHighlightColor(s,e)),this._eventLayer.appendChild(h),{left:i,top:r,width:u,height:f,elmt:h}};Timeline.OriginalEventPainter.prototype._paintEventTape=function(n,t,i,r,u,f,e,o,s){var a=r-i,v=o.event.tape.height,y=e.trackOffset+t*e.trackIncrement,h=this._timeline.getDocument().createElement("div"),l,c;return h.className=this._getElClassName("timeline-event-tape",n,"tape"),h.id=this._encodeEventElID("tape"+s,n),h.style.left=i+"px",h.style.width=a+"px",h.style.height=v+"px",h.style.top=y+"px",n._title!=null&&(h.title=n._title),u!=null&&(h.style.backgroundColor=u),l=n.getTapeImage(),c=n.getTapeRepeat(),c=c!=null?c:"repeat",l!=null&&(h.style.backgroundImage="url("+l+")",h.style.backgroundRepeat=c),SimileAjax.Graphics.setOpacity(h,f),this._eventLayer.appendChild(h),{left:i,top:y,width:a,height:v,elmt:h}};Timeline.OriginalEventPainter.prototype._getLabelDivClassName=function(n){return this._getElClassName("timeline-event-label",n,"label")};Timeline.OriginalEventPainter.prototype._getElClassName=function(n,t,i){var u=t.getClassName(),r=[];return u&&(i&&r.push(i+"-"+u+" "),r.push(u+" ")),r.push(n),r.join("")};Timeline.OriginalEventPainter.prototype._getHighlightColor=function(n,t){var i=t.event.highlightColors;return i[Math.min(n,i.length-1)]};Timeline.OriginalEventPainter.prototype._createHighlightDiv=function(n,t,i,r){var u=null,f,e;return n>=0&&(f=this._timeline.getDocument(),e=this._getHighlightColor(n,i),u=f.createElement("div"),u.className=this._getElClassName("timeline-event-highlight",r,"highlight"),u.id=this._encodeEventElID("highlight0",r),u.style.position="absolute",u.style.overflow="hidden",u.style.left=t.left-2+"px",u.style.width=t.width+4+"px",u.style.top=t.top-2+"px",u.style.height=t.height+4+"px",u.style.background=e,this._highlightLayer.appendChild(u)),u};Timeline.OriginalEventPainter.prototype._onClickInstantEvent=function(n,t,i){var r=SimileAjax.DOM.getPageCoordinates(n);return this._showBubble(r.left+Math.ceil(n.offsetWidth/2),r.top+Math.ceil(n.offsetHeight/2),i),this._fireOnSelect(i.getID()),t.cancelBubble=!0,SimileAjax.DOM.cancelEvent(t),!1};Timeline.OriginalEventPainter.prototype._onClickDurationEvent=function(n,t,i){var r,u;if("pageX"in t)r=t.pageX,u=t.pageY;else var f=SimileAjax.DOM.getPageCoordinates(n),r=t.offsetX+f.left,u=t.offsetY+f.top;return this._showBubble(r,u,i),this._fireOnSelect(i.getID()),t.cancelBubble=!0,SimileAjax.DOM.cancelEvent(t),!1};Timeline.OriginalEventPainter.prototype.showBubble=function(n){var t=this._eventIdToElmt[n.getID()],i;t&&(i=SimileAjax.DOM.getPageCoordinates(t),this._showBubble(i.left+t.offsetWidth/2,i.top+t.offsetHeight/2,n))};Timeline.OriginalEventPainter.prototype._showBubble=function(n,t,i){var r=document.createElement("div"),u=this._params.theme.event.bubble;i.fillInfoBubble(r,this._params.theme,this._band.getLabeller());SimileAjax.WindowManager.cancelPopups();SimileAjax.Graphics.createBubbleForContentAndPoint(r,n,t,u.width,null,u.maxHeight)};Timeline.OriginalEventPainter.prototype._fireOnSelect=function(n){for(var t=0;t=0){var f=this._timeline.getDocument(),u=i.event,e=u.highlightColors[Math.min(n,u.highlightColors.length-1)],r=f.createElement("div");r.style.position="absolute";r.style.overflow="hidden";r.style.left=t.left-1+"px";r.style.width=t.width+2+"px";r.style.top=t.top-1+"px";r.style.height=t.height+2+"px";r.style.background=e;this._highlightLayer.appendChild(r)}};Timeline.OverviewEventPainter.prototype.showBubble=function(){};Timeline.DefaultEventSource=function(n){this._events=n instanceof Object?n:new SimileAjax.EventIndex;this._listeners=[]};Timeline.DefaultEventSource.prototype.addListener=function(n){this._listeners.push(n)};Timeline.DefaultEventSource.prototype.removeListener=function(n){for(var t=0;t0?n:n.substr(0,1)=="/"?t.substr(0,t.indexOf("/",t.indexOf("://")+3))+n:t+n};Timeline.DefaultEventSource.Event=function(n){function t(t){return n[t]!=null&&n[t]!=""?n[t]:null}var r=n.id?n.id.trim():"",i;this._id=r.length>0?r:Timeline.EventUtils.getNewEventID();this._instant=n.instant||n.end==null;this._start=n.start;this._end=n.end!=null?n.end:n.start;this._latestStart=n.latestStart!=null?n.latestStart:n.instant?this._end:this._start;this._earliestEnd=n.earliestEnd!=null?n.earliestEnd:this._end;i=[];this._start>this._latestStart&&(this._latestStart=this._start,i.push("start is > latestStart"));this._start>this._earliestEnd&&(this._earliestEnd=this._latestStart,i.push("start is > earliestEnd"));this._start>this._end&&(this._end=this._earliestEnd,i.push("start is > end"));this._latestStart>this._earliestEnd&&(this._earliestEnd=this._latestStart,i.push("latestStart is > earliestEnd"));this._latestStart>this._end&&(this._end=this._earliestEnd,i.push("latestStart is > end"));this._earliestEnd>this._end&&(this._end=this._earliestEnd,i.push("earliestEnd is > end"));this._eventID=t("eventID");this._text=n.text!=null?SimileAjax.HTML.deEntify(n.text):"";i.length>0&&(this._text+=" PROBLEM: "+i.join(", "));this._description=SimileAjax.HTML.deEntify(n.description);this._image=t("image");this._link=t("link");this._title=t("hoverText");this._title=t("caption");this._icon=t("icon");this._color=t("color");this._textColor=t("textColor");this._classname=t("classname");this._tapeImage=t("tapeImage");this._tapeRepeat=t("tapeRepeat");this._trackNum=t("trackNum");this._trackNum!=null&&(this._trackNum=parseInt(this._trackNum));this._wikiURL=null;this._wikiSection=null};Timeline.DefaultEventSource.Event.prototype={getID:function(){return this._id},isInstant:function(){return this._instant},isImprecise:function(){return this._start!=this._latestStart||this._end!=this._earliestEnd},getStart:function(){return this._start},getEnd:function(){return this._end},getLatestStart:function(){return this._latestStart},getEarliestEnd:function(){return this._earliestEnd},getEventID:function(){return this._eventID},getText:function(){return this._text},getDescription:function(){return this._description},getImage:function(){return this._image},getLink:function(){return this._link},getIcon:function(){return this._icon},getColor:function(){return this._color},getTextColor:function(){return this._textColor},getClassName:function(){return this._classname},getTapeImage:function(){return this._tapeImage},getTapeRepeat:function(){return this._tapeRepeat},getTrackNum:function(){return this._trackNum},getProperty:function(){return null},getWikiURL:function(){return this._wikiURL},getWikiSection:function(){return this._wikiSection},setWikiInfo:function(n,t){this._wikiURL=n;this._wikiSection=t},fillDescription:function(n){n.innerHTML=this._description},fillWikiInfo:function(n){var t,r,i;(n.style.display="none",this._wikiURL!=null&&this._wikiSection!=null)&&(t=this.getProperty("wikiID"),(t==null||t.length==0)&&(t=this.getText()),t!=null&&t.length!=0)&&(n.style.display="inline",t=t.replace(/\s/g,"_"),r=this._wikiURL+this._wikiSection.replace(/\s/g,"_")+"/"+t,i=document.createElement("a"),i.href=r,i.target="new",i.innerHTML=Timeline.strings[Timeline.clientLocale].wikiLinkLabel,n.appendChild(document.createTextNode("[")),n.appendChild(i),n.appendChild(document.createTextNode("]")))},fillTime:function(n,t){this._instant?this.isImprecise()?(n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._start))),n.appendChild(n.ownerDocument.createElement("br")),n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._end)))):n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._start))):this.isImprecise()?(n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._start)+" ~ "+t.labelPrecise(this._latestStart))),n.appendChild(n.ownerDocument.createElement("br")),n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._earliestEnd)+" ~ "+t.labelPrecise(this._end)))):(n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._start))),n.appendChild(n.ownerDocument.createElement("br")),n.appendChild(n.ownerDocument.createTextNode(t.labelPrecise(this._end))))},fillInfoBubble:function(n,t,i){var r=n.ownerDocument,v=this.getText(),l=this.getLink(),a=this.getImage(),f,u,c,e,o,s,h;a!=null&&(f=r.createElement("img"),f.src=a,t.event.bubble.imageStyler(f),n.appendChild(f));u=r.createElement("div");c=r.createTextNode(v);l!=null?(e=r.createElement("a"),e.href=l,e.appendChild(c),u.appendChild(e)):u.appendChild(c);t.event.bubble.titleStyler(u);n.appendChild(u);o=r.createElement("div");this.fillDescription(o);t.event.bubble.bodyStyler(o);n.appendChild(o);s=r.createElement("div");this.fillTime(s,i);t.event.bubble.timeStyler(s);n.appendChild(s);h=r.createElement("div");this.fillWikiInfo(h);t.event.bubble.wikiStyler(h);n.appendChild(h)}};Timeline.ClassicTheme={};Timeline.ClassicTheme.implementations=[];Timeline.ClassicTheme.create=function(n){n==null&&(n=Timeline.getDefaultLocale());var t=Timeline.ClassicTheme.implementations[n];return t==null&&(t=Timeline.ClassicTheme._Impl),new t};Timeline.ClassicTheme._Impl=function(){this.firstDayOfWeek=0;this.autoWidth=!1;this.autoWidthAnimationTime=500;this.timeline_start=null;this.timeline_stop=null;this.ether={backgroundColors:[],highlightOpacity:50,interval:{line:{show:!0,opacity:25},weekend:{opacity:30},marker:{hAlign:"Bottom",vAlign:"Right"}}};this.event={track:{height:10,gap:2,offset:2,autoWidthMargin:1.5},overviewTrack:{offset:20,tickHeight:6,height:2,gap:1,autoWidthMargin:5},tape:{height:4},instant:{icon:Timeline.urlPrefix+"images/dull-blue-circle.png",iconWidth:10,iconHeight:10,impreciseOpacity:20,impreciseIconMargin:3},duration:{impreciseOpacity:20},label:{backgroundOpacity:50,offsetFromLine:3},highlightColors:["#FFFF00","#FFC000","#FF0000","#0000FF"],highlightLabelBackground:!1,bubble:{width:250,maxHeight:0,titleStyler:function(n){n.className="timeline-event-bubble-title"},bodyStyler:function(n){n.className="timeline-event-bubble-body"},imageStyler:function(n){n.className="timeline-event-bubble-image"},wikiStyler:function(n){n.className="timeline-event-bubble-wiki"},timeStyler:function(n){n.className="timeline-event-bubble-time"}}};this.mouseWheel="scroll"};Timeline.version="2.3.0";Timeline.ajax_lib_version=SimileAjax.version;Timeline.display_version=Timeline.version+" (with Ajax lib "+Timeline.ajax_lib_version+")";Timeline.strings={};Timeline.HORIZONTAL=0;Timeline.VERTICAL=1;Timeline._defaultTheme=null;Timeline.getDefaultLocale=function(){return Timeline.clientLocale};Timeline.create=function(n,t,i,r){var u,f;return Timeline.timelines==null&&(Timeline.timelines=[]),u=Timeline.timelines.length,Timeline.timelines[u]=null,f=new Timeline._Impl(n,t,i,r,u),Timeline.timelines[u]=f,f};Timeline.createBandInfo=function(n){var r="theme"in n?n.theme:Timeline.getDefaultTheme(),e="eventSource"in n?n.eventSource:null,o=new Timeline.LinearEther({centersOn:"date"in n?n.date:new Date,interval:SimileAjax.DateTime.gregorianUnitLengths[n.intervalUnit],pixelsPerInterval:n.intervalPixels,theme:r}),s=new Timeline.GregorianEtherPainter({unit:n.intervalUnit,multiple:"multiple"in n?n.multiple:1,theme:r,align:"align"in n?n.align:undefined}),t={showText:"showEventText"in n?n.showEventText:!0,theme:r},u,f,i;if("eventPainterParams"in n)for(u in n.eventPainterParams)t[u]=n.eventPainterParams[u];if("trackHeight"in n&&(t.trackHeight=n.trackHeight),"trackGap"in n&&(t.trackGap=n.trackGap),f="overview"in n&&n.overview?"overview":"layout"in n?n.layout:"original","eventPainter"in n)i=new n.eventPainter(t);else switch(f){case"overview":i=new Timeline.OverviewEventPainter(t);break;case"detailed":i=new Timeline.DetailedEventPainter(t);break;default:i=new Timeline.OriginalEventPainter(t)}return{width:n.width,eventSource:e,timeZone:"timeZone"in n?n.timeZone:0,ether:o,etherPainter:s,eventPainter:i,theme:r,zoomIndex:"zoomIndex"in n?n.zoomIndex:0,zoomSteps:"zoomSteps"in n?n.zoomSteps:null}};Timeline.createHotZoneBandInfo=function(n){var r="theme"in n?n.theme:Timeline.getDefaultTheme(),e="eventSource"in n?n.eventSource:null,o=new Timeline.HotZoneEther({centersOn:"date"in n?n.date:new Date,interval:SimileAjax.DateTime.gregorianUnitLengths[n.intervalUnit],pixelsPerInterval:n.intervalPixels,zones:n.zones,theme:r}),s=new Timeline.HotZoneGregorianEtherPainter({unit:n.intervalUnit,zones:n.zones,theme:r,align:"align"in n?n.align:undefined}),t={showText:"showEventText"in n?n.showEventText:!0,theme:r},u,f,i;if("eventPainterParams"in n)for(u in n.eventPainterParams)t[u]=n.eventPainterParams[u];if("trackHeight"in n&&(t.trackHeight=n.trackHeight),"trackGap"in n&&(t.trackGap=n.trackGap),f="overview"in n&&n.overview?"overview":"layout"in n?n.layout:"original","eventPainter"in n)i=new n.eventPainter(t);else switch(f){case"overview":i=new Timeline.OverviewEventPainter(t);break;case"detailed":i=new Timeline.DetailedEventPainter(t);break;default:i=new Timeline.OriginalEventPainter(t)}return{width:n.width,eventSource:e,timeZone:"timeZone"in n?n.timeZone:0,ether:o,etherPainter:s,eventPainter:i,theme:r,zoomIndex:"zoomIndex"in n?n.zoomIndex:0,zoomSteps:"zoomSteps"in n?n.zoomSteps:null}};Timeline.getDefaultTheme=function(){return Timeline._defaultTheme==null&&(Timeline._defaultTheme=Timeline.ClassicTheme.create(Timeline.getDefaultLocale())),Timeline._defaultTheme};Timeline.setDefaultTheme=function(n){Timeline._defaultTheme=n};Timeline.loadXML=function(n,t){var i=function(t){alert("Failed to load data xml from "+n+"\n"+t)},r=function(i){var r=i.responseXML;!r.documentElement&&i.responseStream&&r.load(i.responseStream);t(r,n)};SimileAjax.XmlHttp.get(n,i,r)};Timeline.loadJSON=function(url,f){var n=function(n){alert("Failed to load json data from "+url+"\n"+n)},t=function(xmlhttp){f(eval("("+xmlhttp.responseText+")"),url)};SimileAjax.XmlHttp.get(url,n,t)};Timeline.getTimelineFromID=function(n){return Timeline.timelines[n]};Timeline.writeVersion=function(n){document.getElementById(n).innerHTML=this.display_version};Timeline._Impl=function(n,t,i,r,u){SimileAjax.WindowManager.initialize();this._containerDiv=n;this._bandInfos=t;this._orientation=i==null?Timeline.HORIZONTAL:i;this._unit=r!=null?r:SimileAjax.NativeDateUnit;this._starting=!0;this._autoResizing=!1;this.autoWidth=t&&t[0]&&t[0].theme&&t[0].theme.autoWidth;this.autoWidthAnimationTime=t&&t[0]&&t[0].theme&&t[0].theme.autoWidthAnimationTime;this.timelineID=u;this.timeline_start=t&&t[0]&&t[0].theme&&t[0].theme.timeline_start;this.timeline_stop=t&&t[0]&&t[0].theme&&t[0].theme.timeline_stop;this.timeline_at_start=!1;this.timeline_at_stop=!1;this._initialize()};Timeline._Impl.prototype.dispose=function(){for(var n=0;ne||n)&&(i=f,u(),t._distributeWidths())}}var t=this,r=t._starting,i=0;t.autoWidth&&f()};Timeline._Impl.prototype._initialize=function(){var t=this._containerDiv,o=t.ownerDocument,f,r,e,u,n,i;for(t.className=t.className.split(" ").concat("timeline-container").join(" "),f=this.isHorizontal()?"horizontal":"vertical",t.className+=" timeline-"+f;t.firstChild;)t.removeChild(t.firstChild);for(r=SimileAjax.Graphics.createTranslucentImage(Timeline.urlPrefix+(this.isHorizontal()?"images/copyright-vertical.png":"images/copyright.png")),r.className="timeline-copyright",r.title="Timeline copyright SIMILE - www.code.google.com/p/simile-widgets/",SimileAjax.DOM.registerEvent(r,"click",function(){window.location="http://code.google.com/p/simile-widgets/"}),t.appendChild(r),this._bands=[],n=0;n Loading...";this.showLoadingMessage=function(){i.containerDiv.style.display="block"};this.hideLoadingMessage=function(){i.containerDiv.style.display="none"}};Timeline._Impl.prototype._distributeWidths=function(){for(var r,e,o=this.getPixelLength(),s=this.getPixelWidth(),u=0,i=0;i0?(e=parseInt(n.substr(0,r)),t=Math.round(e*s/100)):t=parseInt(n)):t=n;f.setBandShiftAndWidth(u,t);f.setViewLength(o);u+=t}};Timeline._Impl.prototype.shiftOK=function(n,t){var f=t>0,o=t<0,e,r,i,u;if(f&&this.timeline_start==null||o&&this.timeline_stop==null||t==0)return!0;for(e=!1,i=0;i=this.timeline_start:(i==n?u.getMaxVisibleDateAfterDelta(t):u.getMaxVisibleDate())<=this.timeline_stop;return f?(this.timeline_at_start=!r,this.timeline_at_stop=!1):(this.timeline_at_stop=!r,this.timeline_at_start=!1),r};Timeline._Impl.prototype.zoom=function(n,t,i,r){var e=new RegExp("^timeline-band-([0-9]+)$"),u=null,f=e.exec(r.id);f&&(u=parseInt(f[1]));u!=null&&this._bands[u].zoom(n,t,i,r);this.paint()};Timeline.NativeDateUnit={};Timeline.NativeDateUnit.createLabeller=function(n,t){return new Timeline.GregorianDateLabeller(n,t)};Timeline.NativeDateUnit.makeDefaultValue=function(){return new Date};Timeline.NativeDateUnit.cloneValue=function(n){return new Date(n.getTime())};Timeline.NativeDateUnit.getParser=function(n){return typeof n=="string"&&(n=n.toLowerCase()),n=="iso8601"||n=="iso 8601"?Timeline.DateTime.parseIso8601DateTime:Timeline.DateTime.parseGregorianDateTime};Timeline.NativeDateUnit.parseFromObject=function(n){return Timeline.DateTime.parseGregorianDateTime(n)};Timeline.NativeDateUnit.toNumber=function(n){return n.getTime()};Timeline.NativeDateUnit.fromNumber=function(n){return new Date(n)};Timeline.NativeDateUnit.compare=function(n,t){var i,r;return i=typeof n=="object"?n.getTime():Number(n),r=typeof t=="object"?t.getTime():Number(t),i-r};Timeline.NativeDateUnit.earlier=function(n,t){return Timeline.NativeDateUnit.compare(n,t)<0?n:t};Timeline.NativeDateUnit.later=function(n,t){return Timeline.NativeDateUnit.compare(n,t)>0?n:t};Timeline.NativeDateUnit.change=function(n,t){return new Date(n.getTime()+t)};Timeline.strings.en={wikiLinkLabel:"Discuss"};Timeline.GregorianDateLabeller.monthNames.en=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];Timeline.GregorianDateLabeller.dayNames.en=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];