var SITE_URL = "http://www.suhsd.net";var JS_PATH = "http://www.suhsd.net/lib/js";var DEBUG_MODE = 2047;
var IS_AJAX_REQUEST_VAR = "JSA";var AJAX_SEND_HEADER_ID = "X-Trans-By";var AJAX_RESPONSE_HEADER_ID = "X-Is-Response-Error";var AJAX_ERROR_CODE = "1";var AJAX_OK_CODE = "0";var JS_REAL_URL = "http://www.suhsd.net/lib/js/js.inc.php";var AJAX_HTTP_REFERER = "http://www.suhsd.net/lib/js/js.inc.php";var TPL_TPL_VAR = "main_content";var AJAX_UPDATE_CONTAINER_VAR = "_cont_update";var PATH_TO_EXTERNAL_RQ_FILE = "http://www.suhsd.net/lib/php_rq.php";;var BrowserDetect={init:function(){this.browser=this.searchString(this.dataBrowser)||"An unknown browser";this.version=this.searchVersion(navigator.userAgent)||this.searchVersion(navigator.appVersion)||"an unknown version";this.OS=this.searchString(this.dataOS)||"an unknown OS"},searchString:function(D){for(var A=0;A<D.length;A++){var B=D[A].string;var C=D[A].prop;this.versionSearchString=D[A].versionSearch||D[A].identity;if(B){if(B.indexOf(D[A].subString)!=-1){return D[A].identity}}else{if(C){return D[A].identity}}}},searchVersion:function(B){var A=B.indexOf(this.versionSearchString);if(A==-1){return }return parseFloat(B.substring(A+this.versionSearchString.length+1))},dataBrowser:[{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari"},{prop:window.opera,identity:"Opera"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.vendor,subString:"Camino",identity:"Camino"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],dataOS:[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.platform,subString:"Linux",identity:"Linux"}]};BrowserDetect.init();var Prototype={Version:"1.5.0_rc1",BrowserFeatures:{XPath:!!document.evaluate},ScriptFragment:"(?:<script.*?>)((\n|\r|.)*?)(?:</script>)",emptyFunction:function(){},K:function(A){return A}};var Class={create:function(){return function(){this.initialize.apply(this,arguments)}}};var Abstract=new Object();Object.extend=function(A,C){for(var B in C){A[B]=C[B]}return A};Object.extend(Object,{inspect:function(A){try{if(A===undefined){return"undefined"}if(A===null){return"null"}return A.inspect?A.inspect():A.toString()}catch(B){if(B instanceof RangeError){return"..."}throw B}},keys:function(A){var B=[];for(var C in A){B.push(C)}return B},values:function(B){var A=[];for(var C in B){A.push(B[C])}return A},properties:function(B){var A=[];for(var C in B){if(typeof B[C]=="function"){continue}A.push(B[C])}return A},clone:function(A){return Object.extend({},A)}});Function.prototype.bind=function(){var A=this,C=$A(arguments),B=C.shift();if(typeof B.push=="function"){B=B[0]}return function(){return A.apply(B,C.concat($A(arguments)))}};Function.prototype.setShortcut=function(){var B=this,C=$A(arguments),A=C.shift();A=(A||"").replace(/([\s]|[^a-z0-9\+])+/gim,"").toUpperCase();if(A!=""){A=A.split("+");var E=A[0].toLowerCase();if(BrowserDetect.OS=="Mac"&&E=="ctrl"){E="meta"}if(A.length==2){var D=A[1].substr(0,1);Event.listen(document,"keydown",function(F){Event.getEvent((F=F||window.event));if(Event[E+"Key"]&&((key=Event.key(F)).letter)==D){B.apply(C.concat($A(arguments)));return false}delete (key)},true)}else{if(A.length==1){E=E.toUpperCase();Event.listen(document,"keydown",function(G){Event.getEvent((G=G||window.event));var F=Event.key(G);if((Event["KEY_"+E]&&F.code==Event["KEY_"+E])||F.letter==E){B.apply(C.concat($A(arguments)));return false}},true)}}}};Function.prototype.unsetShortcut=function(){var B=this,C=$A(arguments),A=C.shift();A=(A||"").replace(/([\s]|[^a-z0-9\+])+/gim,"").toUpperCase();if(A!=""){A=A.split("+");var E=A[0].toLowerCase();if(A.length==2){var D=A[1].substr(0,1);Event.listen(document,"keydown",function(F){Event.getEvent((F=F||window.event));if(Event[E+"Key"]&&((key=Event.key(F)).letter)==D){B.apply(C.concat($A(arguments)));return false}delete (key)},true)}else{if(A.length==1){E=E.toUpperCase();Event.listen(document,"keydown",function(G){Event.getEvent((G=G||window.event));var F=Event.key(G);if((Event["KEY_"+E]&&F.code==Event["KEY_"+E])||F.letter==E){B.apply(C.concat($A(arguments)));return false}},true)}}}};Function.prototype.bindAsEventListener=function(C){var A=this,B=$A(arguments),C=B.shift();return function(D){return A.apply(C,[(D||window.event)].concat(B).concat($A(arguments)))}};Object.extend(Number.prototype,{toColorPart:function(){var A=this.toString(16);if(this<16){return"0"+A}return A},succ:function(){return this+1},times:function(A){$R(0,this,true).each(A);return this}});var Try={these:function(){var C;for(var B=0;B<arguments.length;B++){var A=arguments[B];try{C=A();break}catch(D){}}return C}};var PeriodicalExecuter=Class.create();PeriodicalExecuter.prototype={initialize:function(B,A){this.callback=B;this.frequency=A;this.currentlyExecuting=false;this.registerCallback()},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000)},stop:function(){if(!this.timer){return }clearInterval(this.timer);this.timer=null},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.callback(this)}finally{this.currentlyExecuting=false}}}};Object.extend(String.prototype,{gsub:function(E,C){var A="",D=this,B;C=arguments.callee.prepareReplacement(C);while(D.length>0){if(B=D.match(E)){A+=D.slice(0,B.index);A+=(C(B)||"").toString();D=D.slice(B.index+B[0].length)}else{A+=D,D=""}}return A},sub:function(C,A,B){A=this.gsub.prepareReplacement(A);B=B===undefined?1:B;return this.gsub(C,function(D){if(--B<0){return D[0]}return A(D)})},scan:function(B,A){this.gsub(B,A);return this},truncate:function(B,A){B=B||30;A=A===undefined?"...":A;return this.length>B?this.slice(0,B-A.length)+A:this},strip:function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,"")},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,"img"),"")},extractScripts:function(){var B=new RegExp(Prototype.ScriptFragment,"img");var A=new RegExp(Prototype.ScriptFragment,"im");return(this.match(B)||[]).map(function(C){return(C.match(A)||["",""])[1]})},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script)})},escapeHTML:function(){var B=document.createElement("div");var A=document.createTextNode(this);B.appendChild(A);return B.innerHTML},unescapeHTML:function(){var A=document.createElement("div");A.innerHTML=this.stripTags();return A.childNodes[0]?A.childNodes[0].nodeValue:""},toQueryParams:function(){var A=this.strip().match(/[^?]*$/)[0];if(!A){return{}}var B=A.split("&");return B.inject({},function(F,C){var E=C.split("=");var D=E[1]?decodeURIComponent(E[1]):undefined;F[decodeURIComponent(E[0])]=D;return F})},toArray:function(){return this.split("")},is:function(A){return StringValidator.validate(this.toString(),A)},camelize:function(){var C=this.split("-");if(C.length==1){return C[0]}var A=this.indexOf("-")==0?C[0].charAt(0).toUpperCase()+C[0].substring(1):C[0];for(var B=1,E=C.length;B<E;B++){var D=C[B];A+=D.charAt(0).toUpperCase()+D.substring(1)}return A},decamelize:function(F,D){var G=this;if(capitals=this.match(/[A-Z]/gm)){var C=this.split(/[A-Z]/gm);F=(F)?F:" ";D=(typeof D!="undefined"&&["true",true,1,"1"].include(D))?D:false;G="";var E=C.length-capitals.length;for(var B=0;B<C.length;B++){var A=(capitals[B]||"");A=(D)?A:A.toLowerCase();G+=((E==0)?A:"")+C[B]+((B+1==C.length)?"":F)+((E!=0)?A:"")}delete (capitals)}return G.trim(F)},trim:function(A){if(this.length<1){return this}var C=(A)?A:"";var B=this.replace(/[\r\n]{1,}/gim,"");B=B.rtrim(C);B=B.ltrim(C);return B},rtrim:function(C){var D=(C)?C:String.fromCharCode(32);var E=this.replace(/[\r\n]{1,}/gim,"");var F=E.length;var B="";if(F<0){return""}var A=F-1;while(A>-1){if(this.charAt(A)==D){}else{B=this.substring(0,A+1);break}A=A-1}return B},ltrim:function(C){var D=(isset(C))?C:String.fromCharCode(32);var E=this.replace(/[\r\n]{1,}/gim,"");var F=E.length;var B="";if(F<0){return""}var A=0;while(A<F){if(this.charAt(A)==D){}else{B=this.substring(A,F);break}A=A+1}return B},truncate:function(B,A){var C=this.trim();A+="";if(C.length>B){C=C.substr(0,B-A.length)+A}return C},inspect:function(B){var A=this.replace(/\\/g,"\\\\");if(B){return"\""+A.replace(/"/g,"\\\"")+"\""}else{return"'"+A.replace(/'/g,"\\'")+"'"}}});String.prototype.gsub.prepareReplacement=function(B){if(typeof B=="function"){return B}var A=new Template(B);return function(C){return A.evaluate(C)}};String.prototype.parseQuery=String.prototype.toQueryParams;String.prototype.htmlspecialchars=String.prototype.escapeHTML;var Template=Class.create();Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;Template.prototype={initialize:function(A,B){this.template=A.toString();this.pattern=B||Template.Pattern},evaluate:function(A){return this.template.gsub(this.pattern,function(B){var C=B[1];if(C=="\\"){return B[2]}return C+(A[B[3]]||"").toString()})}};var $break=new Object();var $continue=new Object();var Enumerable={each:function(B){var A=0;try{this._each(function(D){try{B(D,A++)}catch(E){if(E!=$continue){throw E}}})}catch(C){if(C!=$break){throw C}}return this},eachSlice:function(C,B){var A=-C,D=[],E=this.toArray();while((A+=C)<E.length){D.push(E.slice(A,A+C))}return D.collect(B||Prototype.K)},all:function(B){var A=true;this.each(function(D,C){A=A&&!!(B||Prototype.K)(D,C);if(!A){throw $break}});return A},any:function(B){var A=false;this.each(function(D,C){if(A=!!(B||Prototype.K)(D,C)){throw $break}});return A},collect:function(B){var A=[];this.each(function(D,C){A.push(B(D,C))});return A},detect:function(B){var A;this.each(function(D,C){if(B(D,C)){A=D;throw $break}});return A},findAll:function(B){var A=[];this.each(function(D,C){if(B(D,C)){A.push(D)}});return A},grep:function(C,B){var A=[];this.each(function(F,E){var D=F.toString();if(D.match(C)){A.push((B||Prototype.K)(F,E))}});return A},include:function(A){var B=false;this.each(function(C){if(C==A){B=true;throw $break}});return B},inGroupsOf:function(C,B){B=B||null;var A=this.eachSlice(C);if(A.length>0){(C-A.last().length).times(function(){A.last().push(B)})}return A},inject:function(A,B){this.each(function(D,C){A=B(A,D,C)});return A},invoke:function(B){var A=$A(arguments).slice(1);return this.collect(function(C){return C[B].apply(C,A)})},max:function(B){var A;this.each(function(D,C){D=(B||Prototype.K)(D,C);if(A==undefined||D>=A){A=D}});return A},min:function(B){var A;this.each(function(D,C){D=(B||Prototype.K)(D,C);if(A==undefined||D<A){A=D}});return A},partition:function(C){var B=[],A=[];this.each(function(E,D){((C||Prototype.K)(E,D)?B:A).push(E)});return[B,A]},pluck:function(B){var A=[];this.each(function(D,C){A.push(D[B])});return A},reject:function(B){var A=[];this.each(function(D,C){if(!B(D,C)){A.push(D)}});return A},sortBy:function(A){return this.collect(function(C,B){return{value:C,criteria:A(C,B)}}).sort(function(E,D){var C=E.criteria,B=D.criteria;return C<B?-1:C>B?1:0}).pluck("value")},toArray:function(){return this.collect(Prototype.K)},zip:function(){var B=Prototype.K,A=$A(arguments);if(typeof A.last()=="function"){B=A.pop()}var C=[this].concat(A).map($A);return this.map(function(E,D){return B(C.pluck(D))})},inspect:function(){return"#<Enumerable:"+this.toArray().inspect()+">"}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray});var $A=Array.from=function(D){if(!D){return[]}if(D.toArray){return D.toArray()}else{var B=[];for(var A=0,C=D.length;A<C;A++){B.push(D[A])}return B}};Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse}Object.extend(Array.prototype,{_each:function(B){for(var A=0,C=this.length;A<C;A++){B(this[A])}},clear:function(){this.length=0;return this},first:function(){return this[0]},last:function(){return this[this.length-1]},compact:function(){return this.select(function(A){return A!=undefined||A!=null})},flatten:function(){return this.inject([],function(B,A){return B.concat(A&&A.constructor==Array?A.flatten():[A])})},without:function(){var A=$A(arguments);return this.select(function(B){return !A.include(B)})},indexOf:function(A){for(var B=0,C=this.length;B<C;B++){if(this[B]==A){return B}}return -1},reverse:function(A){return(A!==false?this:this.toArray())._reverse()},reduce:function(){return this.length>1?this:this[0]},uniq:function(){return this.inject([],function(B,A){return B.include(A)?B:B.concat([A])})},clone:function(){return[].concat(this)},inspect:function(){return"["+this.map(Object.inspect).join(", ")+"]"}});Array.prototype.toArray=Array.prototype.clone;var Hash={_each:function(B){for(var A in this){var C=this[A];if(typeof C=="function"){continue}var D=[A,C];D.key=A;D.value=C;B(D)}},keys:function(){return this.pluck("key")},values:function(){return this.pluck("value")},merge:function(A){return $H(A).inject(this,function(B,C){B[C.key]=C.value;return B})},toQueryString:function(){return this.map(function(A){if(!A.value&&A.value!==0){A[1]=""}if(!A.key){return }return A.map(encodeURIComponent).join("=")}).join("&")},inspect:function(){return"#<Hash:{"+this.map(function(A){return A.map(Object.inspect).join(": ")}).join(", ")+"}>"}};function $H(A){var B=Object.extend({},A||{});Object.extend(B,Enumerable);Object.extend(B,Hash);return B}ObjectRange=Class.create();Object.extend(ObjectRange.prototype,Enumerable);Object.extend(ObjectRange.prototype,{initialize:function(C,A,B){this.start=C;this.end=A;this.exclusive=B},_each:function(A){var B=this.start;while(this.include(B)){A(B);B=B.succ()}},include:function(A){if(A<this.start){return false}if(this.exclusive){return A<this.end}return A<=this.end}});var $R=function(C,A,B){return new ObjectRange(C,A,B)};var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")})||false},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(A){this.responders._each(A)},register:function(A){if(!this.include(A)){this.responders.push(A)}},unregister:function(A){this.responders=this.responders.without(A)},dispatch:function(D,B,C,A){this.each(function(E){if(typeof E[D]=="function"){try{E[D].apply(E,[B,C,A])}catch(F){}}})}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++},onComplete:function(){Ajax.activeRequestCount--}});Ajax.Base=function(){};Ajax.Base.prototype={setOptions:function(A){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:""};Object.extend(this.options,A||{});this.options.method=this.options.method.toLowerCase();this.options.parameters=$H(typeof this.options.parameters=="string"?this.options.parameters.toQueryParams():this.options.parameters)}};Ajax.Request=Class.create();Ajax.Request.Events=["Uninitialized","Loading","Loaded","Interactive","Complete"];Ajax.Request.prototype=Object.extend(new Ajax.Base(),{initialize:function(B,A){this.transport=Ajax.getTransport();this.setOptions(A);this.request(B)},request:function(B){var D=this.options.parameters;if(D.any()){D["_"]=""}if(!["get","post"].include(this.options.method)){D["_method"]=this.options.method;this.options.method="post"}this.url=B;if(this.options.method=="get"&&D.any()){this.url+=(this.url.indexOf("?")>=0?"&":"?")+D.toQueryString()}if(this.options[AJAX_UPDATE_CONTAINER_VAR]){this.options[AJAX_UPDATE_CONTAINER_VAR]=typeof this.options[AJAX_UPDATE_CONTAINER_VAR]=="string"?this.options[AJAX_UPDATE_CONTAINER_VAR]:(this.options[AJAX_UPDATE_CONTAINER_VAR].id||this.options[AJAX_UPDATE_CONTAINER_VAR].name);if(typeof this.options.postBody=="string"||this.options.method.toLowerCase()=="post"){this.options.postBody=this.options.postBody||"";this.options.postBody+=(this.options.postBody.length>=0?"&":"")+AJAX_UPDATE_CONTAINER_VAR+"="+this.options[AJAX_UPDATE_CONTAINER_VAR]}else{this.url+=(this.url.indexOf("?")>=0?"&":"?")+AJAX_UPDATE_CONTAINER_VAR+"="+this.options[AJAX_UPDATE_CONTAINER_VAR]}}try{Ajax.Responders.dispatch("onCreate",this,this.transport);this.transport.open(this.options.method.toUpperCase(),this.url,this.options.asynchronous,this.options.username,this.options.password);if(this.options.asynchronous){setTimeout((function(){this.respondToReadyState(1)}).bind(this),10)}this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();var A=this.options.method.toLowerCase()=="post"?(this.options.postBody||D.toQueryString()):null;this.transport.send(A);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange()}}catch(C){this.dispatchException(C)}},onStateChange:function(){var A=this.transport.readyState;if(A>1){this.respondToReadyState(this.transport.readyState)}},checkIsResponseError:function(){var A=AJAX_OK_CODE;if(Ajax.Request.Events[this.transport.readyState]=="Complete"&&this.transport.getResponseHeader(AJAX_RESPONSE_HEADER_ID)!=null){A=parseInt(this.transport.getResponseHeader(AJAX_RESPONSE_HEADER_ID))}return(A==AJAX_ERROR_CODE)},setRequestHeaders:function(){var B=AJAX_SEND_HEADER_ID||"X-Requested-With";var A=IS_AJAX_REQUEST_VAR||"XMLHttpRequest";var F={"X-Prototype-Version":Prototype.Version,"Accept":"text/javascript, text/html, application/xml, text/xml, */*","If-Modified-Since":"Wed, 15 Nov 1990 00:00:00 GMT","Referer":window.location.toString()};F[B]=A;if(this.options.method=="post"){F["Content-type"]=this.options.contentType+(this.options.encoding?"; charset="+this.options.encoding:"");if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005){F["Connection"]="close"}}if(typeof this.options.requestHeaders=="object"){var E=this.options.requestHeaders;if(typeof E.push=="function"){for(var D=0;D<E.length;D+=2){F[E[D]]=E[D+1]}}else{$H(E).each(function(G){F[G.key]=G.value})}}for(var C in F){if(typeof F[C]=="string"){this.transport.setRequestHeader(C,F[C])}}},success:function(){return(!this.transport.status||(this.transport.status>=200&&this.transport.status<300))&&!this.checkIsResponseError()},respondToReadyState:function(A){var C=Ajax.Request.Events[A];var E=this.transport,B=this.evalJSON();if(C=="Complete"){this.responseText=this.transport.responseText;this.responseXML=this.transport.responseXML;try{(this.options["on"+this.transport.status]||this.options["on"+(this.success()&&!this.checkIsResponseError()?"Success":"Failure")]||Prototype.emptyFunction)(E,B)}catch(D){this.dispatchException(D)}}try{(this.options["on"+C]||Prototype.emptyFunction)(E,B);Ajax.Responders.dispatch("on"+C,this,E,B)}catch(D){this.dispatchException(D)}if(C=="Complete"){if((this.getHeader("Content-type")||"").strip().match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)){this.evalResponse()}else{if(this.options.evalScripts&&this.responseText.match(/<script/gim)){runScripts(E.responseText)}}this.transport.onreadystatechange=Prototype.emptyFunction;this.transport.abort()}},getHeader:function(A){try{return this.transport.getResponseHeader(A)}catch(B){return null}},evalJSON:function(){var json=this.getHeader("X-JSON");if(json){try{return json?eval("("+json+")"):null}catch(e){return null}}return null},evalResponse:function(){try{return eval(this.transport.responseText)}catch(e){this.dispatchException(e)}},dispatchException:function(A){(this.options.onException||Prototype.emptyFunction)(this,A);Ajax.Responders.dispatch("onException",this,A)}});Ajax.submitForm=function(L,D,I,H){if(!(formObj=$(L))){if(DEBUG_MODE){alert("Ajax.submitForm: No Form")}return }else{if(formObj._submitting){}}if(typeof formObj.submit=="function"){formObj.submit=function(){return false}}var F=(((typeof formObj.onsubmit=="function")?formObj.onsubmit:Prototype.emptyFunction)).bind(formObj);formObj._submitting=1;formObj.onsubmit=function(){F();return false};if(!formObj[formObj.getAttribute("name")+"_submitted"]){var E=document.createElement("INPUT");E.name=formObj.getAttribute("name")+"_submitted";E.value=1;E.type="hidden";formObj.appendChild(E)}if(!H){Event.getEvent();H=Event.element()}else{if(H){H=$(H)}}var M=Form.getInputs(formObj,"submit");M=M.concat(Form.getInputs(formObj,"image"));M=M.concat($A(formObj.getElementsByTagName("button")));orderBySourceIndex(M);if(typeof H=="undefined"||!/(image|submit)/.test(H.type||"")){H=M.first()}formObj.__submittedBy=H;if(Event.clientX){var K=Event.clientX;var J=Event.clientY}else{var K=Event.clientX;var J=Event.clientY}if(formObj.__submittedBy&&formObj.__submittedBy.type=="image"){var C,B;if(!(C=formObj.elements[formObj.__submittedBy.name+"_x"])){C=document.createElement("input");C.type="hidden";C.name=formObj.__submittedBy.name+"_x";formObj.appendChild(C)}if(!(B=formObj.elements[formObj.__submittedBy.name+"_y"])){B=document.createElement("input");B.type="hidden";B.name=formObj.__submittedBy.name+"_y";formObj.appendChild(B)}C.value=(["click","mouseup"].indexOf(Event.type)==-1)?0:Event.pointerX();B.value=(["click","mouseup"].indexOf(Event.type)==-1)?0:Event.pointerY()}if(formObj.__submittedBy){var N=formObj.elements["_"+formObj.name+".Submit"];if(!N){N=document.createElement("input");N.type="hidden";N.name="_"+formObj.name+".Submit";formObj.appendChild(N)}N.value=formObj.__submittedBy.name}var G={postBody:Form.serialize(formObj),method:formObj.getAttribute("method")||"get"};M=$A(M);M.each(function(O){O.disabled=true;Element.addClassName(O,"disabled")});G.onComplete=function(){if(typeof formObj.__submittedBy!="undefined"){if(formObj.__submittedBy&&formObj.__submittedBy.type=="image"){if(C){formObj.removeChild(C)}if(B){formObj.removeChild(B)}}formObj.__submittedBy=null}M.each(function(O){O.disabled=false;try{Element.removeClassName(O,"disabled")}catch(P){}})};G.onFailure=D||Form.displayErrors||Prototype.emptyFunction;I=I||Prototype.emptyFunction;G.onSuccess=function(P,O){I(P,O);Form.displayErrors(formObj,formObj.__errorDisplay||"element|top",{})};if(DEBUG_MODE){G.onException=function(P,Q){var O=new ModalWin("Ajax.submitForm.oAjaxOpts.onException: An exception occurred:\r\n"+Q.message+"\r\n"+Q.name+"\r\nTried:\r\n"+P.getHeader("X-JSON"),"Exception")}}var A=formObj.getAttribute("action")||window.location.toString();new Ajax.Request(A,G)};Ajax.Updater=Class.create();Object.extend(Object.extend(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(container,url,options){this.container={success:(container.success||container),failure:(container.failure||(container.success?null:container))};this.transport=Ajax.getTransport();this.setOptions(options);this.options[AJAX_UPDATE_CONTAINER_VAR]=container.success||container;var onComplete=this.options.onComplete||Prototype.emptyFunction;this.options.onComplete=(function(transport,param){this.updateContent();if(param){try{eval(param)}catch(e){}}var receiver=this.container[this.success()?"success":"failure"];onComplete(transport,param,receiver)}).bind(this);this.request(url)},updateContent:function(){var B=this.container[this.success()?"success":"failure"];var A=this.transport.responseText;if(!this.options.evalScripts){A=A.stripScripts()}else{try{A.evalScripts()}catch(C){if(DEBUG_MODE){alert("Error occurred in Ajax.Updater.updateContent.evalScripts:"+C.message)}}}if(B=$(B)){if(this.options.insertion){new this.options.insertion(B,A)}else{B.update(A)}}else{if(DEBUG_MODE){alert("Could not find element "+B)}}if(this.success()){if(this.onComplete){setTimeout(this.onComplete.bind(this),10)}}}});Ajax.PeriodicalUpdater=Class.create();Ajax.PeriodicalUpdater.prototype=Object.extend(new Ajax.Base(),{initialize:function(A,C,B){this.setOptions(B);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=A;this.url=C;this.start()},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent()},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments)},updateComplete:function(A){if(this.options.decay){this.decay=(A.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=A.responseText}this.timer=setTimeout(this.onTimerEvent.bind(this),this.decay*this.frequency*1000)},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options)}});function $(B){if(arguments.length>1){for(var A=0,D=[],C=arguments.length;A<C;A++){D.push($(arguments[A]))}return D}var E=window.top;if(typeof B=="string"){B=E.document.getElementById(B)||((B=E.document.getElementsByName(B)).length>1?B:B[0])}return Element.extend(B)}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(F,B){var D=[];var E=document.evaluate(F,$(B)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var C=0,A=E.snapshotLength;C<A;C++){D.push(E.snapshotItem(C))}return D}}document.getElementsByClassName=function(D,A){if(Prototype.BrowserFeatures.XPath){var G=".//*[contains(concat(' ', @class, ' '), ' "+D+" ')]";return document._getElementsByXPath(G,A)}else{var C=($(A)||document.body).getElementsByTagName("*");var F=[],H;for(var B=0,E=C.length;B<E;B++){H=C[B];if(Element.hasClassName(H,D)){F.push(Element.extend(H))}}return F}};if(!window.Element){var Element=new Object()}Element.extend=function(C){if(!C){return }if(_nativeExtensions||C.nodeType==3){return C}if(C!=window&&!C._extended&&C.tagName){var B=Object.clone(Element.Methods),A=Element.extend.cache;if(C.tagName=="FORM"){Object.extend(B,Form.Methods)}if(["INPUT","TEXTAREA","SELECT"].include(C.tagName)){Object.extend(B,Form.Element.Methods)}for(var E in B){var D=B[E];if(document.all&&C.tagName=="FORM"&&typeof C.elements[E]!=="undefined"){if(typeof C[E].length=="number"&&C[E].length){alert("IE - change the name for the "+C[E][0].outerHTML);continue}}if(typeof D=="function"){C[E]=A.findOrStore(D)}}var B=Object.clone(Element.Methods.Simulated),A=Element.extend.cache;for(var E in B){var D=B[E];if("function"==typeof D&&!(E in C)){C[E]=A.findOrStore(D)}}}C._extended=true;return C};Element.extend.cache={findOrStore:function(A){return this[A]=this[A]||function(){return A.apply(null,[this].concat($A(arguments)))}}};Element.Methods={visible:function(A){return $(A).style.display!="none"},toggle:function(A){A=$(A);Element[Element.visible(A)?"hide":"show"](A);return A},hide:function(A){$(A).style.display="none";return A},show:function(A){$(A).style.display="";return A},remove:function(A){A=$(A);A.parentNode.removeChild(A);return A},update:function(B,A){A=typeof A=="undefined"?"":A.toString();B=$(B);switch(true){case B.type&&["text","hidden"].indexOf(B.type.toLowerCase())!=-1:B.value=A.stripScripts();break;default:B.innerHTML=A.stripScripts();break}A=typeof A=="undefined"?"":A.toString();B=$(B);A=A.stripScripts();switch(true){case B.type&&["text","hidden"].indexOf(B.type.toLowerCase())!=-1:B.value=A;break;default:B.innerHTML=A;break}setTimeout(function(){A.evalScripts()},10);return B},replace:function(C,B){C=$(C);if(C.outerHTML){C.outerHTML=B.stripScripts()}else{var A=C.ownerDocument.createRange();A.selectNodeContents(C);C.parentNode.replaceChild(A.createContextualFragment(B.stripScripts()),C)}setTimeout(function(){B.evalScripts()},10);return C},inspect:function(B){B=$(B);var A="<"+B.tagName.toLowerCase();$H({"id":"id","className":"class","name":"name"}).each(function(F){var E=F.first(),C=F.last();var D=(B[E]||"").toString();if(D){A+=" "+C+"="+D.inspect(true)}});return A+">"},recursivelyCollect:function(A,C){A=$(A);var B=[];while(A=A[C]){if(A.nodeType==1){B.push(Element.extend(A))}}return B},ancestors:function(A){return $(A).recursivelyCollect("parentNode")},descendants:function(B,A){B=$(B);return $A(B.getElementsByTagName(A||"*"))},previousSiblings:function(A){return $(A).recursivelyCollect("previousSibling")},nextSiblings:function(A){return $(A).recursivelyCollect("nextSibling")},siblings:function(A){A=$(A);return A.previousSiblings().reverse().concat(A.nextSiblings())},match:function(B,A){B=$(B);if(typeof A=="string"){A=new Selector(A)}return A.match(B)},up:function(B,C,A){B=$(B);return Selector.findElement(B.ancestors(),C,A)},down:function(B,C,A){return Selector.findElement($(B).descendants(),C,A)},previous:function(B,C,A){return Selector.findElement($(B).previousSiblings(),C,A)},next:function(B,C,A){return Selector.findElement($(B).nextSiblings(),C,A)},getElementsBySelector:function(){var A=$A(arguments),B=$(A.shift());return Selector.findChildElements(B,A)},getElementsByClassName:function(A,B){A=$(A);return document.getElementsByClassName(B,A)},getHeight:function(A){A=$(A);return A.offsetHeight},classNames:function(A){return new Element.ClassNames(A)},hasClassName:function(A,B){if(!(A=$(A))){return }var C=A.className;if(C.length==0){return false}if(C==B||C.match(new RegExp("(^|\\s)"+B+"(\\s|$)"))){return true}return false},addClassName:function(A,B){if(!(A=$(A))){return }Element.classNames(A).add(B);return A},removeClassName:function(A,B){if(!(A=$(A))){return }Element.classNames(A).remove(B);return A},observe:function(){Event.observe.apply(Event,arguments);return $A(arguments).first()},stopObserving:function(){Event.stopObserving.apply(Event,arguments);return $A(arguments).first()},cleanWhitespace:function(B){B=$(B);var C=B.firstChild;while(C){var A=C.nextSibling;if(C.nodeType==3&&!/\S/.test(C.nodeValue)){B.removeChild(C)}C=A}return B},empty:function(A){return $(A).innerHTML.match(/^\s*$/)},childOf:function(B,A){B=$(B),A=$(A);while(B=B.parentNode){if(B==A){return true}}return false},scrollTo:function(B){B=$(B);var A=B.x?B.x:B.offsetLeft,C=B.y?B.y:B.offsetTop;window.scrollTo(A,C);return B},getInitStyle:function(C){C=$(C);C._initStyle={};for(var B in C.style){var A;if(["string","number"].indexOf(typeof C.style[B])>-1&&(A=C.getStyle(B))){C._initStyle[B]=A}}},getStyle:function(D,A){D=$(D);var I="";if(typeof A!="string"){var C;var H=["background","backgroundColor","color","display","width","height","textAlign","verticalAlign","visibility","overflow","padding","border","fontFamily","fontWeight"];for(var E=0;E<H.length;E++){var B=H[E];I+=B+":"+(C||Element.getStyle(D,B))+";"}return I}try{I=D.style[A.camelize()]}catch(G){}if(!I){if(document.defaultView&&document.defaultView.getComputedStyle){var F=document.defaultView.getComputedStyle(D,null);I=F?F.getPropertyValue(A):null}else{if(D.currentStyle){I=D.currentStyle[A.camelize()]}}}if(window.opera&&["left","top","right","bottom"].include(A)){if(Element.getStyle(D,"position")=="static"){I="auto"}}return I=="auto"?null:I},setStyle:function(element,style){if(element=$(element)){if(typeof style=="string"){style=style.camelize().trim(";").replace(/\s*;\s*/gm,";");if(style.indexOf(";")!=-1){style=style.replace(/;/gm,"',")}style=style.replace(/:/gm,":'")+"'";eval("style={"+style+"}")}for(var name in style){if(typeof style[name]!="object"&&typeof style[name]!="function"){element.style[name.camelize()]=style[name]}}}return element},getDimensions:function(B){B=$(B);if(B.getStyle("display")!="none"){}var A=B.style;var E=A.visibility;var C=A.position;A.visibility="hidden";A.position="absolute";A.display="";var F=Math.max(B.clientWidth||0,B.offsetWidth||0);var D=Math.max(B.clientHeight||0,B.offsetHeight||0);A.display="none";A.position=C;A.visibility=E;return{width:F,height:D}},makePositioned:function(A){A=$(A);var B=Element.getStyle(A,"position");if(B=="static"||!B){A._madePositioned=true;A.style.position="relative";if(window.opera){A.style.top=0;A.style.left=0}}return A},undoPositioned:function(A){A=$(A);if(A._madePositioned){A._madePositioned=undefined;A.style.position=A.style.top=A.style.left=A.style.bottom=A.style.right=""}return A},makeClipping:function(A){A=$(A);A._overflow=A.style.overflow||"auto";if((Element.getStyle(A,"overflow")||"visible")!="hidden"){A.style.overflow="hidden"}return A},undoClipping:function(A){A=$(A);if(!A._overflow){return A}A.style.overflow=A._overflow=="auto"?"":A._overflow;A._overflow=null;return A},createEditableSelect:function(B){if((B=$(B)).nodeType!=1||B.tagName.toLowerCase()!="select"){return }var A=document.createElement("input");A.name=B.name;var F=Position.find(B);var D=Element.getDimensions(B);B.parentNode.insertBefore(A,B);var C=parseInt(Element.getStyle(B,"border-left-width")||0)+parseInt(Element.getStyle(A,"border-left-width")||0);var E=18;Element.setStyle(A,{position:"absolute",zIndex:B.style.zIndex+2,left:F.left+C+"px",width:D.width-E+"px",border:"none"});Event.listen(B,"change",(function(){this.value=B.options[B.selectedIndex].text}).bind(A),false);return A},getTextContent:function(A){if(A&&A.nodeType){return A.text||A.textContent||(function(D){var C="";if(D==null){return C}var E=D.childNodes;var B=0;while(B<E.length){var F=E.item(B);switch(F.nodeType){case 1:case 5:C+=arguments.callee(F);break;case 3:case 2:case 4:C+=F.nodeValue;break;case 6:case 7:case 8:case 9:case 10:case 11:case 12:break}B++}return C}(A))}else{return null}},setShortcut:function(B,A){B=$(B);A=(A||"").replace(/([\s]|[^a-z0-9\+])+/gim,"").toUpperCase();if(A!=""&&B.focus){A=A.split("+");var D=A[0].toLowerCase();var C=A[1].substr(0,1);if(A.length==2&&D=="alt"){B.setAttribute("accesskey",C);return }Event.listen(document,"keydown",function(E){Event.getEvent((E=E||window.event));if(((key=Event.key(E)).letter)==C&&Event[D+"Key"]){B.focus();delete (key);return false}delete (key)},true)}}};Element.Methods.prev=Element.Methods.previous;Element.Methods.Simulated={hasAttribute:function(A,B){return $(A).getAttributeNode(B).specified}};if(document.all){Element.Methods.update=function(C,B){C=$(C);B=typeof B=="undefined"?"":B.toString();var A=C.tagName.toUpperCase();if(["TABLE","THEAD","TBODY","TR","TD"].indexOf(A)>-1){var D=document.createElement("div");switch(A){case"TABLE":D.innerHTML="<table>"+B.stripScripts()+"</table>";depth=1;break;case"THEAD":D.innerHTML="<table><thead>"+B.stripScripts()+"</thead></table>";depth=2;break;case"TBODY":D.innerHTML="<table><tbody>"+B.stripScripts()+"</tbody></table>";depth=2;break;case"TR":D.innerHTML="<table><tbody><tr>"+B.stripScripts()+"</tr></tbody></table>";depth=3;break;case"TD":D.innerHTML="<table><tbody><tr><td>"+B.stripScripts()+"</td></tr></tbody></table>";depth=4}$A(C.childNodes).each(function(E){C.removeChild(E)});depth.times(function(){D=D.firstChild});$A(D.childNodes).each(function(E){C.appendChild(E)})}else{B=B.stripScripts();switch(true){case C.type&&["text","hidden"].indexOf(C.type.toLowerCase())!=-1:C.value=B;break;default:C.innerHTML=B;break}}setTimeout(function(){B.evalScripts()},10);return C}}Object.extend(Element,Element.Methods);var _nativeExtensions=false;if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){["","Form","Input","TextArea","Select"].each(function(B){var C="HTML"+B+"Element";if(window[C]){return }var A=window[C]={};A.prototype=document.createElement(B?B.toLowerCase():"div").__proto__})}Element.addMethods=function(A){Object.extend(Element.Methods,A||{});function B(F,D,C){C=C||false;var E=Element.extend.cache;for(var H in F){var G=F[H];if(!C||!(H in D)){D[H]=E.findOrStore(G)}}}if(typeof HTMLElement!="undefined"){B(Element.Methods,HTMLElement.prototype);B(Element.Methods.Simulated,HTMLElement.prototype,true);B(Form.Methods,HTMLFormElement.prototype);[HTMLInputElement,HTMLTextAreaElement,HTMLSelectElement].each(function(C){B(Form.Element.Methods,C.prototype)});_nativeExtensions=true}};var Toggle=new Object();Toggle.display=Element.toggle;Element.removeClipping=Element.undoClipping;Abstract.Insertion=function(A){this.adjacency=A};Abstract.Insertion.prototype={initialize:function(B,C){this.element=$(B);this.content=C.stripScripts();if(this.adjacency&&this.element.insertAdjacentHTML){try{this.element.insertAdjacentHTML(this.adjacency,this.content)}catch(D){var A=this.element.tagName.toLowerCase();if(A=="tbody"||A=="tr"){this.insertContent(this.contentFromAnonymousTable())}else{throw D}}}else{this.range=this.element.ownerDocument.createRange();if(this.initializeRange){this.initializeRange()}this.insertContent([this.range.createContextualFragment(this.content)])}setTimeout(function(){C.evalScripts()},10)},contentFromAnonymousTable:function(){var A=document.createElement("div");A.innerHTML="<table><tbody>"+this.content+"</tbody></table>";return $A(A.childNodes[0].childNodes[0].childNodes)}};var Insertion=new Object();Insertion.Before=Class.create();Insertion.Before.prototype=Object.extend(new Abstract.Insertion("beforeBegin"),{initializeRange:function(){this.range.setStartBefore(this.element)},insertContent:function(A){A.each((function(B){this.element.parentNode.insertBefore(B,this.element)}).bind(this))}});Insertion.Top=Class.create();Insertion.Top.prototype=Object.extend(new Abstract.Insertion("afterBegin"),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(true)},insertContent:function(A){A.reverse(false).each((function(B){this.element.insertBefore(B,this.element.firstChild)}).bind(this))}});Insertion.Bottom=Class.create();Insertion.Bottom.prototype=Object.extend(new Abstract.Insertion("beforeEnd"),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(this.element)},insertContent:function(A){A.each((function(B){this.element.appendChild(B)}).bind(this))}});Insertion.After=Class.create();Insertion.After.prototype=Object.extend(new Abstract.Insertion("afterEnd"),{initializeRange:function(){this.range.setStartAfter(this.element)},insertContent:function(A){A.each((function(B){this.element.parentNode.insertBefore(B,this.element.nextSibling)}).bind(this))}});Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(A){this.element=$(A)},_each:function(A){this.element.className.split(/\s+/).select(function(B){return B.length>0})._each(A)},set:function(A){this.element.className=A},add:function(A){if(this.include(A)){return }this.set($A(this).concat(A).join(" "))},remove:function(A){if(!this.include(A)){return }this.set($A(this).without(A).join(" "))},toString:function(){return $A(this).join(" ")}};Object.extend(Element.ClassNames.prototype,Enumerable);var Selector=Class.create();Selector.prototype={initialize:function(A){this.params={classNames:[]};this.expression=A.toString().strip();this.parseExpression();this.compileMatcher()},parseExpression:function(){function G(H){throw"Parse error in selector: "+H}if(this.expression==""){G("empty expression")}var F=this.params,E=this.expression,B,A,D,C;while(B=E.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^"]*)"|([^\]\s]*)))?\]$/i)){F.attributes=F.attributes||[];F.attributes.push({name:B[2],operator:B[3],value:B[4]||B[5]||""});E=B[1]}if(E=="*"){return this.params.wildcard=true}while(B=E.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)){A=B[1],D=B[2],C=B[3];switch(A){case"#":F.id=D;break;case".":F.classNames.push(D);break;case"":case undefined:F.tagName=D.toUpperCase();break;default:G(E.inspect())}E=C}if(E.length>0){G(E.inspect())}},buildMatchExpression:function(){var D=this.params,C=[],B;if(D.wildcard){C.push("true")}if(B=D.id){C.push("element.id == "+B.inspect())}if(B=D.tagName){C.push("element.tagName.toUpperCase() == "+B.inspect())}if((B=D.classNames).length>0){for(var A=0;A<B.length;A++){C.push("Element.hasClassName(element, "+B[A].inspect()+")")}}if(B=D.attributes){B.each(function(F){var G="element.getAttribute("+F.name.inspect()+")";var E=function(H){return G+" && "+G+".split("+H.inspect()+")"};switch(F.operator){case"=":C.push(G+" == "+F.value.inspect());break;case"~=":C.push(E(" ")+".include("+F.value.inspect()+")");break;case"|=":C.push(E("-")+".first().toUpperCase() == "+F.value.toUpperCase().inspect());break;case"!=":C.push(G+" != "+F.value.inspect());break;case"":case undefined:C.push(G+" != null");break;default:throw"Unknown operator "+F.operator+" in selector"}})}return C.join(" && ")},compileMatcher:function(){this.match=new Function("element","if (!element.tagName) return false;       return "+this.buildMatchExpression())},findElements:function(D){var C;if(C=$(this.params.id)){if(this.match(C)){if(!D||Element.childOf(C,D)){return[C]}}}D=(D||document).getElementsByTagName(this.params.tagName||"*");var B=[];for(var A=0,E=D.length;A<E;A++){if(this.match(C=D[A])){B.push(Element.extend(C))}}return B},toString:function(){return this.expression}};Object.extend(Selector,{matchElements:function(B,C){var A=new Selector(C);return B.select(A.match.bind(A)).collect(Element.extend)},findElement:function(B,C,A){if(typeof C=="number"){A=C,C=false}return Selector.matchElements(B,C||"*")[A||0]},findChildElements:function(A,B){return B.map(function(C){return C.strip().split(/\s+/).inject([null],function(E,F){var D=new Selector(F);return E.inject([],function(H,G){return H.concat(D.findElements(G||A))})})}).flatten()}});function $$(){return Selector.findChildElements(document,$A(arguments))}var Form={reset:function(A){$(A).reset();return A},serializeElements:function(A){return A.inject([],function(D,C){var B=Form.Element.serialize(C);if(B){D.push(B)}return D}).join("&")}};Form.Methods={serialize:function(A){return Form.serializeElements($(A).getElements())},populate:function(D,E,C){if((D=$(D))&&D.tagName.toLowerCase()=="form"&&D.length){C=((C&&typeof C.join=="function")?C:[]);for(var B=0,A=D.getElements();B<A.length;B++){if(typeof E[A[B].name]!="undefined"){A[B].setValue(E[A[B].name])}else{if(["button","submit","reset","radio","checkbox"].indexOf(A[B].getAttribute("type"))==-1&&C.indexOf(A[B].name)==-1){A[B].value=""}}}}return D},clear:function(B,A){return Form.populate(B,{},A)},getElements:function(A){return $A($(A).getElementsByTagName("*")).inject([],function(B,C){if(Form.Element.Serializers[C.tagName.toLowerCase()]){B.push(Element.extend(C))}return B})},getInputs:function(G,C,D){G=$(G);var A=G.getElementsByTagName("input");if(!C&&!D){return A}var H=new Array();for(var E=0,F=A.length;E<F;E++){var B=A[E];if((C&&B.type!=C)||(D&&B.name!=D)){continue}H.push(Element.extend(B))}return H},disable:function(A){A=$(A);A.getElements().each(function(B){B.blur();B.disabled="true"});return A},enable:function(A){A=$(A);A.getElements().each(function(B){B.disabled=""});return A},findFirstElement:function(A){return $(A).getElements().find(function(B){return B.type!="hidden"&&!B.disabled&&["input","select","textarea"].include(B.tagName.toLowerCase())})},focusFirstElement:function(A){A=$(A);A.findFirstElement().activate();return A},validate:function(A){if(A=$(A)){var B=true,C={};$A(A.elements).each(function(D){if(!Form.Element.validate(D)){B=false;C[D.name]=D._errors}});if(!B){A._errors=C}return B}return true},prepareInstantValidation:function(A){if((A=$(A))){$A(A.elements).each(function(B){B.onblur=(function(){var E=this.name,C={},D=Object.extend({},(A._errors||{}));if(!$(this).validate()){$(this).showErrors(A.__errorDisplay)}else{$(this).clearErrorDisplay()}}).bind(B)})}},hideErrors:function(A,F){F=F||A.__errorDisplay||"element|top";F.split("|");var H=A.ownerDocument.window,D,G=F[0]=="element",C=(F[3]||"").toLowerCase(),K=(F[2]||"color:red").toLowerCase();for(var E=0;E<A.length;E++){var J,I,B=$(A[E]);if(J=$(B.name+"_error")){J.update("");J.hide()}if(B.initStyle){B.setStyle(B.initStyle)}else{if(B.hasClassName(C)){B.removeClassName(C)}}if((I=($("l_"+B.name)))&&I._initStyle){for(var L in I._initStyle){I.style[L]=I._initStyle[L]}}}},displayErrors:function(B,G,M){if(!M){return }if(!(B=$(B))){return }var I=window.top;if(typeof $!="function"){$=I.$}G=(M["<!--display-->"]||G||"element|top").split("|");if(M["<!--display-->"]){M["<!--display-->"]=null}var E,H=G.first()=="element",D=(G[3]||"").toLowerCase(),P=(G[2]||"color:red").toLowerCase();if(!H&&G[0]!="alert"&&!(E=$(G[1]))){if(DEBUG_MODE){throw ({message:"\""+G[1]+"\" does not exist"})}return }if(E){if(P.length>0&&P.indexOf(":")!=-1){Element.setStyle(E,P)}else{if(P.length>0&&!Element.hasClassName(E,P)){Element.addClassName(E,P)}}var L=M;if(typeof L.join!="function"){L=Object.properties(L)}Element.update(E,L.join("<br>"))}if(G[0].toLowerCase()=="alert"){for(var F in M){var C=B[F];if(typeof M[F]=="string"){alert(M[F])}}return }for(var F=0;F<B.length;F++){var C=$(B[F]);if(typeof M[C.name]=="undefined"){if(N=$(C.name+"_error")){N.update("");N.hide()}if(C.initStyle){C.setStyle(C.initStyle)}else{if(C.hasClassName(D)){C.removeClassName(D)}}continue}if(H){var N=($(C.name+"_error")||document.createElement("span"));var A=N.id=="";if(A){N.id=C.name+"_error";if(P.length>0&&P.indexOf(":")!=-1){N.setAttribute("style",P);if(document.all){var O={};P.split(";").each(function(Q){if(typeof Q=="string"&&Q.length){Q=Q.split(":");O[Q.first()]=Q.last()}});Element.setStyle(N,O)}}else{if(P.length>0&&!Element.hasClassName(N,P)){N.addClassName(P)}}N.hide();switch(G[1]){case"self":delete (N);break;case"right":if(C.nextSibling){C.parentNode.insertBefore(N,C.nextSibling)}else{C.parentNode.insertBefore(N,C);C.parentNode.insertBefore(C,N)}break;case"left":C.parentNode.insertBefore(N,C);break;case"bottom":C.parentNode.appendChild(N);var J=Position.find(C).left-Position.find(C.parentNode).left;Position.relativize(N);Element.setStyle(N,{left:J+"px"});break;default:C.parentNode.insertBefore(N,C.parentNode.childNodes[0]);var J=Position.find(C).left-Position.find(C.parentNode).left;Position.relativize(N);Element.setStyle(N,{left:J+"px"});break}}}if(C.name!=""&&typeof M[C.name]=="string"&&N.innerHTML.indexOf(M[C.name])==-1){if(H){switch(G[1]){case"right":case"left":break;case"bottom":M[C.name]="<br>"+M[C.name];break;default:M[C.name]+="<br>";break}N.update("");N.update(M[C.name]);N.show(N)}else{if(G[0]=="alert"){alert(M[C.name])}else{}}var K;if(P.length>0&&P.indexOf(":")!=-1){if(K=($("l_"+C.name))){K.getInitStyle();K.setStyle("color:red")}C.initStyle=P.replace(/:([^;]*);/gim,":;");C.setStyle(P);Event.listen(C,"focus",C._focus=(function(){Element.setStyle(this,this.initStyle);try{Element.setStyle("l_"+this.name,"color:")}catch(Q){}}).bind(C));C.onblur=(function(){return true;var T=this.name,Q={},R=Object.extend({},M);if(!Form.Element.validate(this)){Element.setStyle(this,P);try{Q=this._errors;Element.setStyle("l_"+this.name,"color:red");R[T]=Q}catch(S){}}else{delete (R[T])}Form.displayErrors(this.form,G.join("|"),R)}).bind(C)}else{if(P.length>0&&!Element.hasClassName(C,P)){C.addClassName(P);C.onfocus=(function(){this.removeClassName(this,P)})}}}}}};Form.focusFirst=Form.focusFirstElement;Object.extend(Form,Form.Methods);Form.Element={focus:function(A){$(A).focus();return A},select:function(A){$(A).select();return A}};Form.Element.Methods={serialize:function(B){B=$(B);if(B.disabled){return""}var D=B.tagName.toLowerCase();var C=Form.Element.Serializers[D](B);if(C){var A=encodeURIComponent(C[0]);if(A.length==0){return }if(C[1].constructor!=Array){C[1]=[C[1]]}return C[1].map(function(E){return A+"="+encodeURIComponent(E)}).join("&")}},clearErrorDisplay:function(A){if((A=$(A))&&(A._initStyle||A._initErrStyle||A._errorContainer)){if(A._initStyle){A[((typeof A._initStyle=="string")?"removeClassName":"setStyle")].apply(A,[A._initStyle])}var B;if(B=$(A.name+"_error")){B.hide();B.update("")}if(A._errorContainer){if(A._errorContainer._errCnt>0){A._errorContainer._errCnt--}if(A._errorContainer._errCnt==0){A._errorContainer.hide()}}}},showErrors:function(D,E){if(!(D=$(D))||!D._errors){return }E=E||"element|top|color:red;";var C=E.split("|"),A=(C[1]||"top"),B=C[2]||"",I=C[3]||"";if(!D._errorStyle&&B.length){if(B.indexOf(":")!=-1){var M=B;B={};D._initErrStyle={};M.split(";").each(function(N){if(typeof N=="string"&&N.length){N=N.split(":");var O=N.first();D._initErrStyle[O]=D.getStyle(O);B[O]=N.last()}})}else{D._initErrStyle=B}}else{B=D._errorStyle}if(!D._elementStyle&&I.length){if(I.indexOf(":")!=-1){var M=I;I={};D._initStyle={};M.split(";").each(function(N){if(typeof N=="string"&&N.length){N=N.split(":");var O=N.first();D._initStyle[O]=D.getStyle(O);I[O]=N.last()}})}else{D._initStyle=I}}else{I=D._elementStyle}var F=((typeof B=="string")?"addClassName":"setStyle"),K=((typeof I=="string")?"addClassName":"setStyle");switch(C[0].toLowerCase()){case"element":var G=D._errors;var J=($(D.name+"_error")||$(document.createElement("span"))),L=false;if(L=(J.id=="")){J.id=D.name+"_error";J.hide()}switch(A=A.toLowerCase()){case"self":J=D;G=$F(D);break;case"right":if(D.nextSibling){D.parentNode.insertBefore(J,D.nextSibling)}else{D.parentNode.insertBefore(J,D);D.parentNode.insertBefore(D,J)}break;case"left":D.parentNode.insertBefore(J,D);break;case"bottom":D.parentNode.appendChild(J);var H=Position.find(D).left-Position.find(D.parentNode).left;Position.relativize(J);Element.setStyle(J,{left:H+"px"});G="<br>"+G;break;default:D.parentNode.insertBefore(J,D);var H=Position.find(D).left-Position.find(D.parentNode).left;Position.relativize(J);Element.setStyle(J,{left:H+"px"});G=G+"<br>";break}J.update(G);J.show();J[F].apply(J,[B]);D[K].apply(D,[I]);break;case"container":if(A=$(A)){if(typeof A._errCnt=="undefined"){A._errCnt=0}if(typeof D._errCnt=="undefined"){D._errCnt=0}var J=($(D.name+"_error")||$(document.createElement("div"))),L=false;if(L=(J.id=="")){J.id=D.name+"_error";J.hide();A.appendChild(J);A._errCnt++}D._errCnt++;D._errorContainer=A;D[K].apply(D,[I]);J.update(D._errors);J.show();if(A.style.display=="none"){A[F].apply(A,[B]);A.show()}}break}},validate:function(B){if(B._validated||(B.type&&["hidden","button","image","submit"].indexOf(B.type.toLowerCase())>-1)){return(B._validated)?B._errors==undefined||B._errors==null:true}var C=true,A="";B._errors=null;$A(B.attributes).each(function(E){if(!C){return C}var D=E.name.toLowerCase(),H=E.value;if(D=="required"&&!H.length){H=1}switch(true){case D=="required"&&["false","0"].indexOf(H)==-1&&["checkbox","radio"].indexOf(B.type.toLowerCase())>-1&&!B.checked:var G=$(B.name);if(G.length){var F=true;$A(G).each(function(I){I._validated=true;if(F&&I.checked){F=false}});if(F){B._errors="Cannot be empty";return C=false}}else{if(!B.checked){B._errors="Cannot be empty";return C=false}}break;case D=="required"&&["false","0"].indexOf(H)==-1&&B.value.trim()=="":B._errors="Cannot be empty";return C=false;break;case D=="validate"&&H&&B.value.trim()!="":H.split("|").each(function(I){if(!B.value.is(I)&&StringValidator.errorMessages[I]!=undefined){C=false;B._errors=StringValidator.errorMessages[I];return false}});return C;break}});return C},addOption:function(B,D,E,A){if(!(B=$(B))||!B.options){return false}if(typeof parseInt(A||-1)=="number"){A=(A>=0)?A:B.options.length}else{A=B.options.length}var C=document.createElement("option");if(B.options[A]){C=B.insertBefore(C,B.options[A])}else{if(B.options.add){B.options.add(C)}else{B.appendChild(C)}}C.text=D||"";C.value=E||D||"";return C},getValue:function(A){A=$(A);var C=A.tagName.toLowerCase();var B=Form.Element.Serializers[C](A);if(B){return B[1]}},setValue:function(A,B){A=$(A);var C=A.tagName.toLowerCase();if(Form.Element.Unserializers[C]){Form.Element.Unserializers[C](A,B)}return A},clear:function(A){$(A).value="";return A},present:function(A){return $(A).value!=""},activate:function(A){A=$(A);A.focus();if(A.select){A.select()}return A},disable:function(A){A=$(A);A.disabled=true;return A},enable:function(A){A=$(A);A.blur();A.disabled=false;return A}};Object.extend(Form.Element,Form.Element.Methods);var Field=Form.Element;Form.Element.Unserializers={input:function(C,E){var D=C.type.toLowerCase();switch(D){case"checkbox":case"radio":var E=E||[],B=document.getElementsByName(C.name);if(typeof E=="string"){E=[E]}for(var A=0;A<B.length;A++){$A(E).each(function(G,F){if(G==B[A].value){B[A].checked=true}else{if(D=="checkbox"){B[A].checked=false}}})}break;case"image":case"submit":case"password":case"file":break;default:C.value=((typeof E.join=="function")?E.join(":"):E.valueOf())}return C},textarea:function(A,B){A.innerHTML=A.value=(B||"").toString()},select:function(A,B){return Form.Element.Unserializers[A.type=="select-one"?"selectOne":"selectMany"](A,B)},selectOne:function(A,B){A.value=B},selectMany:function(A,B){B=$A(B||[]);$A(A.getElementsByTagName("option")).each(function(C){C.selected=B.indexOf(C.value)>-1})}};Form.Element.Serializers={input:function(A){switch(A.type.toLowerCase()){case"checkbox":case"radio":return Form.Element.Serializers.inputSelector(A);case"image":case"submit":if(typeof A.form.__submittedBy!="undefined"){return(A==A.form.__submittedBy)?Form.Element.Serializers.textarea(A):""}else{return Form.Element.Serializers.inputSelector(A)}break;default:return Form.Element.Serializers.textarea(A)}return false},inputSelector:function(A){if(A.checked){return[A.name,A.value]}},textarea:function(A){return[A.name,A.value]},select:function(A){return Form.Element.Serializers[A.type=="select-one"?"selectOne":"selectMany"](A)},selectOne:function(C){var D="",B,A=C.selectedIndex;if(A>=0){B=Element.extend(C.options[A]);D=B.hasAttribute("value")?B.value:B.text}return[C.name,D]},selectMany:function(C){var D=[];for(var B=0;B<C.length;B++){var A=Element.extend(C.options[B]);if(A.selected){D.push(A.hasAttribute("value")?A.value:A.text)}}return[C.name,D]}};var $F=Form.Element.getValue;Abstract.TimedObserver=function(){};Abstract.TimedObserver.prototype={initialize:function(A,B,C){this.frequency=B;this.element=$(A);this.callback=C;this.lastValue=this.getValue();this.registerCallback()},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000)},onTimerEvent:function(){var A=this.getValue();if(this.lastValue!=A){this.callback(this.element,A);this.lastValue=A}}};Form.Element.Observer=Class.create();Form.Element.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.Element.getValue(this.element)}});Form.Observer=Class.create();Form.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.serialize(this.element)}});Abstract.EventObserver=function(){};Abstract.EventObserver.prototype={initialize:function(A,B){this.element=$(A);this.callback=B;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks()}else{this.registerCallback(this.element)}},onElementEvent:function(){var A=this.getValue();if(this.lastValue!=A){this.callback(this.element,A);this.lastValue=A}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback.bind(this))},registerCallback:function(A){if(A.type){switch(A.type.toLowerCase()){case"checkbox":case"radio":Event.observe(A,"click",this.onElementEvent.bind(this));break;default:Event.observe(A,"change",this.onElementEvent.bind(this));break}}}};Form.Element.EventObserver=Class.create();Form.Element.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.Element.getValue(this.element)}});Form.EventObserver=Class.create();Form.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.serialize(this.element)}});if(!window.Event){var Event=new Object()}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_SHIFT:16,KEY_CTRL:17,KEY_ALT:18,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_META_WIN:91,KEY_META_MAC:224,ctrlDown:function(C){C=C||Event;var B=false;if(typeof C.ctrlKey=="boolean"){B=C.ctrlKey}else{if(typeof C.modifiers!="undefined"){var A=(C.modifiers+32).toString(2).substring(3,6);B=(A.charAt(1)=="1")}}Event.ctrlKey=B;return B},shiftDown:function(C){C=C||Event;var B=false;if(typeof C.shiftKey=="boolean"){B=C.shiftKey}else{if(typeof C.modifiers!="undefined"){var A=(C.modifiers+32).toString(2).substring(3,6);B=(A.charAt(0)=="1")}}Event.shiftKey=B;return B},altDown:function(C){C=C||Event;var B=false;if(typeof C.altKey=="boolean"){B=C.altKey}else{if(typeof C.modifiers!="undefined"){var A=(C.modifiers+32).toString(2).substring(3,6);B=(A.charAt(2)=="1")}}Event.altKey=B;return B},metaDown:function(A){A=A||Event;return BrowserDetect.OS=="Mac"&&(A.metaKey||false)},getEvent:function(A){if(!A){var A=window.event}Event=Object.extend(Event,A);if(["keyup","keydown","mouseup","mousedown"].indexOf(Event.type)!=-1){Event.ctrlDown(A);Event.shiftDown(A);Event.altDown(A)}return A},element:function(B){B=B||Event;var A=B.target||B.srcElement;if(A.nodeType==3){A=A.parentNode}return $(A)},isLeftClick:function(A){A=A||Event;return(((A.which)&&(A.which==1))||((A.button)&&(A.button==1)))},pointerX:function(A){A=A||Event;return A.pageX||(A.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft))},pointerY:function(A){A=A||Event;return A.pageY||(A.clientY+(document.documentElement.scrollTop||document.body.scrollTop))},stop:function(A){A=A||Event;if(A.preventDefault){A.preventDefault();A.stopPropagation()}else{A.returnValue=false;A.cancelBubble=true}},findElement:function(C,B){C=C||Event;var A=Event.element(C);while(A.parentNode&&(!A.tagName||(A.tagName.toUpperCase()!=B.toUpperCase()))){A=A.parentNode}return A},observers:false,_observeAndCache:function(D,C,B,A){if(!this.observers){this.observers=[]}if(D.addEventListener){this.observers.push([D,C,B,A]);D.addEventListener(C,B,A)}else{if(D.attachEvent){this.observers.push([D,C,B,A]);D.attachEvent("on"+C,B)}}},unloadCache:function(){if(!Event.observers){return }for(var A=0,B=Event.observers.length;A<B;A++){Event.stopObserving.apply(this,Event.observers[A]);Event.observers[A][0]=null}Event.observers=false},key:function(B){B=B||window.event;var A={code:null,letter:null};if(["keydown"].indexOf(B.type)>-1){if(B.keyCode){A.code=B.keyCode}else{if(B.which){A.code=B.which}}A.letter=String.fromCharCode(A.code)}return A},observe:function(D,C,B,A){D=$(D);A=A||false;if(C=="keypress"&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||D.attachEvent)){C="keydown"}Event._observeAndCache(D,C,B,A)},stopObserving:function(D,C,B,A){D=$(D);A=A||false;if(C=="keypress"&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||D.detachEvent)){C="keydown"}if(D.removeEventListener){D.removeEventListener(C,B,A)}else{if(D.detachEvent){try{D.detachEvent("on"+C,B)}catch(E){}}}}});Event.listen=Event.observe;Event.stopListen=Event.stopObserving;Event.observe(window,"unload",Event.unloadCache,false);Event.observe(window,"mouseover",function(A){Event.getEvent(A||window.event)},false);Event.observe(window,"mousedown",function(A){Event.getEvent(A||window.event)},false);Event.observe(window,"mouseup",function(A){Event.getEvent(A||window.event)},false);Event.observe(document,"mouseover",function(A){Event.getEvent(A||window.event)},false);Event.observe(document,"mousedown",function(A){Event.getEvent(A||window.event)},false);Event.observe(document,"mouseup",function(A){Event.getEvent(A||window.event)},false);var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},realOffset:function(B){var A=0,C=0;do{A+=B.scrollTop||0;C+=B.scrollLeft||0;B=B.parentNode}while(B);return[C,A]},cumulativeOffset:function(B){var A=0,C=0;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;B=B.offsetParent}while(B);return[C,A]},positionedOffset:function(B){var A=0,D=0;do{A+=B.offsetTop||0;D+=B.offsetLeft||0;B=B.offsetParent;if(B){if(B.tagName=="BODY"){break}var C=Element.getStyle(B,"position");if(C=="relative"||C=="absolute"){break}}}while(B);return[D,A]},offsetParent:function(A){if(A.offsetParent){return A.offsetParent}if(A==document.body){return A}while((A=A.parentNode)&&A!=document.body){if(Element.getStyle(A,"position")!="static"){return A}}return document.body},within:function(B,A,C){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(B,A,C)}this.xcomp=A;this.ycomp=C;this.offset=this.cumulativeOffset(B);return(C>=this.offset[1]&&C<this.offset[1]+B.offsetHeight&&A>=this.offset[0]&&A<this.offset[0]+B.offsetWidth)},withinIncludingScrolloffsets:function(B,A,D){var C=this.realOffset(B);this.xcomp=A+C[0]-this.deltaX;this.ycomp=D+C[1]-this.deltaY;this.offset=this.cumulativeOffset(B);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+B.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+B.offsetWidth)},overlap:function(B,A){if(!B){return 0}if(B=="vertical"){return((this.offset[1]+A.offsetHeight)-this.ycomp)/A.offsetHeight}if(B=="horizontal"){return((this.offset[0]+A.offsetWidth)-this.xcomp)/A.offsetWidth}},page:function(D){var A=0,C=0;var B=D;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;if(B.offsetParent==document.body){if(Element.getStyle(B,"position")=="absolute"){break}}}while(B=B.offsetParent);B=D;do{if(!window.opera||B.tagName=="BODY"){A-=B.scrollTop||0;C-=B.scrollLeft||0}}while(B=B.parentNode);return[C,A]},find:function(A){A=$(A);var C=curtop=0;if(A.offsetParent){C=A.offsetLeft;curtop=A.offsetTop;while(A=A.offsetParent){C+=A.offsetLeft;curtop+=A.offsetTop}}else{C=A.offsetLeft||A.clientLeft;curtop=A.offsetTop||A.clientTop}var B={left:C,top:curtop,x:C,y:curtop};return B},clone:function(C,E){var A=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});C=$(C);var D=Position.page(C);E=$(E);var F=[0,0];var B=null;if(Element.getStyle(E,"position")=="absolute"){B=Position.offsetParent(E);F=Position.page(B)}if(B==document.body){F[0]-=document.body.offsetLeft;F[1]-=document.body.offsetTop}if(A.setLeft){E.style.left=(D[0]-F[0]+A.offsetLeft)+"px"}if(A.setTop){E.style.top=(D[1]-F[1]+A.offsetTop)+"px"}if(A.setWidth){E.style.width=C.offsetWidth+"px"}if(A.setHeight){E.style.height=C.offsetHeight+"px"}},absolutize:function(B){B=$(B);if(B.style.position=="absolute"){return }Position.prepare();var D=Position.positionedOffset(B);var F=D[1];var E=D[0];var C=B.clientWidth;var A=B.clientHeight;B._originalLeft=E-parseFloat(B.style.left||0);B._originalTop=F-parseFloat(B.style.top||0);B._originalWidth=B.style.width;B._originalHeight=B.style.height;B.style.position="absolute";B.style.top=F+"px";B.style.left=E+"px";B.style.width=C+"px";B.style.height=A+"px"},relativize:function(A){A=$(A);if(A.style.position=="relative"){return }Position.prepare();A.style.position="relative";var C=parseFloat(A.style.top||0)-(A._originalTop||0);var B=parseFloat(A.style.left||0)-(A._originalLeft||0);A.style.top=C+"px";A.style.left=B+"px";if(A._originalHeight){A.style.height=A._originalHeight+"px"}if(A._originalWidth){A.style.width=A._originalWidth+"px"}}};if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){Position.cumulativeOffset=function(B){var A=0,C=0;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;if(B.offsetParent==document.body){if(Element.getStyle(B,"position")=="absolute"){break}}B=B.offsetParent}while(B);return[C,A]}}Element.addMethods();document.__selectionsCount=0;var tmpid,Selection=Class.create();Selection.prototype={selectsCollection:[],options:{rootElement:null,selectedClassName:null,collect:null,singleSelection:true,onAdd:Prototype.emptyFunction,onRemove:Prototype.emptyFunction,rangeStarted:false,toggleSelectionCheckbox:null},initialize:function(A,D,I){Selection._veil=($(tmpid="sel_"+(new Date()).getTime().toString().substring(0,10)))||top.document.createElement("div");if(Selection._veil.id==""){(Selection._veil=$(Selection._veil)).id=tmpid;Selection._veil.setStyle({backgroundColor:"green",opacity:0.1,MozOpacity:0.1,MozOpacity:0.1,filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=10)",position:"absolute",display:"none",width:"0",height:"0"});(document.getElementsByTagName("body")[0]||document.childNodes[0]).appendChild(Selection._veil)}this.options.rootElement=$(A);this.options=Object.extend(this.options,((typeof I=="object")?I:{}));var F=[],E=this.options.rootElement;if(!(typeof E=="object")){if(DEBUG_MODE){alert("Selection.prototype: Invalid root element provided ("+A+")")}return false}if(this.options.collect){F=getElementsByAttributes([this.options.collect],E)}else{if(E.tagName.toLowerCase()=="table"){if(!D){D="tr"}var J=E.getElementsByTagName("tbody");if(J.length){F=J[J.length-1].getElementsByTagName(D)}else{F=E.getElementsByTagName(D)}}else{F=E.getElementsByTagName(D)}}var G=this;this.selectsTagName=D;for(var C=0;C<F.length;C++){var H=F[C];if(!D||H.tagName&&H.tagName.toLowerCase()==D.toLowerCase()){this.selectsCollection.push(H);Event.listen(H,"mouseup",(function(K){Event.getEvent(K);if(Event.isLeftClick()){G.add(this,G.options)}}).bind(H),true);Event.listen(H,"mousedown",(function(K){Event.getEvent(K);if(!Event.isLeftClick()&&!this.getAttribute("selected")){G.add(this,G.options)}}).bind(H),true)}}this.options.rootElement.onselectstart=function(){return false};this.options.rootElement.onmousemove=function(L){if(Selection._veil.visible()){var K=Event.pointerX(L=L||window.event),M=Event.pointerY(L);if(K>Selection._veil._left){Selection._veil.style.width=(K-Selection._veil._left)+"px"}else{Selection._veil.style.left=K+"px";Selection._veil.style.width=(Selection._veil._left-K)+"px"}if(M>Selection._veil._top){Selection._veil.style.height=(M-Selection._veil._top)+"px"}else{Selection._veil.style.top=M+"px";Selection._veil.style.height=(Selection._veil._top-M)+"px"}}return false};this.options.rootElement.onmousedown=function(K){Selection._veil._left=Selection._veil.style.left=Event.pointerX(K=K||window.event);Selection._veil._top=Selection._veil.style.top=Event.pointerY(K);if(!this.rangeStarted){Selection._veil.show()}return false};this.options.rootElement.onmouseup=function(K){Selection._veil.hide();Selection._veil.setStyle({width:0,height:0});return false};if(document.__selectionsCount==0){var B=(function(N){Event.getEvent(N);var L=true;var M=(Event.key(N).letter||"").toUpperCase();var K=((BrowserDetect.OS=="Mac")?N.metaKey:Event.ctrlKey);switch(true){case K&&M=="A":this.selectAll();L=false;try{$(this.option.toggleSelectionCheckbox).checked=true}catch(N){}break;case K&&M=="D":this.clear();L=false;try{$(this.option.toggleSelectionCheckbox).checked=false}catch(N){}break}return L}).bind(this);document.onkeydown=B}else{document.onkeydown=function(){return true}}document.__selectionsCount=document.__selectionsCount+1;this.rangeStarted=this.options.rangeStarted;if(typeof Selection.selectedElements=="undefined"){Selection.selectedElements=[];Selection.collection=[];Selection.selectors=[]}Selection.selectors.push(this);Selection.activeSelector=this}};Selection.prototype.collection=Object.extend([],Array.prototype);Selection.prototype.selectedElements=Object.extend([],Array.prototype);Selection.prototype.add=function(C,A){if(!this.rangeStarted&&this.selectedElements.length>1&&!Event.isLeftClick()){return }var D=$(C);if(this.selectsCollection.indexOf(D)==-1){return }if(this.options.rootElement==null){this.options.rootElement=D.parentNode}var F=this.options.collect!=null&&(D[this.options.collect]||D.getAttribute(this.options.collect)||null)!=null;var E=((BrowserDetect.OS=="Mac")?Event.metaKey:Event.ctrlKey);if(D.getAttribute("selected")=="1"){var G=false;switch(true){case (Event.shiftKey&&this.selectedElements.length>1):if(!this.rangeStarted){this.selectRange(this.lastSelected||this.selectedElements.first(),D)}break;case (this.selectedElements.length>1&&!E):this.clearOthers(D);break;case (this.selectedElements.length==1||E):this.remove(D);break;case (this.rangeStarted):G=true;break;default:this.clearOthers(D);break}if(G&&(this.selectedElements.length==1||E)){try{(this.options.onAdd.bind(this))(D)}catch(B){if(DEBUG_MODE){alert("Selection.add.onAdd: "+B.message)}}}}else{D.setAttribute("selected",1);this.selectedElements.push(D);this.onSelect(D);switch(true){case (E):if(this.selectsCollection.indexOf(D)<=this.selectsCollection.indexOf(this.selectedElements.first())){this.lastSelected=D}break;case (this.rangeStarted):break;case (Event.shiftKey&&this.selectedElements.length>1):this.selectRange(this.lastSelected||this.selectedElements.first(),D);break;default:this.clearOthers(D);break}this.collection.push(F=((F)?D[this.options.collect]||D.getAttribute(this.options.collect):D));Selection.selectedElements.push(D);Selection.collection.push(F);try{(this.options.onAdd.bind(this))(D)}catch(B){if(DEBUG_MODE){alert("Selection.add.onAdd: "+B.message)}}}if(!E&&!Event.shiftKey&&!this.rangeStarted&&typeof this.lastSelected!="undefined"){this.lastSelected=null}return D};Selection.prototype.remove=function(B){var C=$(B);var A;if((A=this.selectedElements.indexOf(C))!=-1){C.removeAttribute("selected");this.selectedElements.splice(A,1);this.collection.splice(A,1);this.onUnselect(C);Selection.selectedElements.splice(A=Selection.selectedElements.indexOf(C),1);Selection.collection.splice(A,1);try{(this.options.onRemove.bind(this))(C)}catch(D){if(DEBUG_MODE){alert("Selection.remove.onRemove: "+D.message)}}}};Selection.prototype.clearOthers=function(B){if(this.selectedElements.length==1){return }var C=$(B);for(var A=0,D=this.selectedElements.length;A<D;A++){if(!this.selectedElements[A]){A=0;D=this.selectedElements.length;if(this.selectedElements[A]!=C){this.remove(this.selectedElements[A])}}else{if(this.selectedElements[A]!=C){this.remove(this.selectedElements[A])}else{}}}};Selection.prototype.invert=function(){if(this.selectedElements.length==0){return }rootElement=$(this.options.rootElement);var B=this.selectsCollection;this.rangeStarted=true;for(var A=0;A<B.length;A++){if(this.selectedElements.indexOf(B[A])!=-1){this.remove(B[A])}else{this.add(B[A])}}this.rangeStarted=false};Selection.prototype.clear=function(){if(this.selectedElements.length==0){return }this.selectedElements.each((function(B,A){this.remove(this.selectedElements.first())}).bind(this))};Selection.prototype.selectRange=function(A,E){var D=false,H=false;var B=(E||this.selectedElements[this.selectedElements.length-2]||this.selectsCollection.last());var I=(A||this.selectedElements.last()||this.selectsCollection.first());A=this.selectsCollection.indexOf(I);E=this.selectsCollection.indexOf(B);D=Math.min(A,E);H=Math.max(A,E);var C=this.selectsCollection;this.rangeStarted=true;for(var F=0;F<C.length;F++){if(F>=D&&F<=H){if(!C[F].getAttribute("selected")){this.add(C[F])}}else{try{this.remove(C[F])}catch(G){}}}this.rangeStarted=false};Selection.prototype.selectAll=function(A){this.lastSelected=null;this.options=Object.extend(this.options,((typeof A=="object")?A:{}));var B=this.selectsCollection;this.selectRange(B.first(),B.last())};Selection.prototype.onSelect=function(A){if(this.options.selectedClassName){Element.addClassName(A,this.options.selectedClassName)}};Selection.prototype.onUnselect=function(A){if(this.options.selectedClassName){Element.removeClassName(A,this.options.selectedClassName)}};Selection.prototype.select=Selection.prototype.add;var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(C){var A="";var J,H,F,I,G,E,D;var B=0;C=Base64._utf8_encode(C);while(B<C.length){J=C.charCodeAt(B++);H=C.charCodeAt(B++);F=C.charCodeAt(B++);I=J>>2;G=((J&3)<<4)|(H>>4);E=((H&15)<<2)|(F>>6);D=F&63;if(isNaN(H)){E=D=64}else{if(isNaN(F)){D=64}}A=A+this._keyStr.charAt(I)+this._keyStr.charAt(G)+this._keyStr.charAt(E)+this._keyStr.charAt(D)}return A},decode:function(C){var A="";var J,H,F;var I,G,E,D;var B=0;C=C.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(B<C.length){I=this._keyStr.indexOf(C.charAt(B++));G=this._keyStr.indexOf(C.charAt(B++));E=this._keyStr.indexOf(C.charAt(B++));D=this._keyStr.indexOf(C.charAt(B++));J=(I<<2)|(G>>4);H=((G&15)<<4)|(E>>2);F=((E&3)<<6)|D;A=A+String.fromCharCode(J);if(E!=64){A=A+String.fromCharCode(H)}if(D!=64){A=A+String.fromCharCode(F)}}A=Base64._utf8_decode(A);return A},_utf8_encode:function(B){B=B.replace(/\r\n/g,"\n");var A="";for(var D=0;D<B.length;D++){var C=B.charCodeAt(D);if(C<128){A+=String.fromCharCode(C)}else{if((C>127)&&(C<2048)){A+=String.fromCharCode((C>>6)|192);A+=String.fromCharCode((C&63)|128)}else{A+=String.fromCharCode((C>>12)|224);A+=String.fromCharCode(((C>>6)&63)|128);A+=String.fromCharCode((C&63)|128)}}}return A},_utf8_decode:function(A){var B="";var C=0;var D=c1=c2=0;while(C<A.length){D=A.charCodeAt(C);if(D<128){B+=String.fromCharCode(D);C++}else{if((D>191)&&(D<224)){c2=A.charCodeAt(C+1);B+=String.fromCharCode(((D&31)<<6)|(c2&63));C+=2}else{c2=A.charCodeAt(C+1);c3=A.charCodeAt(C+2);B+=String.fromCharCode(((D&15)<<12)|((c2&63)<<6)|(c3&63));C+=3}}}return B}};var StringValidator={domains:"(com|org|net|mil|edu|info|mobi|travel|a[cdfgilmnoqrstuwxz]|b[abdefghijmnorstwyz]|c[acdfghiklmnoruvxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[adefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnrwyz]|l[abcikrstuvy]|m[acdghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eouw]|s[abcdeghiklmnrtvyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[etu]|z[amw])"};StringValidator=Object.extend({errorMessages:{"notblank":"Cannot be empty","email":"Invalid e-mail address","numeric":"Must be numeric","letters":"Must contain only letters","words":"Must contain only letters and spaces","query":"","zip":"Invalid ZIP code","cn_zip":"Invalid ZIP code","nospace":"Cannot contain blank spaces and new lines","ip":"Invalid IP address","ipv4":"Invalid IPv4 address","ipv6":"Invalid IPv6 address","url":"Invalid URL address"},checks:{"notblank":".","email":"^[A-Z0-9._%-]+@[A-Z0-9.-]+\\."+StringValidator.domains+"$","numeric":"^([d]{0,})$","letters":"^([^a-zA-Z]{0,})$","words":"^([ws]*)$","query":"(?((SELECT|GRANT|DELETE|INSERT|DROP|ALTER|REPLACE|TRUNCATE|UPDATE|CREATE|RENAME|DESCRIBE)s{1,}([A-Za-z0-9|\\\\*| |\\\\,){1,}s{1,}(FROM|INTO|TABLE|DATABASE|INDEX|VIEW){1,}s([A-Z]|[a-z]|[0-9]|\\\\*| |\\\\,|\\\\'|UNION.*SELECT.*FROM))","zip":"^([0-9]{5})$","cn_zip":"^([0-9a-z]{5})$","nospace":"[s\r\n]","ip":"^\b((([d]{1,3}(\b|.)){4})|(((([a-zd]){0,4})(:|\b)){1,8}))\b$","ipv4":"^\b(([d]{1,3}(\b|.)){4})\b$","ipv6":"^\b(((([a-zd]){0,4})(:|\b)){1,8})\b$","url":"^(https?://)?[a-zA-Z0-9]+([a-zA-Z0-9-.]+)?\\."+StringValidator.domains+"$"},validate:function(B,C){if(typeof B!="string"||StringValidator.checks[C]==undefined){if(DEBUG_MODE&&typeof B!="string"){alert(C+" StringValidator::validate: First argument "+typeof B+". Should be a string")}return true}B=B.trim();switch(C){case"ip":var D=new RegExp(StringValidator.checks["ipv4"],"gim");var A=new RegExp(StringValidator.checks["ipv6"],"gim");return D.exec(B)!=null||A.exec(B)!=null;break;case"notblank":return B.length>0;break;default:var D=new RegExp(StringValidator.checks[C],"gim");return D.exec(B)!=null;break}}},StringValidator);var TimedExecutor=Class.create();TimedExecutor.prototype={callback:Prototype.emptyFunction,stopCondition:Prototype.emptyFunction,timeOut:null,frequency:null,callbackArgs:[],initialize:function(C,A,B){this.callback=C;this.stopCondition=A;this.frequency=B*1000;this.callbackArgs=$A(arguments).splice(3);this.timeOut=top.setInterval(this.onTimerEvent.bind(this),this.frequency)},onTimerEvent:function(){if(this.stopCondition()){top.clearInterval(this.timeOut);this.timeOut=null;this.callback.apply(this.callback.prototype,this.callbackArgs)}}};var Dimension={window:Class.create(),document:Class.create(),repeatedCalling:false,getMainDimensions:function(){if(this.repeatedCalling){this.repeatedCalling=false;return }this.repeatedCalling=true;Dimension.window.getDimensions();Dimension.document.getDimensions()},get:function(E){var A,C,D=[],B=$(E);D.push((A=B.offsetWidth));D.push((C=B.offsetHeight));D["w"]=A;D["h"]=C;return D}};Dimension.window={width:0,height:0,getDimensions:function(){var A,C;if(window.innerHeight){A=window.innerWidth;C=window.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){A=document.documentElement.clientWidth;C=document.documentElement.clientHeight}else{if(document.body){A=document.body.clientWidth;C=document.body.clientHeight}}}this.width=A;this.height=C;var B=[A,C];B["x"]=B["width"]=A;B["y"]=B["height"]=C;return B}};Dimension.document={width:0,height:0,getDimensions:function(){var A=Dimension.window.getDimensions();this.width=A[0];this.height=A[1]}};Dimension.getMainDimensions();Array.prototype.toJSONString=function(){var C=["["],A,E,B=this.length,D;for(E=0;E<B;E+=1){D=this[E];switch(typeof D){case"undefined":case"function":case"unknown":break;default:if(A){C.push(",")}C.push(D===null?"null":D.toJSONString());A=true}}C.push("]");return C.join("")};Boolean.prototype.toJSONString=function(){return String(this)};Date.prototype.toJSONString=function(){function A(B){return B<10?"0"+B:B}return"\""+this.getFullYear()+"-"+A(this.getMonth()+1)+"-"+A(this.getDate())+"T"+A(this.getHours())+":"+A(this.getMinutes())+":"+A(this.getSeconds())+"\""};Number.prototype.toJSONString=function(){return isFinite(this)?String(this):"null"};Object.prototype.toJSONString=function(){var B=["{"],A,D,C;for(D in this){if(this.hasOwnProperty(D)){C=this[D];switch(typeof C){case"undefined":case"function":case"unknown":break;default:if(A){B.push(",")}B.push(D.toJSONString(),":",C===null?"null":C.toJSONString());A=true}}}B.push("}");return B.join("")};String.prototype.parseJSON=function(){try{if(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(this)){return eval("("+this+")")}}catch(e){}throw new SyntaxError("parseJSON")};(function(){var A={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\"":"\\\"","\\":"\\\\"};String.prototype.toJSONString=function(){if(/["\\\x00-\x1f]/.test(this)){return"\""+this.replace(/([\x00-\x1f\\"])/g,function(C,B){var D=A[B];if(D){return D}D=B.charCodeAt();return"\\u00"+Math.floor(D/16).toString(16)+(D%16).toString(16)})+"\""}return"\""+this+"\""}})();function ArrayToJSONString(){var C=["["],A,E,B=this.length,D;for(E=0;E<B;E+=1){D=this[E];switch(typeof D){case"undefined":case"function":case"unknown":break;default:if(A){C.push(",")}C.push(D===null?"null":D.toJSONString());A=true}}C.push("]");return C.join("")}function BooleanToJSONString(){return String(this)}function DateToJSONString(){function A(B){return B<10?"0"+B:B}return"\""+this.getFullYear()+"-"+A(this.getMonth()+1)+"-"+A(this.getDate())+"T"+A(this.getHours())+":"+A(this.getMinutes())+":"+A(this.getSeconds())+"\""}function NumberToJSONString(){return isFinite(this)?String(this):"null"}function ObjectToJSONString(){var B=["{"],A,D,C;for(D in this){if(this.hasOwnProperty(D)){C=this[D];switch(typeof C){case"undefined":case"function":case"unknown":break;default:if(A){B.push(",")}B.push(D.toJSONString(),":",C===null?"null":C.toJSONString());A=true}}}B.push("}");return B.join("")}function StringParseJSON(){try{if(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(this)){return eval("("+this+")")}}catch(e){}throw new SyntaxError("parseJSON")}(function(){var A={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\"":"\\\"","\\":"\\\\"};function B(){if(/["\\\x00-\x1f]/.test(this)){return"\""+this.replace(/([\x00-\x1f\\"])/g,function(D,C){var E=A[C];if(E){return E}E=C.charCodeAt();return"\\u00"+Math.floor(E/16).toString(16)+(E%16).toString(16)})+"\""}return"\""+this+"\""}})();function catchError(C,B,A){txt="There was an error on this page.\n\n";txt+="Error: "+C+"\n";txt+="URL: "+B+"\n";txt+="Line: "+A+"\n\n";txt+="Click OK to continue.\n\n";alert(txt);return true}if(DEBUG_MODE){window.onerror=catchError}function getElement(B){if(typeof B=="undefined"||empty(B)){return null}else{if(typeof B=="object"){if(typeof B.tagName!="undefined"){return B}else{return null}}}var A=$(B);if(A==null||typeof A=="undefined"){A=document.getElementsByName(B);if(A.length>0){A=A[0]}else{A=null}}return A}function duplicateNode_tmp(B,I,C){if(typeof B=="undefined"){alert("duplicateNode()::node \""+B+"\" is undefined");return false}var F=(typeof B!="object")?$(B):B;var L=F.cloneNode(true);var N="_"+F.parentNode.childNodes.length;var H=L.innerHTML;var D=/(for|id|name)\s*?=\s*?[\'\"]?([^\s\'\">]*)[\'\"]?/gi;var M=/(for|id|name)\s*?=\s*?[\'\"]?([^\'\"\s>]*)[\'\"]?/i;if(L.innerHTML.match(D)){var K=L.innerHTML.match(D);for(var G in K){if(G!="input"){var O=new RegExp(D);var E=O.exec(K[G]);if(E!=null){var J=K[G].replace(E[2],E[2]+N);L.innerHTML=L.innerHTML.replace(K[G],J)}}}}var A=F.parentNode.childNodes[F.parentNode.childNodes.length-1];F.parentNode.insertBefore(L,A);F.parentNode.insertBefore(A,L);return true}function duplicateNode(O,B,J){if(typeof O=="undefined"){alert("duplicateNode()::node \""+O+"\" is undefined");return false}var T=(typeof O!="object")?$(O):O;var A=new Array();var D=T.parentNode;var R=D.parentNode.getElementsByTagName(T.tagName).length;var W=(typeof B=="undefined")?true:B;var b=(typeof J=="undefined")?true:J;var C="_"+R;var M=R-1;var X="[]";var a=(typeof T.id=="undefined"||T.id=="")?"":T.id;var Z=(typeof T.name=="undefined"||T.name=="")?"":T.name;var L=T.cloneNode(true);if(a!=""){L.id=T.id+C}if(Z!=""){L.name=T.name+C}var K=getChildNodes(L);for(var V in K){var I=K[V];var H=(typeof I.id=="undefined"||I.id=="")?"":I.id;var Y=(typeof I.name=="undefined"||I.name=="")?"":I.name;var Q=(typeof I.tagName!="undefined"&&(in_array(I.tagName.toLowerCase(),["input","textarea","select"])));if(Y!=""&&b==true){var E=(Y.indexOf("[")==-1)?Y:Y.substr(0,Y.indexOf("["));E=(Q==true)?E+"["+(parseInt(R)-1)+"]":E+C;I.name=E;if(Y.indexOf("[")==-1){var G=$(Y);G.name=(Q==true)?Y+"[0]":Y+C}if(H!=""){I.id=H+"_"+C}if(Q==true){var F=I.type;switch(F){case"checkbox":I.checked=false;if(is_numeric(I.value)){I.value=parseInt(I.value)+(parseInt(R)-1)}break;case"select-one":case"select-multiple":I.selectedIndex=0;break;default:if(I.type.toLowerCase()!="file"){I.value=""}break}}}else{if(Y!=""&&b==false){var E;if(Y.indexOf(C)==-1&&Y.indexOf(M)==-1){E=Y}else{E=Y.substr(0,Y.lastIndexOf(M))}if(typeof $(E).defval!="undefined"){var U=$(E);var S=U.defval;var N=/{@([^@]+)@}/gi;I.defval=S.replace(N,"{@$1"+C+"@}");I.required=U.required;I.title=U.title;I.order=U.order}I.name=E+C;if(H!=""){I.id=H+"_"+C}if(Q==true){var F=I.type;switch(F){case"checkbox":I.checked=false;break;case"select-one":case"select-multiple":I.selectedIndex=0;break;default:I.value="";break}}}}}if(W==false){D.insertBefore(L,T)}else{var P=D.childNodes[D.childNodes.length-1];D.insertBefore(L,P);D.insertBefore(P,L)}return true}function getChildNodes(A,C){if(typeof A=="undefined"){alert("getChildNodes()::node \""+A+"\" is undefined");return false}if(typeof C=="undefined"){C=false}var K=new Array();var E=(typeof A!="object")?$(A):A;var H=E.childNodes;for(var G in H){var D=H[G];var B=(typeof D.id=="undefined"||D.id=="")?D.name:D.id;if(typeof D=="object"){if(typeof D.tagName!="undefined"&&D.tagName.toLowerCase()=="option"){continue}if(B!=""&&typeof B!="undefined"){K[B]=D}else{K.push(D)}if(D.childNodes.length>0){var F=getChildNodes(D,true);for(var J in F){var I=(typeof F[J].id=="undefined"||F[J].id=="")?F[J].name:F[J].id;if(I!=""&&typeof I!="undefined"){K[I]=F[J]}else{K.push(F[J])}}}}}return K}function in_array(A,D){var C=false;for(var B in D){if(D[B]==A){C=true;break}}return C}function is_array(A){var B=(typeof A=="object"&&A.constructor.toString().toLowerCase().indexOf("array")!=-1)?true:false;return B}function is_string(A){var B=((typeof A=="object"&&A.constructor.toString().toLowerCase().indexOf("string")!=-1))?true:false;if(!B){B=(isNaN(A))}return(B)}function is_null(A){if(arguments.length==0){alert("is_null::Please provide a variable");return false}var B=(typeof A!="undefined"&&A!=null)?false:true;return B}function linkedDd(F,C,H){var D=(typeof C=="object")?C:$(C);D=(D==null)?document.createElement("IFRAME"):D;var E=(typeof F=="object")?F:$(F);var B=(!isset(H))?global_SITE_URL+"/lib/linked_dd.php?":H;if(typeof E.defval!="undefined"&&E.defval!=null&&E.defval!=""){E.disabled=true;var G=E.defval;if(G.match(/{@([^@]+)@}/gi)){while(G.match(/{@([^@]+)@}/gi)){var I=new RegExp(/{@([^@]+)@}/gi);var A=I.exec(G);if(A!=null){for(i=0;i<A.length;i++){if(i%2==0){continue}G=G.replace(/{@([^@]+)@}/i,$(A[i]).value)}}}}if(!B.match(/\?/)){B=global_SITE_URL+"/lib/linked_dd.php?"}D.src=B+"q="+escape(G)+"&target="+((typeof E.id!="undefined"&&E.id!="")?E.id:E.name)}}function linkedDd2(A,B,F){var C=(typeof B=="object")?B:$(B);if(C==null){C=document.createElement("IFRAME");document.body.insertBefore(C,document.body.childNodes[0])}var D=(typeof A=="object")?A:$(A);var E=(!isset(F))?global_SITE_URL+"/lib/linked_dd.php?":F;if(!E.match(/\?/)){E=global_SITE_URL+"/lib/linked_dd.php?"}C.src=E+"&target="+((typeof D.id!="undefined"&&D.id!="")?D.id:D.name)}function isset(A){var B=(A!=null&&typeof A!="undefined");return B}function empty(A){var B=(isset(A)&&A!=""&&parseInt(A)!=0);return !B}function range(D,C){var B=new Array();for(var A=D;A<=C;A++){B.push(A)}return B}function changeType(A,E){var F=(typeof A=="object")?A:$(A);var B=F.attributes;var G="";for(var D=0;D<B.length;D++){if(B[D].specified){G+=" "+B[D].nodeName+"=\""+B[D].nodeValue+"\""}}var C="";switch(E){case"textarea":C="<textarea "+G+">"+F.value+"</textarea>";break;case"select":C="<span id=\"select_options_dub\"><input "+G+">&nbsp; <a href=\"javascript:void(0);\" onclick=\"duplicateNode(this.parentNode, true, true);\">add</a>|<a href=\"javascript:void(0);\" onclick=\"if(this.parentNode.parentNode.childNodes.length > 1) {var test=this.parentNode.parentNode.removeChild(this.parentNode);}\">remove</a><br><br></span>";break;default:C="<input "+G+">";break}F.parentNode.innerHTML=C}function focusFirst(C){if(document.forms.length>0){var D=(is_null(C))?document.forms[0]:document.forms[C];var A=D;for(var B=0;B<A.length;B++){if(typeof A[B].type!="undefined"&&A[B].type.toLowerCase()=="text"){A[B].focus();break}}}}function is_object(A){return(typeof A=="object")}function switchoption(F,B,M,J,N){var L=(is_object(F))?F:$(F);var K=(is_object(B))?B:$(B);var D=(is_null(M))?false:M;var A=(is_null(J))?"------------------":J;var I=(is_null(N))?"NULL":N;var H=L.options;var E=new Array();if(L.length==1&&L.options[0].text==A&&L.options[0].value==I){return true}if(K.selectedIndex==-1&&L.selectedIndex==-1){return true}else{if(K.length>=1&&K.options[0].text==A&&K.options[0].value==I){K.removeChild(K.options[0])}}for(var G=0;G<H.length;G++){if(H[G].text==A){continue}if(H[G].selected==true){K.options[K.length]=new Option(H[G].text,H[G].value);if(D!=true){E.push(H[G])}else{H[G].selected=false}}}if(E.length!=0){for(var G=0;G<E.length;G++){var C=L.removeChild(E[G])}}if(L.length==0){L.options[0]=new Option(A,I)}if(K.length==0){K.options[0]=new Option(A,I)}return true}function switchoptions(F,B,M,J,N){var L=(is_object(F))?F:$(F);var K=(is_object(B))?B:$(B);var D=(is_null(M))?false:M;var A=(is_null(J))?"------------------":J;var I=(is_null(N))?"NULL":N;var H=L.options;var E=new Array();for(var G=0;G<H.length;G++){if(H[G].text==A){continue}K.options[K.length]=new Option(H[G].text,H[G].value);if(D!=true){E.push(H[G])}else{H[G].selected=false}}if(E.length!=0){for(var G=0;G<E.length;G++){var C=L.removeChild(E[G])}}if(L.length==0){L.options[0]=new Option(A,I)}if(K.length==0){K.options[0]=new Option(A,I)}}function removeChildNode(E,G,B){var D=(typeof E=="object")?E:$(E);var F=(typeof B=="object")?B:$(B);if(!is_null(F)&&F==D){alert("You can not remove this!");return false}var C=(is_null(G))?"Are you sure?":G;if(D.parentNode.length<=1){return false}if(confirm(C)==true){var A=D.parentNode.removeChild(D);return A}else{return false}}function swapRowsCommon(A,J,O){var C=(is_object(A))?A:$(A);var H=(is_null(O))?"order":O;var P=(!in_array(J,["up","down"]))?"down":J;var M=C.parentNode;while(M.tagName.toLowerCase()!="table"){M=M.parentNode}var R=M.rows;var N=R.length;var B=R[0];var L=R[N-1];if(P=="up"&&C==B){return true}if(P=="down"&&C==L){return true}var I=C.rowIndex;var G=(P=="up")?I-1:I+1;var D=R[G].parentNode.removeChild(R[G]);C.parentNode.insertBefore(D,R[I]);var F=$(H+"["+C.id.substr(C.id.lastIndexOf("_")+1,C.id.length)+"]");var E=$(H+"["+D.id.substr(D.id.lastIndexOf("_")+1,D.id.length)+"]");var Q=parseInt(F.value);var K=parseInt(E.value);F.value=(P=="up")?Q-1:Q+1;E.value=(P=="up")?K+1:K-1;var F=$(H+"["+C.id.substr(C.id.lastIndexOf("_")+1,C.id.length)+"]");var E=$(H+"["+D.id.substr(D.id.lastIndexOf("_")+1,D.id.length)+"]");var Q=parseInt(F.value);var K=parseInt(E.value);F.value=(P=="up")?Q-1:Q+1;E.value=(P=="up")?K+1:K-1;return true}function getAllOptions(C){if(is_array(C)){for(var D=0;D<C.length;D++){getAllOptions(C[D])}}else{var A=(is_object(C))?C:$(C);if(!isset(A.type)||!in_array(A.type,["select-multiple","select"])){return }var B=A.options;for(var D=0;D<B.length;D++){B[D].selected=true}}return false}function checkboxGroup(C,I){var K=(is_object(C))?C:$(C);var H=(isset(K.form))?"":"form";var E=(!empty(K.name))?K.name:K.id;var G=(isset(I))?I:"";C.checked=true;if(H.indexOf("form")!=-1){var F=K.getElementsByTagName("INPUT");var J=Event.element();var A=(!empty(G))?G:"";for(var B=0;B<F.length;B++){if((F[B]!=J&&empty(A))||(!empty(A)&&F[B].name.indexOf(A)!=-1&&F[B]!=J)){F[B].checked=false}else{if(F[B]==J){F[B].checked=true}}}}else{var A=(!empty(G))?G:K.name.substr(0,K.name.indexOf("["));var D=(!is_null(K.form))?K.form.getElementsByTagName("INPUT"):document.getElementsByTagName("INPUT");var F=D;for(var B=0;B<F.length;B++){if(!is_null(F[B].name)&&F[B].name.indexOf(A+"[")!=-1){if(F[B]!=K&&F[B].checked==true){F[B].checked=false}}}}return }function showHideTag(A,C){var E=(is_object(A))?A:$(A);var D;if(!empty(C)){D=(is_object(C))?C:$(C);var B=Event.element().parentNode;var F=global_SITE_URL+"/lib/images/treeMenu/"}if(E.style.display=="none"){E.style.display="";if(!empty(C)){D.src=F+"minus.gif"}}else{E.style.display="none";if(!empty(C)){D.src=F+"plus.gif"}}}function checkAllBoxes(B,H,A){var C=$(B);H=H||[];switch(typeof H){case"string":H=H.replace(/\s/gim).split(",");break;case"number":H=[];break;default:if(typeof H.join!="function"){H=$A(H)}break}var G=getElementsByAttributes("type=checkbox",$(A||C.form));var E=G;for(var D=0;D<E.length;D++){var J=E[D];try{if(J.type.toLowerCase()=="checkbox"){var I;if(H.length){if(J.id!=""&&H.indexOf(J.id)>-1){I=true}else{if(H.indexOf(J.name)>-1){I=true}else{I=false}}}else{I=true}if(I){J.checked=C.checked}else{if(!H.length){if(J.checked==true){J.checked=false}else{J.checked=true}}}}}catch(F){}}}function getFileName(B){if(empty(B)){return""}var A=(window.navigator.platform.indexOf("Win")!=-1)?"\\":"/";var C=B.substr(B.lastIndexOf(A)+1,B.length);C=(C.indexOf(".")!=-1)?C.substr(0,C.lastIndexOf(".")):C;return C}function printPage(B){var A=(!isset(B))?window:((is_object(B))?B:$(B));window.print()}function showHideMenu(B,A){menu=$(B);arrow=$(A);srcEl=Event.element().parentNode;imgDir=global_SITE_URL+"/lib/images/";if(menu.style.display=="none"){menu.style.display="";arrow.src=imgDir+"arrow_1.gif";newImgOver=function(){arrow.src=imgDir+"arrow_1_on.gif"};newImgOut=function(){arrow.src=imgDir+"arrow_1.gif"}}else{menu.style.display="none";arrow.src=imgDir+"arrow_2.gif";newImgOver=function(){arrow.src=imgDir+"arrow_2_on.gif"};newImgOut=function(){arrow.src=imgDir+"arrow_2.gif"}}srcEl.onmouseover=newImgOver;srcEl.onmouseout=newImgOut}function urlencode(H){if(empty(H)){return H}var A="";var E=H.split("&");if(E.length>0){for(var C=0;C<E.length;C++){var D=E[C];var B=D.substr(0,D.lastIndexOf("="));var G=D.substr(D.lastIndexOf("=")+1,D.length);var F=(empty(A))?"":"&";A+=F+escape(B)+"="+escape(G)}}return A}function urldecode(H){if(empty(H)){return H}var A="";var E=H.split("&");if(E.length>0){for(var C=0;C<E.length;C++){var D=E[C];var B=D.substr(0,D.lastIndexOf("="));var G=D.substr(D.lastIndexOf("=")+1,D.length);var F=(empty(A))?"":"&";A+=F+unescape(B)+"="+unescape(G)}}return A}function toggleTagVisibility(M,I,K,D){var J=Event.element(),C=$(M);if(!C){return }D=Object.extend({"hide":null,"show":null},D||{});if(C.style.display=="none"){collaps_others=(isset(I))?I:false;if(I){if(!isset(K)){K=[];var B=true;var H=document.body.innerHTML;var G=H.match(/(((onclick|onchange)=|javascript:)['"]?(.*?)toggleTagVisibility\(['"])([^'"]*?)(['"]([^'"]*?)['"]?)/gim);if(G&&G.length){for(var F=0;F<G.length;F++){var A=G[F].search(/toggleTagVisibility\(('|")/gim);A=G[F].substr(A+21);A=A.substr(0,A.search(/('|")/gim));A=$(A);if(A&&typeof A.tagName!="undefined"&&typeof A.tagName!="undefined"&&A.tagName==C.tagName){K.push(A)}}}}var L;for(var F=0;F<K.length;F++){var E=K[F];if(isset(B)){L=(is_object(E)&&E!=C&&E.style.display=="")}else{L=(E.style.display=="")}if(L){E.style.display="none"}}}C.style.display="";if(D.show){J.update(D.show)}}else{C.style.display="none";if(D.hide){J.update(D.hide)}}}function setInnerHTML(B,M){var G=["script","col","colgroup","frameset","html","style","table","tbody","tfoot","thead","title","tr"];var A=(is_object(B))?B:$(B);var C=M.toString();if(!in_array(A.tagName.toLowerCase(),G)||nav!="IE"){A.innerHTML=C}else{var L=A.document;if(!empty(A.innerHTML)){for(var I=0;I<A.childNodes.length;I++){var H=A.removeChild(A.childNodes[I])}}var F=A.parentElement;if(is_null(F)){var L=A.document;C=C.replace(/\r\n/gim,"");while(matches=C.match(/<([a-zA-Z]*)([^<]*?)>(.*?)<\/\1>/im)){if(empty(matches)){continue}var D=L.createElement("<"+matches[1]+" "+matches[2]+">");if(in_array(D.tagName.toLowerCase(),G)){setInnerHTML(D,matches[3])}else{D.innerHTML=matches[3]}A.appendChild(D);C=C.replace(matches[0],"")}return }var J=0;while(in_array(F.tagName.toLowerCase(),G)&&J<999){F=F.parentElement;J++}if(J>=999){alert("Cannot perform setInnerHTML in this document.\r\nNo tags that support writing to innerHTML are found.");return }var K=A.outerHTML.replace("><",">"+A.innerHTML+"<");var E=A.outerHTML.replace("><",">"+C+"<");F.innerHTML=F.innerHTML.replace(K,E)}}function is_numeric(A){return(parseInt(A)!="NaN")}function is_bool(A){return in_array(A,[true,false])}function filterReset(L,K){if(!is_array(L)||empty(L)){return true}K=(isset(K)&&!is_bool(K))?K.toLowerCase():((!isset(K))?null:K);var G=(!is_null(K)&&in_array(K,["skip","reset",true,false]))?K:"reset";G=(is_bool(G))?((G==true)?"reset":"skip"):G.toLowerCase();var E=(is_object(L[L.length-1]))?L[L.length-1]:$(L[L.length-1]);var Q;if(E==L[L.length-1]){Q="obj"}else{Q="string";var N=(!empty(E.id))?"id":"name"}var J=E.form;for(var I=0;I<J.length;I++){var H=J[I];if(!is_null(H)){if(Q=="string"){var M=(N=="id")?H.id:H.name;if(G=="skip"&&in_array(M,L)){continue}if(G=="reset"&&!in_array(M,L)){continue}}else{if(G=="skip"&&in_array(H,L)){continue}if(G=="reset"&&!in_array(H,L)){continue}}var O=true;if(H.tagName.toLowerCase()=="input"){switch(H.type.toLowerCase()){case"checkbox":case"radio":H.checked=false;break;case"file":H.innerHTML="";break;case"button":case"image":case"submit":case"reset":O=false;continue;default:H.value="";break}}else{if(H.tagName.toLowerCase()=="select"){H.value=H.options[0].value}else{if(H.tagName.toLowerCase()=="textarea"){H.innerText=""}}}}if(!empty(H.attributes)&&O==true){var A=H.attributes;for(var F=0;F<A.length;F++){if(A[F].name.match(/on(click|change|load)/i)){var B=A[F].name.substr(2,A[F].name.length);if(H.fireEvent){H.fireEvent(A[F].name)}else{var C="";if(in_array(B,["click","over"])){C="MouseEvents"}else{if(in_array(B,["change"])){C="UIEvents"}else{C="KeyEvents"}}var P=document.createEvent("MouseEvents");var D=H.dispatchEvent(P)}}}}}}function slideToggleVisibility(D){var A=(is_object(D))?D:$(D);var C=A.parentNode.innerHTML;var B=A.innerHTML;alert(B)}function setcookie(D,F,E,G){var C=D;C+="="+((isset(F)&&!empty(F))?F:"");if(E){var B=new Date();B.setTime(B.getTime()+(E*24*60*60*1000));var A="; expires="+B.toGMTString()}else{var A=""}C+=A+"; path="+((isset(G)&&!empty(G))?G:"/");document.cookie=C}function createCookie(C,D,E){if(E){var B=new Date();B.setTime(B.getTime()+(E*24*60*60*1000));var A="; expires="+B.toGMTString()}else{var A=""}document.cookie=C+"="+D+A+"; path=/";alert(C+"="+D+A+"; path=/")}function getcookie(B){var D=B+"=";var A=document.cookie.split(";");for(var C=0;C<A.length;C++){var E=A[C];while(E.charAt(0)==" "){E=E.substring(1,E.length)}if(E.indexOf(D)==0){return E.substring(D.length,E.length)}}return null}function erasecookie(A){setcookie(A,"",-1)}function dupHiddenNode(Q,B,I){if(typeof Q=="undefined"){alert("duplicateNode()::node \""+Q+"\" is undefined");return false}var V=(typeof Q!="object")?$(Q):Q;var A=new Array();var D=V.parentNode;var T=D.parentNode.getElementsByTagName(V.tagName).length;var a=(typeof B=="undefined")?true:B;var g=(typeof I=="undefined")?true:I;var C="_"+T;var N=T-1;var b="[]";var f=(typeof V.id=="undefined"||V.id=="")?"":V.id;var d=(typeof V.name=="undefined"||V.name=="")?"":V.name;var K=V.cloneNode(true);if(f!=""){K.id=V.id+C}if(d!=""){K.name=V.name+C}var J=getChildNodes(K);for(var Z in J){var H=J[Z];var G=(typeof H.id=="undefined"||H.id=="")?"":H.id;var c=(typeof H.name=="undefined"||H.name=="")?"":H.name;var S=(typeof H.tagName!="undefined"&&(in_array(H.tagName.toLowerCase(),["input","textarea","select"])));if(c!=""&&g==true){var E=(c.indexOf("[")==-1)?c:c.substr(0,c.indexOf("["));var e=(S==true&&document.getElementsByName(E+"["+(parseInt(T)-1)+"]").length>0);var P=true;var X=parseInt(T)-1;var Y="";for(var M=100;M>=X;M--){Y=E+"["+M+"]";P=(S==true&&document.getElementsByName(Y).length>0);var L=M;if(P){Y=E+"["+(M+1)+"]";L=M+1;break}}E=Y;H.name=E;if(c.indexOf("[")==-1){}if(G!=""){H.id=G+"_"+C}if(S==true){var F=H.type;switch(F){case"checkbox":H.checked=false;if(is_numeric(H.value)){H.value=L}break;case"select-one":case"select-multiple":H.selectedIndex=0;break;default:if(H.type.toLowerCase()!="file"){H.value=""}break}}}else{if(c!=""&&g==false){var E;if(c.indexOf(C)==-1&&c.indexOf(N)==-1){E=c}else{E=c.substr(0,c.lastIndexOf(N))}if(typeof $(E).defval!="undefined"){var W=$(E);var U=W.defval;var O=/{@([^@]+)@}/gi;H.defval=U.replace(O,"{@$1"+C+"@}");H.required=W.required;H.title=W.title;H.order=W.order}H.name=E+C;if(G!=""){H.id=G+"_"+C}if(S==true){var F=H.type;switch(F){case"checkbox":H.checked=false;break;case"select-one":case"select-multiple":H.selectedIndex=0;break;default:H.value="";break}}}}}if(a==false){D.insertBefore(K,V)}else{var R=D.childNodes[D.childNodes.length-1];D.insertBefore(K,R);D.insertBefore(R,K)}if(K.style.display=="none"){K.style.display=""}return true}function __do_nothing(){return true}function printIt(B){var A;var C=(!isset(B)||!in_array(B,window.frames))?window:window.frames[B];A="Unfortunately this functionality is not available in your browser.\r\nPlease click the page you would like to print a select print from your browser menu.";if(!window.print){alert(A)}else{C.print()}}function implode(A,B){if(!is_array(B)){return false}return B.join(A)}function explode(A,B){if(!is_string(B)){return false}B=new String(B);return B.split(A)}function popup(C,B,E,A,D){var F=(arguments[5])?((is_array(arguments[5]))?implode(",",arguments[5]):arguments[5]):"";if(empty(F)){F="location=0,menubar=0,resizable=0,scrollbars=1,status=0,toolbar=0"}if(isset(E)){F+=((!empty(F))?",":"")+"height="+E}if(isset(B)){F+=((!empty(F))?",":"")+"width="+B}if(isset(A)){F+=((!empty(F))?",":"")+"left="+A}if(isset(D)){F+=((!empty(F))?",":"")+"top="+D}return window.open(C,null,F)}function getSel(B){var A="";var C=window;if(isset(B)){C=(is_object(B))?B:C}if(C.getSelection){A=C.getSelection()}else{if(C.document.getSelection){A=C.document.getSelection()}else{if(C.document.selection){A=C.document.selection.createRange().text}}}return A}function insertAtCursor(G,C,I){var F=window;if(isset(I)){F=(is_object(I))?I:F}if(F.document.selection){B=F.document.selection.createRange();B.text=C}else{if(F.getSelection){var B=F.getSelection();var H=F.document;var E=B.getRangeAt(0);var A=E.startOffset;var D=E.endOffset;B.anchorNode.nodeValue=B.focusNode.nodeValue=B.anchorNode.nodeValue.substring(0,((A==0)?1:A))+C+B.focusNode.nodeValue.substring(D,B.focusNode.nodeValue.length);E.deleteContents()}else{G.value+=C}}}function triggerEvent(D,E){var C=(is_object(D))?D:$(D);var F=E.toLowerCase();if(F.indexOf("on")==0&&!C.fireEvent){F=F.substring(2,F.length)}if(C.fireEvent){C.fireEvent(F)}else{if(in_array(F,["click","over"])){F="MouseEvents"}else{if(in_array(F,["change"])){F="UIEvents"}else{F="KeyEvents"}}var B=document.createEvent("MouseEvents");var A=C.dispatchEvent(B)}}function trim(B,A){if(B.length<1){return""}var C=(isset(A))?A:"";B=rtrim(B,C);B=ltrim(B,C);if(B==""){return""}else{return B}}function rtrim(D,C){var E=(isset(C))?C:String.fromCharCode(32);var F=D.length;var B="";if(F<0){return""}var A=F-1;while(A>-1){if(D.charAt(A)==E){}else{B=D.substring(0,A+1);break}A=A-1}return B}function ltrim(D,C){var E=(isset(C))?C:String.fromCharCode(32);if(F<1){return""}var F=D.length;var B="";var A=0;while(A<F){if(D.charAt(A)==E){}else{B=D.substring(A,F);break}A=A+1}return B}function emulateHover(B,A){var D=(is_object(B))?B:$(B);if(typeof A!="undefined"){var C=(trim(A).indexOf("#")==0)}else{var C=(typeof myOldColor!="undefined")}if(C){if(typeof myOldColor=="undefined"||myOldColor==null){myOldColor=D.style.backgroundColor;D.style.backgroundColor=A}else{D.style.backgroundColor=myOldColor;myOldColor=null}}else{if(typeof myOldClassName=="undefined"||myOldClassName==null){myOldClassName=D.className;D.className=A}else{D.className=myOldClassName;myOldClassName=null}}}function include(B){if(typeof B=="undefined"||B==null||B==""){return }var D=document.getElementsByTagName("SCRIPT");B=trim(B);var C=true;for(var A=0;A<D.length;A++){if(typeof D[A].src!="undefined"&&D[A].src==B){C=false;break}}if(C){var E=document.createElement("SCRIPT");if(typeof document.getElementsByTagName("HEAD")[0]!="undefined"){document.getElementsByTagName("HEAD")[0].appendChild(E)}else{if(typeof document.body!="undefined"){document.body.appendChild(E)}else{document.appendChild(E)}}E.src=B}}function reloadJS(){var B=document.getElementsByTagName("SCRIPT");for(var A=0;A<B.length;A++){if(isset(B[A].src)&&!empty(B[A].src)){var C=B[A].src.toString();B[A].src=null;B[A].src=C}}}function runScripts(html,include_head){var e;if(html&&document.all){return }var in_head=(typeof include_head=="undefined")?false:((in_array(include_head,[true,false]))?include_head:false);if(typeof html!="undefined"){var tmp=document.createElement("SPAN");tmp.innerHTML="&nbsp;"+html;e=tmp.getElementsByTagName("SCRIPT")}else{e=document.getElementsByTagName("SCRIPT")}var scr_holder=document.getElementsByTagName("HEAD")[0]||document.getElementsByTagName("BODY")[0]||document;if(in_head){var head_scr=document.getElementsByTagName("HEAD")[0].getElementsByTagName("SCRIPT");var srcs=[];for(var i=0;i<head_scr.length;i++){if(!empty(head_scr[i].src)&&!in_array(head_scr[i].src,srcs)){include(head_scr[i].src.toString());srcs.push(head_scr[i].src.toString())}else{if(!empty(head_scr[i].innerHTML)){eval(head_scr[i].innerHTML)}}}}for(var i=0;i<e.length;i++){if(!empty(e[i].src)&&!in_array(e[i].src,srcs)){if(e[i].parentNode.tagName.toUpperCase()=="HEAD"){continue}}if(!empty(e[i].innerHTML)){var scr=document.createElement("SCRIPT");scr.setAttribute("language","javascript");scr.setAttribute("type","text/javascript");try{scr.innerHTML=e[i].innerHTML}catch(err){var send=encodeURIComponent(e[i].innerHTML);scr.src="./lib/js/js.php?script="+send}scr_holder.insertBefore(scr,scr_holder.childNodes[0])}}}function interceptSubmit(formObj,callback){var form=(is_object(formObj))?formObj:$(formObj);if(typeof form.submit=="undefined"){return true}if(typeof callback=="undefined"){eval("form.submit = function() { return false;}");request(form,null,window.location.toString());return false}if(trim(callback).indexOf("function")==0){eval("form.submit = "+callback);eval("form.onsubmit = "+callback)}else{eval("form.submit = function() { return false;}");eval("form.onsubmit = function() { return "+callback+"}")}}function getSubmit(){gSubmitButton=Event.element()}function getScroll(){var B=0,C=0;if(window.pageYOffset){B=window.pageXOffset;C=window.pageYOffset}else{if(document.documentElement&&document.documentElement.scrollTop){B=document.documentElement.scrollLeft;C=document.documentElement.scrollTop}else{if(document.body){B=document.body.scrollLeft;C=document.body.scrollTop}}}var A=[B,C];A["x"]=B;A["y"]=C;return A}function parseUrl(B){B=(isset(B))?trim(B):window.location.toString();var D=B.split(/\//gim);var A=[];if(D.length>0){A["url"]=B;A["schema"]=D[0].replace(/\:/gim,"");A["host"]=(empty(D[1]))?D[2]:D[1];A["path"]="";A["query"]="";for(var C=((document.all)?2:3);C<D.length;C++){if(D[C].indexOf("?")!=-1){A["query"]=D[C].substr(D[C].indexOf("?")+1,D[C].length);break}if(D[C]){A["path"]+="/"+D[C]}}}return A}function include(B){var C=document.createElement("SCRIPT");C.setAttribute("language","javascript");C.setAttribute("type","text/javascript");C.src=B;var A=document.getElementsByTagName("HEAD")[0]||document.getElementsByTagName("BODY")[0]||document;A.insertBefore(C,A.childNodes[0])}function require(A){include(A)}function printAlt(N,K){if(empty(N)){window.print();return }var E=trim(N);if(nav=="IE"){var A=document.createElement("LINK");A.media="print";A.rel="alternate";A.href=E;var B=document;if(typeof document.getElementsByTagName("HEAD")[0]!="undefined"){B=document.getElementsByTagName("HEAD")[0]}B.appendChild(A);window.print();return }if(AjaxObj.readyState==AJAX_NOT_STARTED){var J=(typeof K=="string")?K:"";request(null,"GET",N,null,"printAlt(\""+E+"\", \""+J+"\")")}else{if(AjaxObj.readyState==AJAX_READY){if(AjaxObj.status!="404"){var C="__altPrinter";var G=$(C);if(is_null(G)){G=document.createElement("DIV");G.id=C;var M=document;var B=document;if(document.body){M=document.body;B=document.body}var O=[];if(typeof K=="string"&&!empty(K)){if(K.split(":").length>0){G.setAttribute("style",K)}else{G.className=K}}var I="@media print {\r\n";I+="BODY{\r\nbackground-color:#FFFFFF;\r\n}\r\n";var F=(typeof document.styleSheets!="undefined");for(var H=0;H<M.childNodes.length;H++){if(typeof M.childNodes[H].tagName!="undefined"&&!in_array(M.childNodes[H].tagName,O)){if(typeof M.childNodes[H].id=="undefined"||M.childNodes[H].id==""){M.childNodes[H].id="printing_"+H}I+="\r\n"+M.childNodes[H].tagName.toString().toUpperCase()+"#"+M.childNodes[H].id;I+="{\r\ndisplay:none;\r\n}"}}I+="\r\nDIV#"+C+"\r\n{\r\n display:block;\r\n}\r\n}\r\n";I+="@media screen {\r\nDIV#"+C+"\r\n{\r\n display:none;\r\n}\r\n}";var D=new Array();if(document.styleSheets[1].cssRules){D=document.styleSheets[1].cssRules}else{if(document.styleSheets[1].rules){D=document.styleSheets[1].rules}}alert(D);D[D.length-1].style.backgroundColor="#FFFFFF";var A=document.createElement("STYLE");A.innerHTML=I;B.appendChild(A);M.appendChild(G)}var L=AjaxObj.getResponseHeader("Content-type");switch(L.substr(0,L.lastIndexOf("/"))){case"image":L="<img src="+E+">";break;default:L=AjaxObj.responseText;break}G.innerHTML=L;AjaxObj.abort();window.print()}else{AjaxObj.abort();alert("The file:\r\n\""+E+"\"\r\nwas not found")}}}}function adEv(t,ev,fn){ev=trim(ev).toLowerCase();ev=(ev.indexOf("on")==0)?ev.substring(2,ev.length):ev;if(typeof document.addEventListener!="undefined"){t.addEventListener(ev,fn,false)}else{var f=trim(fn.toString());if(f.match(/function[^\(\b]+\(/i)){f=trim(f.substring(f.indexOf(" ")+1,f.indexOf("(")))}t.attachEvent("on"+ev,fn);eval("t.on"+ev+"= "+f+";")}}function rmEv(A,C,B){C=trim(C).toLowerCase();C=(C.indexOf("on")==0)?C.substring(2,C.length):C;if(typeof document.removeEventListener!="undefined"){A.removeEventListener(C,B,false)}else{A.detachEvent("on "+C,B)}}function getElementsByTagNames(G,H){if(!H){var H=document}var A=G.split(",");var F=new Array();for(var E=0;E<A.length;E++){var D=H.getElementsByTagName(A[E]);for(var C=0;C<D.length;C++){F.push(D[C])}}var B=F[0];if(!B){return[]}if(B.sourceIndex){F.sort(function(J,I){return J.sourceIndex-I.sourceIndex})}else{if(B.compareDocumentPosition){F.sort(function(J,I){return 3-(J.compareDocumentPosition(I)&6)})}}return F}function getElementsByAttributes(G,D,J){D=($(D)||document);var I=(G.join)?G:G.split(",");var K=new Array();J=[true,false,1,0].indexOf(J)!=-1?J:true;var A;for(var E=0;E<I.length;E++){var L=(D==document)?document.getElementsByTagName("BODY")[0].childNodes:D.childNodes;var B=I[E];var F;if((A=B.split("=")).length==2){B=A.first().trim(" ");F=A.last().trim(" ")}for(var C=0;C<L.length;C++){if(L[C].nodeType!=1){continue}if(L[C].getAttribute&&(A=L[C].getAttribute(B))!=null){if(typeof F=="undefined"){K.push(L[C])}else{if(A==F){K.push(L[C])}}}if(J&&L[C].childNodes&&L[C].childNodes.length>0){K=K.concat(getElementsByAttributes(G,L[C]))}}}var H=K[0];if(typeof H=="undefined"){return[]}if(H.sourceIndex){K.sort(function(N,M){return N.sourceIndex-M.sourceIndex})}else{if(H.compareDocumentPosition){K.sort(function(N,M){return 3-(N.compareDocumentPosition(M)&6)})}}return K}function getElementsById(F,E){var D=[];if(!E){var E=document}var C=(E==document)?((document.all)?document.all:document.getElementsByTagName("BODY")[0].childNodes):E.childNodes;for(var B=0;B<C.length;B++){if(C[B].id&&C[B].id==F){D.push(C[B])}if(!document.all&&C[B].childNodes&&C[B].childNodes.length>0){D=D.concat(getElementsById(F,C[B]))}}var A=D[0];if(!A){return[]}if(A.sourceIndex){D.sort(function(H,G){return H.sourceIndex-G.sourceIndex})}else{if(A.compareDocumentPosition){D.sort(function(H,G){return 3-(H.compareDocumentPosition(G)&6)})}}return D}function orderBySourceIndex(B){if(!B.join){throw ({message:"Argument is not an array"});return[]}var A=B.first();if(!A){return[]}if(A.sourceIndex){B.sort(function(D,C){return D.sourceIndex-C.sourceIndex})}else{if(A.compareDocumentPosition){B.sort(function(D,C){return 3-(D.compareDocumentPosition(C)&6)})}}}function _dumpScripts(){var jsArray=document.getElementsByTagName("script");var theWinref;var theHTML;var scriptObj;var frameURL;var frameObj;if(jsArray.length>0){if(!(theWinref=window.open("","_blank","width=\"320px\",height=\"500px\",toolbar=no,location=no,directories=no,status=yes,menubar=no,resizeable=yes"))){alert("Popup blocker");return }theWinref.document.write("<html><head><title>"+window.location.href+"</title></head><body>"+jsArray.length+" Script(s) Found:");theWinref.resizeTo(600,200);theWinref.moveTo(0,0)}for(var i=0;i<jsArray.length;i++){scriptObj=jsArray[i];if(scriptObj.hasAttribute("src")){frameURL=scriptObj.getAttribute("src");theWinref.document.write("<p style='background-color:#999933;'>Script "+eval(i+1)+" via "+frameURL+"<br><iframe height='100%' width='100%' id='url"+i+"' src='"+frameURL+"'></iframe></p>");frameObj=theWinref.document.getElementById("url"+i)}else{theHTML=scriptObj.innerHTML;theWinref.document.write("<p style='background-color:#999933;'>Script "+eval(i+1)+":<br><pre>"+theHTML+"</pre></p>")}}if(jsArray.length>0){theWinref.document.write("</body></html>")}}function makeEditableField(C,D,E,A){return true;if(C.push){for(var B=0;B<C.length;B++){var F=(D.push)?(D[B]||"text"):D;var I=(E&&E.push)?(E[B]||Prototype.emptyFunction):E;makeEditableField(C[B],F,((B>0&&typeof E=="function")?Prototype.emptyFunction:I),B==(C.length-1))}return }if(!(C=$(C))){return }D=(D||"").toString().toLowerCase();A=(typeof A=="boolean")?A:true;var J=C.innerHTML;var H=C.innerHTML;var G;if(!H.match(/<(textarea|input)/gim)){H=H.stripTags();switch(D){case"textarea":Element.update(C,"<textarea id=\""+C.id+".Editable\" editable=\"1\">"+H+"</textarea>");break;case"text":Element.update(C,"<input editable=\"1\" id=\""+C.id+".Editable\" type=\"text\" value=\""+H+"\">");break;default:Element.update(C,D);G=C.childNodes[0];G.id=C.id+".Editable";G.value=H;G.setAttribute("editable",1);break}}G=(G||$(C.id+".Editable"));G.onUpdate=function(){(E||function(){})()};G.onAfterAllUpdated=function(){Element.update(C,J.replace(H.stripTags(),this.value))};if(A){}Event.listen(G,"blur",function(){updateEditables()})}function updateEditables(){var B=getElementsByAttributes("editable");for(var A=0;A<B.length;A++){if(B[A].onUpdate){B[A].onUpdate()}}for(var A=0;A<B.length;A++){if(B[A].onAfterAllUpdated){B[A].onAfterAllUpdated()}}}function CurrencyFormatted(B){var A=parseFloat(B);if(isNaN(A)){A=0}var C="";if(A<0){C="-"}A=Math.abs(A);A=parseInt((A+0.005)*100);A=A/100;s=new String(A);if(s.indexOf(".")<0){s+=".00"}if(s.indexOf(".")==(s.length-2)){s+="0"}s=C+s;return s}function getStates(sElement,country_id,get_by){oElement=$(sElement);if(typeof oElement==undefined){return }url=SITE_URL+"/lib/ajax.scripts/states.php";postBody="c_id="+country_id+"&el="+decodeURI(sElement)+"&df="+((typeof get_by=="string"&&get_by.indexOf(" ")==-1)?get_by:"id");ajOpts={postBody:postBody};ajOpts.onFailure=function(t,j){alert(j)};var toUpdate=$(sElement);ajOpts.onSuccess=function(t,j){try{eval("var states = "+j);if(toUpdate.options.length){var first=toUpdate.options[0]}toUpdate.update("");$H(states).each(function(state,k){state=state.value;toUpdate.addOption(state.name,state.id,k);return false});if(typeof first=="object"&&first.text){toUpdate.addOption(first.text,first.value,0).selected=true}}catch(e){if(DEBUG_MODE){alert("states.onSuccess:"+e.message)}}toUpdate.disabled=false};toUpdate.disabled=true;new Ajax.Request(url,ajOpts)}function __getDebugInfo(opts){opts=Object.extend({method:"post",postBody:"_=1"},opts||{});opts.onFailure=function(t,j){alert(j)};opts.onSuccess=function(t,j){var __dbgr=$("M_dbgr");if(!__dbgr){__dbgr=$(document.createElement("div"));__dbgr.id="M_dbgr";document.body.insertBefore(__dbgr,document.body.childNodes[0])}eval(j);__dbgr.update(t.responseText)};new Ajax.Request(SITE_URL+"/lib/debug.info.php",opts)}window.location.createUrl=function(params,baseUrl){baseUrl=baseUrl||this.href.toString();if(typeof params!="object"){params={}}var q=baseUrl.substr(baseUrl.lastIndexOf("?")+1);if(baseUrl.indexOf("?")>-1){baseUrl=baseUrl.substr(0,baseUrl.lastIndexOf("?"))}if(q!=baseUrl){eval("q={"+(((q=(this.search||"?").substring(1).replace(/=/g,":'").replace(/&/g,"',")).length)?q+"'":"")+"};")}else{q={}}q=$H(Object.extend(q,params)).toQueryString();if(q.length){baseUrl=baseUrl+"?"+q}return baseUrl};String.prototype.parseColor=function(){var A="#";if(this.slice(0,4)=="rgb("){var C=this.slice(4,this.length-1).split(",");var B=0;do{A+=parseInt(C[B]).toColorPart()}while(++B<3)}else{if(this.slice(0,1)=="#"){if(this.length==4){for(var B=1;B<4;B++){A+=(this.charAt(B)+this.charAt(B)).toLowerCase()}}if(this.length==7){A=this.toLowerCase()}}}return(A.length==7?A:(arguments[0]||this))};Element.collectTextNodes=function(A){return $A($(A).childNodes).collect(function(B){return(B.nodeType==3?B.nodeValue:(B.hasChildNodes()?Element.collectTextNodes(B):""))}).flatten().join("")};Element.collectTextNodesIgnoreClass=function(A,B){return $A($(A).childNodes).collect(function(C){return(C.nodeType==3?C.nodeValue:((C.hasChildNodes()&&!Element.hasClassName(C,B))?Element.collectTextNodesIgnoreClass(C,B):""))}).flatten().join("")};Element.setContentZoom=function(A,B){A=$(A);A.setStyle({fontSize:(B/100)+"em"});if(navigator.appVersion.indexOf("AppleWebKit")>0){window.scrollBy(0,0)}return A};Element.getOpacity=function(B){B=$(B);var A;if(A=B.getStyle("opacity")){return parseFloat(A)}if(A=(B.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(A[1]){return parseFloat(A[1])/100}}return 1};Element.setOpacity=function(A,B){A=$(A);if(B==1){A.setStyle({opacity:(/Gecko/.test(navigator.userAgent)&&!/Konqueror|Safari|KHTML/.test(navigator.userAgent))?0.999999:1});if(/MSIE/.test(navigator.userAgent)&&!window.opera){A.setStyle({filter:Element.getStyle(A,"filter").replace(/alpha\([^\)]*\)/gi,"")})}}else{if(B<0.00001){B=0}A.setStyle({opacity:B});if(/MSIE/.test(navigator.userAgent)&&!window.opera){A.setStyle({filter:A.getStyle("filter").replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+B*100+")"})}}return A};Element.getInlineOpacity=function(A){return $(A).style.opacity||""};Element.forceRerendering=function(A){try{A=$(A);var C=document.createTextNode(" ");A.appendChild(C);A.removeChild(C)}catch(B){}};Array.prototype.call=function(){var A=arguments;this.each(function(B){B.apply(this,A)})};var Effect={_elementDoesNotExistError:{name:"ElementDoesNotExistError",message:"The specified DOM element does not exist, but is required for this effect to operate"},tagifyText:function(A){if(typeof Builder=="undefined"){throw ("Effect.tagifyText requires including script.aculo.us' builder.js library")}var B="position:relative";if(/MSIE/.test(navigator.userAgent)&&!window.opera){B+=";zoom:1"}A=$(A);$A(A.childNodes).each(function(C){if(C.nodeType==3){C.nodeValue.toArray().each(function(D){A.insertBefore(Builder.node("span",{style:B},D==" "?String.fromCharCode(160):D),C)});Element.remove(C)}})},multiple:function(B,C){var E;if(((typeof B=="object")||(typeof B=="function"))&&(B.length)){E=B}else{E=$(B).childNodes}var A=Object.extend({speed:0.1,delay:0},arguments[2]||{});var D=A.delay;$A(E).each(function(G,F){new C(G,Object.extend(A,{delay:F*A.speed+D}))})},PAIRS:{"slide":["SlideDown","SlideUp"],"blind":["BlindDown","BlindUp"],"appear":["Appear","Fade"]},toggle:function(B,C){B=$(B);C=(C||"appear").toLowerCase();var A=Object.extend({queue:{position:"end",scope:(B.id||"global"),limit:1}},arguments[2]||{});Effect[B.visible()?Effect.PAIRS[C][1]:Effect.PAIRS[C][0]](B,A)}};var Effect2=Effect;Effect.Transitions={linear:Prototype.K,sinoidal:function(A){return(-Math.cos(A*Math.PI)/2)+0.5},reverse:function(A){return 1-A},flicker:function(A){return((-Math.cos(A*Math.PI)/4)+0.75)+Math.random()/4},wobble:function(A){return(-Math.cos(A*Math.PI*(9*A))/2)+0.5},pulse:function(B,A){A=A||5;return(Math.round((B%(1/A))*A)==0?((B*A*2)-Math.floor(B*A*2)):1-((B*A*2)-Math.floor(B*A*2)))},none:function(A){return 0},full:function(A){return 1}};Effect.ScopedQueue=Class.create();Object.extend(Object.extend(Effect.ScopedQueue.prototype,Enumerable),{initialize:function(){this.effects=[];this.interval=null},_each:function(A){this.effects._each(A)},add:function(B){var C=new Date().getTime();var A=(typeof B.options.queue=="string")?B.options.queue:B.options.queue.position;switch(A){case"front":this.effects.findAll(function(D){return D.state=="idle"}).each(function(D){D.startOn+=B.finishOn;D.finishOn+=B.finishOn});break;case"with-last":C=this.effects.pluck("startOn").max()||C;break;case"end":C=this.effects.pluck("finishOn").max()||C;break}B.startOn+=C;B.finishOn+=C;if(!B.options.queue.limit||(this.effects.length<B.options.queue.limit)){this.effects.push(B)}if(!this.interval){this.interval=setInterval(this.loop.bind(this),40)}},remove:function(A){this.effects=this.effects.reject(function(B){return B==A});if(this.effects.length==0){clearInterval(this.interval);this.interval=null}},loop:function(){var A=new Date().getTime();this.effects.invoke("loop",A)}});Effect.Queues={instances:$H(),get:function(A){if(typeof A!="string"){return A}if(!this.instances[A]){this.instances[A]=new Effect.ScopedQueue()}return this.instances[A]}};Effect.Queue=Effect.Queues.get("global");Effect.DefaultOptions={transition:Effect.Transitions.sinoidal,duration:1,fps:25,sync:false,from:0,to:1,delay:0,queue:"parallel"};Effect.Base=function(){};Effect.Base.prototype={position:null,start:function(A){this.options=Object.extend(Object.extend({},Effect.DefaultOptions),A||{});this.currentFrame=0;this.state="idle";this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.event("beforeStart");if(!this.options.sync){Effect.Queues.get(typeof this.options.queue=="string"?"global":this.options.queue.scope).add(this)}},loop:function(C){if(C>=this.startOn){if(C>=this.finishOn){this.render(1);this.cancel();this.event("beforeFinish");if(this.finish){this.finish()}this.event("afterFinish");return }var B=(C-this.startOn)/(this.finishOn-this.startOn);var A=Math.round(B*this.options.fps*this.options.duration);if(A>this.currentFrame){this.render(B);this.currentFrame=A}}},render:function(A){if(this.state=="idle"){this.state="running";this.event("beforeSetup");if(this.setup){this.setup()}this.event("afterSetup")}if(this.state=="running"){if(this.options.transition){A=this.options.transition(A)}A*=(this.options.to-this.options.from);A+=this.options.from;this.position=A;this.event("beforeUpdate");if(this.update){this.update(A)}this.event("afterUpdate")}},cancel:function(){if(!this.options.sync){Effect.Queues.get(typeof this.options.queue=="string"?"global":this.options.queue.scope).remove(this)}this.state="finished"},event:function(A){if(this.options[A+"Internal"]){this.options[A+"Internal"](this)}if(this.options[A]){this.options[A](this)}},inspect:function(){return"#<Effect:"+$H(this).inspect()+",options:"+$H(this.options).inspect()+">"}};Effect.Parallel=Class.create();Object.extend(Object.extend(Effect.Parallel.prototype,Effect.Base.prototype),{initialize:function(A){this.effects=A||[];this.start(arguments[1])},update:function(A){this.effects.invoke("render",A)},finish:function(A){this.effects.each(function(B){B.render(1);B.cancel();B.event("beforeFinish");if(B.finish){B.finish(A)}B.event("afterFinish")})}});Effect.Event=Class.create();Object.extend(Object.extend(Effect.Event.prototype,Effect.Base.prototype),{initialize:function(){var A=Object.extend({duration:0},arguments[0]||{});this.start(A)},update:Prototype.emptyFunction});Effect.Opacity=Class.create();Object.extend(Object.extend(Effect.Opacity.prototype,Effect.Base.prototype),{initialize:function(B){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}if(/MSIE/.test(navigator.userAgent)&&!window.opera&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1})}var A=Object.extend({from:this.element.getOpacity()||0,to:1},arguments[1]||{});this.start(A)},update:function(A){this.element.setOpacity(A)}});Effect.Move=Class.create();Object.extend(Object.extend(Effect.Move.prototype,Effect.Base.prototype),{initialize:function(B){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({x:0,y:0,mode:"relative"},arguments[1]||{});this.start(A)},setup:function(){this.element.makePositioned();this.originalLeft=parseFloat(this.element.getStyle("left")||"0");this.originalTop=parseFloat(this.element.getStyle("top")||"0");if(this.options.mode=="absolute"){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop}},update:function(A){this.element.setStyle({left:Math.round(this.options.x*A+this.originalLeft)+"px",top:Math.round(this.options.y*A+this.originalTop)+"px"})}});Effect.MoveBy=function(B,A,C){return new Effect.Move(B,Object.extend({x:C,y:A},arguments[3]||{}))};Effect.Scale=Class.create();Object.extend(Object.extend(Effect.Scale.prototype,Effect.Base.prototype),{initialize:function(B,C){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:C},arguments[2]||{});this.start(A)},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=this.element.getStyle("position");this.originalStyle={};["top","left","width","height","fontSize"].each(function(B){this.originalStyle[B]=this.element.style[B]}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var A=this.element.getStyle("font-size")||"100%";["em","px","%","pt"].each(function(B){if(A.indexOf(B)>0){this.fontSize=parseFloat(A);this.fontSizeType=B}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth]}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth]}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth]}},update:function(A){var B=(this.options.scaleFrom/100)+(this.factor*A);if(this.options.scaleContent&&this.fontSize){this.element.setStyle({fontSize:this.fontSize*B+this.fontSizeType})}this.setDimensions(this.dims[0]*B,this.dims[1]*B)},finish:function(A){if(this.restoreAfterFinish){this.element.setStyle(this.originalStyle)}},setDimensions:function(A,D){var E={};if(this.options.scaleX){E.width=Math.round(D)+"px"}if(this.options.scaleY){E.height=Math.round(A)+"px"}if(this.options.scaleFromCenter){var C=(A-this.dims[0])/2;var B=(D-this.dims[1])/2;if(this.elementPositioning=="absolute"){if(this.options.scaleY){E.top=this.originalTop-C+"px"}if(this.options.scaleX){E.left=this.originalLeft-B+"px"}}else{if(this.options.scaleY){E.top=-C+"px"}if(this.options.scaleX){E.left=-B+"px"}}}this.element.setStyle(E)}});Effect.Highlight=Class.create();Object.extend(Object.extend(Effect.Highlight.prototype,Effect.Base.prototype),{initialize:function(B){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({startcolor:"#ffff99"},arguments[1]||{});this.start(A)},setup:function(){if(this.element.getStyle("display")=="none"){this.cancel();return }this.oldStyle={backgroundImage:this.element.getStyle("background-image")};this.element.setStyle({backgroundImage:"none"});if(!this.options.endcolor){this.options.endcolor=this.element.getStyle("background-color").parseColor("#ffffff")}if(!this.options.restorecolor){this.options.restorecolor=this.element.getStyle("background-color")}this._base=$R(0,2).map(function(A){return parseInt(this.options.startcolor.slice(A*2+1,A*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(A){return parseInt(this.options.endcolor.slice(A*2+1,A*2+3),16)-this._base[A]}.bind(this))},update:function(A){this.element.setStyle({backgroundColor:$R(0,2).inject("#",function(B,C,D){return B+(Math.round(this._base[D]+(this._delta[D]*A)).toColorPart())}.bind(this))})},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}))}});Effect.ScrollTo=Class.create();Object.extend(Object.extend(Effect.ScrollTo.prototype,Effect.Base.prototype),{initialize:function(A){this.element=$(A);this.start(arguments[1]||{})},setup:function(){Position.prepare();var B=Position.cumulativeOffset(this.element);if(this.options.offset){B[1]+=this.options.offset}var A=window.innerHeight?window.height-window.innerHeight:document.body.scrollHeight-(document.documentElement.clientHeight?document.documentElement.clientHeight:document.body.clientHeight);this.scrollStart=Position.deltaY;this.delta=(B[1]>A?A:B[1])-this.scrollStart},update:function(A){Position.prepare();window.scrollTo(Position.deltaX,this.scrollStart+(A*this.delta))}});Effect.Fade=function(C){C=$(C);var A=C.getInlineOpacity();var B=Object.extend({from:C.getOpacity()||1,to:0,afterFinishInternal:function(D){if(D.options.to!=0){return }D.element.hide().setStyle({opacity:A})}},arguments[1]||{});return new Effect.Opacity(C,B)};Effect.Appear=function(B){B=$(B);var A=Object.extend({from:(B.getStyle("display")=="none"?0:B.getOpacity()||0),to:1,afterFinishInternal:function(C){C.element.forceRerendering()},beforeSetup:function(C){C.element.setOpacity(C.options.from).show()}},arguments[1]||{});return new Effect.Opacity(B,A)};Effect.Puff=function(B){B=$(B);var A={opacity:B.getInlineOpacity(),position:B.getStyle("position"),top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};return new Effect.Parallel([new Effect.Scale(B,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:1,beforeSetupInternal:function(C){Position.absolutize(C.effects[0].element)},afterFinishInternal:function(C){C.effects[0].element.hide().setStyle(A)}},arguments[1]||{}))};Effect.BlindUp=function(A){A=$(A);A.makeClipping();return new Effect.Scale(A,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,hide:true,afterFinishInternal:function(B){if(B.options.hide){B.element.hide().undoClipping()}else{}}},arguments[1]||{}))};Effect.BlindDown=function(B){B=$(B);var A=B.getDimensions();return new Effect.Scale(B,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:A.height,originalWidth:A.width},restoreAfterFinish:true,afterSetup:function(C){C.element.makeClipping().setStyle({height:"0px"}).show()},afterFinishInternal:function(C){C.element.undoClipping()}},arguments[1]||{}))};Effect.SwitchOff=function(B){B=$(B);var A=B.getInlineOpacity();return new Effect.Appear(B,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(C){new Effect.Scale(C.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(D){D.element.makePositioned().makeClipping()},afterFinishInternal:function(D){D.element.hide().undoClipping().undoPositioned().setStyle({opacity:A})}})}},arguments[1]||{}))};Effect.DropOut=function(B){B=$(B);var A={top:B.getStyle("top"),left:B.getStyle("left"),opacity:B.getInlineOpacity()};return new Effect.Parallel([new Effect.Move(B,{x:0,y:100,sync:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:0.5,beforeSetup:function(C){C.effects[0].element.makePositioned()},afterFinishInternal:function(C){C.effects[0].element.hide().undoPositioned().setStyle(A)}},arguments[1]||{}))};Effect.Shake=function(B){B=$(B);var A={top:B.getStyle("top"),left:B.getStyle("left")};return new Effect.Move(B,{x:20,y:0,duration:0.05,afterFinishInternal:function(C){new Effect.Move(C.element,{x:-40,y:0,duration:0.1,afterFinishInternal:function(D){new Effect.Move(D.element,{x:40,y:0,duration:0.1,afterFinishInternal:function(E){new Effect.Move(E.element,{x:-40,y:0,duration:0.1,afterFinishInternal:function(F){new Effect.Move(F.element,{x:40,y:0,duration:0.1,afterFinishInternal:function(G){new Effect.Move(G.element,{x:-20,y:0,duration:0.05,afterFinishInternal:function(H){H.element.undoPositioned().setStyle(A)}})}})}})}})}})}})};Effect.SlideRight=function(C){C=$(C).cleanWhitespace();var A=C.down().getStyle("bottom");var B=C.getDimensions();return new Effect.Scale(C,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();D.element.down().makePositioned();if(window.opera){D.element.setStyle({top:""})}D.element.makeClipping().setStyle({height:"0px"}).show()},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"})},afterFinishInternal:function(D){D.element.undoClipping().undoPositioned();D.element.down().undoPositioned().setStyle({bottom:A})}},arguments[1]||{}))};Effect.SlideDown=function(C){C=$(C).cleanWhitespace();var A=C.down().getStyle("bottom");var B=C.getDimensions();return new Effect.Scale(C,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();D.element.down().makePositioned();if(window.opera){D.element.setStyle({top:""})}D.element.makeClipping().setStyle({height:"0px"}).show()},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"})},afterFinishInternal:function(D){D.element.undoClipping().undoPositioned();D.element.down().undoP