if(!window.A4J){window.A4J={};}
function Sarissa(){}
Sarissa.VERSION="0.9.9.3";Sarissa.PARSED_OK="Document contains no parsing errors";Sarissa.PARSED_EMPTY="Document is empty";Sarissa.PARSED_UNKNOWN_ERROR="Not well-formed or other error";Sarissa.IS_ENABLED_TRANSFORM_NODE=false;Sarissa.REMOTE_CALL_FLAG="gr.abiss.sarissa.REMOTE_CALL_FLAG";Sarissa._sarissa_iNsCounter=0;Sarissa._SARISSA_IEPREFIX4XSLPARAM="";Sarissa._SARISSA_HAS_DOM_IMPLEMENTATION=document.implementation&&true;Sarissa._SARISSA_HAS_DOM_CREATE_DOCUMENT=Sarissa._SARISSA_HAS_DOM_IMPLEMENTATION&&document.implementation.createDocument;Sarissa._SARISSA_HAS_DOM_FEATURE=Sarissa._SARISSA_HAS_DOM_IMPLEMENTATION&&document.implementation.hasFeature;Sarissa._SARISSA_IS_MOZ=Sarissa._SARISSA_HAS_DOM_CREATE_DOCUMENT&&Sarissa._SARISSA_HAS_DOM_FEATURE;Sarissa._SARISSA_IS_SAFARI=navigator.userAgent.toLowerCase().indexOf("safari")!=-1||navigator.userAgent.toLowerCase().indexOf("konqueror")!=-1;Sarissa._SARISSA_IS_SAFARI_OLD=Sarissa._SARISSA_IS_SAFARI&&(parseInt((navigator.userAgent.match(/AppleWebKit\/(\d+)/)||{})[1],10)<420);Sarissa._SARISSA_IS_IE=document.all&&window.ActiveXObject&&navigator.userAgent.toLowerCase().indexOf("msie")>-1&&navigator.userAgent.toLowerCase().indexOf("opera")==-1;Sarissa._SARISSA_IS_OPERA=navigator.userAgent.toLowerCase().indexOf("opera")!=-1;if(!window.Node||!Node.ELEMENT_NODE){Node={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12};}
if(Sarissa._SARISSA_IS_SAFARI_OLD){HTMLHtmlElement=document.createElement("html").constructor;Node=HTMLElement={};HTMLElement.prototype=HTMLHtmlElement.__proto__.__proto__;HTMLDocument=Document=document.constructor;var x=new DOMParser();XMLDocument=x.constructor;Element=x.parseFromString("","text/xml").documentElement.constructor;x=null;}
if(typeof XMLDocument=="undefined"&&typeof Document!="undefined"){XMLDocument=Document;}
if(Sarissa._SARISSA_IS_IE){Sarissa._SARISSA_IEPREFIX4XSLPARAM="xsl:";var _SARISSA_DOM_PROGID="";var _SARISSA_XMLHTTP_PROGID="";var _SARISSA_DOM_XMLWRITER="";Sarissa.pickRecentProgID=function(idList){var bFound=false,e;var o2Store;for(var i=0;i1){prefix=sName.substring(0,sName.indexOf(":"));sName=sName.substring(sName.indexOf(":")+1);}else{prefix="a"+(Sarissa._sarissa_iNsCounter++);}}
if(sUri){oDoc.loadXML('<'+prefix+':'+sName+" xmlns:"+prefix+"=\""+sUri+"\""+" />");}else{oDoc.loadXML('<'+sName+" />");}}
return oDoc;};Sarissa.getParseErrorText=function(oDoc){var parseErrorText=Sarissa.PARSED_OK;if(oDoc&&oDoc.parseError&&oDoc.parseError.errorCode&&oDoc.parseError.errorCode!=0){parseErrorText="XML Parsing Error: "+oDoc.parseError.reason+"\nLocation: "+oDoc.parseError.url+"\nLine Number "+oDoc.parseError.line+", Column "+
oDoc.parseError.linepos+":\n"+oDoc.parseError.srcText+"\n";for(var i=0;i')+2);}
var xml=''.concat('',s,'');oDoc.loadXML(xml);container=oDoc.documentElement;while(container.hasChildNodes()){f.appendChild(container.firstChild);}}
return f;};XSLTProcessor.prototype.setParameter=function(nsURI,name,value){value=value?value:"";if(nsURI){this.processor.addParameter(name,value,nsURI);}else{this.processor.addParameter(name,value);}
nsURI=""+(nsURI||"");if(!this.paramsSet[nsURI]){this.paramsSet[nsURI]=[];}
this.paramsSet[nsURI][name]=value;};XSLTProcessor.prototype.getParameter=function(nsURI,name){nsURI=""+(nsURI||"");if(this.paramsSet[nsURI]&&this.paramsSet[nsURI][name]){return this.paramsSet[nsURI][name];}else{return null;}};XSLTProcessor.prototype.clearParameters=function(){for(var nsURI in this.paramsSet){for(var name in this.paramsSet[nsURI]){if(nsURI!=""){this.processor.addParameter(name,"",nsURI);}else{this.processor.addParameter(name,"");}}}
this.paramsSet=[];};}else{if(Sarissa._SARISSA_HAS_DOM_CREATE_DOCUMENT){Sarissa.__handleLoad__=function(oDoc){Sarissa.__setReadyState__(oDoc,4);};_sarissa_XMLDocument_onload=function(){Sarissa.__handleLoad__(this);};Sarissa.__setReadyState__=function(oDoc,iReadyState){oDoc.readyState=iReadyState;oDoc.readystate=iReadyState;if(oDoc.onreadystatechange!=null&&typeof oDoc.onreadystatechange=="function"){oDoc.onreadystatechange();}};Sarissa.getDomDocument=function(sUri,sName){var oDoc=document.implementation.createDocument(sUri?sUri:null,sName?sName:null,null);if(!oDoc.onreadystatechange){oDoc.onreadystatechange=null;}
if(!oDoc.readyState){oDoc.readyState=0;}
oDoc.addEventListener("load",_sarissa_XMLDocument_onload,false);return oDoc;};if(window.XMLDocument){}
else if(Sarissa._SARISSA_HAS_DOM_FEATURE&&window.Document&&!Document.prototype.load&&document.implementation.hasFeature('LS','3.0')){Sarissa.getDomDocument=function(sUri,sName){var oDoc=document.implementation.createDocument(sUri?sUri:null,sName?sName:null,null);return oDoc;};}
else{Sarissa.getDomDocument=function(sUri,sName){var oDoc=document.implementation.createDocument(sUri?sUri:null,sName?sName:null,null);if(oDoc&&(sUri||sName)&&!oDoc.documentElement){oDoc.appendChild(oDoc.createElementNS(sUri,sName));}
return oDoc;};}}}
if(!window.DOMParser){if(Sarissa._SARISSA_IS_SAFARI){DOMParser=function(){};DOMParser.prototype.parseFromString=function(sXml,contentType){var xmlhttp=new XMLHttpRequest();xmlhttp.open("GET","data:text/xml;charset=utf-8,"+encodeURIComponent(sXml),false);xmlhttp.send(null);return xmlhttp.responseXML;};}else if(Sarissa.getDomDocument&&Sarissa.getDomDocument()&&Sarissa.getDomDocument(null,"bar").xml){DOMParser=function(){};DOMParser.prototype.parseFromString=function(sXml,contentType){var doc=Sarissa.getDomDocument();doc.loadXML(sXml);return doc;};}}
if((typeof(document.importNode)=="undefined")&&Sarissa._SARISSA_IS_IE){try{var importTable={TBODY:['
','
'],THEAD:['
','
'],TFOOT:['
','
'],TR:['
','
'],TH:['
','
'],TD:['
','
'],OPTION:['']};document.importNode=function(oNode,bChildren){var tmp;if(oNode.nodeName=='#text'){return document.createTextNode(oNode.data);}
else{var tagName=oNode.nodeName.toUpperCase();var wrapper=importTable[tagName];var nodeHtml;if(bChildren){nodeHtml=oNode.xml?oNode.xml:oNode.outerHTML;}else{nodeHtml=oNode.xml?oNode.cloneNode(false).xml:oNode.cloneNode(false).outerHTML;}
var wrapperElt=document.createElement("div");if(wrapper){nodeHtml=wrapper[0]+nodeHtml+wrapper[1];}
wrapperElt.innerHTML=nodeHtml;var stack=new Array(wrapperElt.firstChild);var result;while(!result){var newStack=new Array();for(var i=0;i0){var parsererror=oDoc.getElementsByTagName("parsererror")[0];parseErrorText=Sarissa.getText(parsererror,true)+"\n";}else if(oDoc.parseError&&oDoc.parseError.errorCode!=0){parseErrorText=Sarissa.PARSED_UNKNOWN_ERROR;}
return parseErrorText;};}
Sarissa.getText=function(oNode,deep){var s="";var nodes=oNode.childNodes;for(var i=0;i]+>/g,""):s;};Sarissa.clearChildNodes=function(oNode){while(oNode.firstChild){oNode.removeChild(oNode.firstChild);}};Sarissa.copyChildNodes=function(nodeFrom,nodeTo,bPreserveExisting){if(Sarissa._SARISSA_IS_SAFARI&&nodeTo.nodeType==Node.DOCUMENT_NODE){nodeTo=nodeTo.documentElement;}
if((!nodeFrom)||(!nodeTo)){throw"Both source and destination nodes must be provided";}
if(!bPreserveExisting){Sarissa.clearChildNodes(nodeTo);}
var ownerDoc=nodeTo.nodeType==Node.DOCUMENT_NODE?nodeTo:nodeTo.ownerDocument;var nodes=nodeFrom.childNodes;var i;if(typeof(ownerDoc.importNode)!="undefined"){for(i=0;i';var isLeaf=false;if(!(anyObject instanceof Object)||anyObject instanceof Number||anyObject instanceof String||anyObject instanceof Boolean||anyObject instanceof Date){s+=Sarissa.escape(""+anyObject);isLeaf=true;}else{s+="\n";var isArrayItem=anyObject instanceof Array;for(var name in anyObject){s+=Sarissa.xmlize(anyObject[name],(isArrayItem?"array-item key=\""+name+"\"":name),indentSpace+" ");}
s+=indentSpace;}
return(s+=(objectName.indexOf(' ')!=-1?"\n":""+objectName+">\n"));};Sarissa.escape=function(sXml){return sXml.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'");};Sarissa.unescape=function(sXml){return sXml.replace(/'/g,"'").replace(/"/g,"\"").replace(/>/g,">").replace(/</g,"<").replace(/&/g,"&");};Sarissa.updateCursor=function(oTargetElement,sValue){if(oTargetElement&&oTargetElement.style&&oTargetElement.style.cursor!=undefined){oTargetElement.style.cursor=sValue;}};Sarissa.updateContentFromURI=function(sFromUrl,oTargetElement,xsltproc,callback,skipCache){try{Sarissa.updateCursor(oTargetElement,"wait");var xmlhttp=new XMLHttpRequest();xmlhttp.open("GET",sFromUrl,true);xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){try{var oDomDoc=xmlhttp.responseXML;if(oDomDoc&&Sarissa.getParseErrorText(oDomDoc)==Sarissa.PARSED_OK){Sarissa.updateContentFromNode(xmlhttp.responseXML,oTargetElement,xsltproc);callback(sFromUrl,oTargetElement);}
else{throw Sarissa.getParseErrorText(oDomDoc);}}
catch(e){if(callback){callback(sFromUrl,oTargetElement,e);}
else{throw e;}}}};if(skipCache){var oldage="Sat, 1 Jan 2000 00:00:00 GMT";xmlhttp.setRequestHeader("If-Modified-Since",oldage);}
xmlhttp.send("");}
catch(e){Sarissa.updateCursor(oTargetElement,"auto");if(callback){callback(sFromUrl,oTargetElement,e);}
else{throw e;}}};Sarissa.updateContentFromNode=function(oNode,oTargetElement,xsltproc){try{Sarissa.updateCursor(oTargetElement,"wait");Sarissa.clearChildNodes(oTargetElement);var ownerDoc=oNode.nodeType==Node.DOCUMENT_NODE?oNode:oNode.ownerDocument;if(ownerDoc.parseError&&ownerDoc.parseError.errorCode!=0){var pre=document.createElement("pre");pre.appendChild(document.createTextNode(Sarissa.getParseErrorText(ownerDoc)));oTargetElement.appendChild(pre);}
else{if(xsltproc){oNode=xsltproc.transformToDocument(oNode);}
if(oTargetElement.tagName.toLowerCase()=="textarea"||oTargetElement.tagName.toLowerCase()=="input"){oTargetElement.value=new XMLSerializer().serializeToString(oNode);}
else{if(oNode.nodeType==Node.DOCUMENT_NODE||oNode.ownerDocument.documentElement==oNode){oTargetElement.innerHTML=new XMLSerializer().serializeToString(oNode);}
else{oTargetElement.appendChild(oTargetElement.ownerDocument.importNode(oNode,true));}}}}
catch(e){throw e;}
finally{Sarissa.updateCursor(oTargetElement,"auto");}};Sarissa.formToQueryString=function(oForm){var qs="";for(var i=0;i0){this._timeoutID=window.setTimeout(function(){LOG.warn("request stopped due to timeout");if(!_this._aborted){if(typeof(A4J.AJAX.onAbort)=="function"){A4J.AJAX.onAbort(_this);}}
_this._aborted=true;_this._request.onreadystatechange=A4J.AJAX.Stub;_this._request.abort();if(_this._onerror){_this._errorMessage="Request timeout";_this._onerror(_this,500,_this._errorMessage);}
if(_this.onfinish){_this.onfinish(_this);}
_this._request=undefined;_this=undefined;},this._timeout);}},abort:function(){this._oncomplete_aborted=true;if(!this._aborted){if(typeof(A4J.AJAX.onAbort)=="function"){A4J.AJAX.onAbort(this);}}
this._aborted=true;},getResponseText:function(){try{return this._request.responseText;}catch(e){return null;}},getError:function(){return this._errorMessage;},getParserStatus:function(){return this._parsingStatus;},getContentType:function(){if(!this._contentType){var contentType=this.getResponseHeader('Content-Type');if(contentType){var i=contentType.indexOf(';');if(i>=0){this._contentType=contentType.substring(0,i);}else{this._contentType=contentType;}}else{this._contentType="text/html";}}
return this._contentType;},getResponseHeader:function(name){var result;try{result=this._request.getResponseHeader(name);if(result===""){result=undefined;}}catch(e){}
if(!result){LOG.debug("Header "+name+" not found, search in ");if(this._parsingStatus==Sarissa.PARSED_OK){var metas=this.getElementsByTagName("meta");for(var i=0;i");if(meta.getAttribute("name")==name){result=meta.getAttribute("content");break;}}}}
return result;},getElementsByTagName:function(elementname,element){if(!element){element=this._request.responseXML;}
LOG.debug("search for elements by name '"+elementname+"' "+" in element "+element.nodeName);var elements;try
{elements=element.selectNodes(".//*[local-name()=\""+
elementname+"\"]");}
catch(ex){try{elements=element.getElementsByTagName(elementname);}catch(nf){LOG.debug("getElementsByTagName found no elements, "+nf.Message);}}
return elements;},getElementById:function(id){var oDoc=this._request.responseXML;if(oDoc){if(typeof(oDoc.getElementById)!='undefined'){LOG.debug("call getElementById for id= "+id);return oDoc.getElementById(id);}
else if(typeof(oDoc.selectSingleNode)!="undefined"){LOG.debug("call selectSingleNode for id= "+id);return oDoc.selectSingleNode("//*[@id='"+id+"']");}
else if(typeof(oDoc.nodeFromID)!="undefined"){LOG.debug("call nodeFromID for id= "+id);return oDoc.nodeFromID(id);}
LOG.error("No functions for getElementById found ");}else{LOG.debug("No parsed XML document in response");}
return null;},getJSON:function(id){var data;var dataElement=this.getElementById(id);if(dataElement){try{data=Sarissa.getText(dataElement,true);data=window.eval('('+data+')');}catch(e){LOG.error("Error on parsing JSON data "+e.message,data);}}
return data;},_evaluateScript:function(node){var includeComments=!A4J.AJAX.isXhtmlScriptMode();var newscript=A4J.AJAX.getText(node,includeComments);try{LOG.debug("Evaluate script replaced area in document: ",newscript);if(window.execScript){window.execScript(newscript);}else{window.eval(newscript);}
LOG.debug("Script evaluation succeeded");}catch(e){LOG.error("ERROR Evaluate script: Error name: "+e.name+e.message?". Error message: "+e.message:"");}},evaluateQueueScript:function(){var queueScript=this.getElementById('org.ajax4jsf.queue_script');if(queueScript){this._evaluateScript(queueScript);}},evalScripts:function(node,isLast){var newscripts=this.getElementsByTagName("script",node);LOG.debug("Scripts in updated part count : "+newscripts.length);if(newscripts.length>0){var _this=this;window.setTimeout(function(){for(var i=0;i in response with src="+src);for(var j=0;j0){cref=href.substring(0,sessionid);var params=href.lastIndexOf("?");if(params>sessionid){cref=cref+href.substring(params);}}}
return cref;},_copyAttribute:function(src,dst,attr){var value=src.getAttribute(attr);if(value){dst.setAttribute(attr,value);}}};A4J.AJAX.Listener=function(onafterajax){this.onafterajax=onafterajax;};A4J.AJAX.AjaxListener=function(type,callback){this[type]=callback;};A4J.AJAX._listeners=[];A4J.AJAX.AddListener=function(listener){A4J.AJAX._listeners.push(listener);};A4J.AJAX.removeListeners=function(listener){A4J.AJAX._listeners=[];};A4J.AJAX.removeListener=function(listener){for(var i=A4J.AJAX._listeners.length-1;i>=0;i--){if(A4J.AJAX._listeners[i]==listener){A4J.AJAX._listeners.splice(i,1);}}};A4J.AJAX.HeadElementTransformer=function(elt){this.elt=elt;};A4J.AJAX._headTransformers=[];A4J.AJAX.AddHeadElementTransformer=function(listener){A4J.AJAX._headTransformers.push(listener);};A4J.AJAX.SetZeroRequestDelay=function(options){if(typeof options.requestDelay=="undefined"){options.requestDelay=0;}};A4J.AJAX._pollers={};A4J.AJAX.Poll=function(form,options){A4J.AJAX.StopPoll(options.pollId);if(!options.onerror){options.onerror=function(req,status,message){if(typeof(A4J.AJAX.onError)=="function"){A4J.AJAX.onError(req,status,message);}
A4J.AJAX.Poll(form,options);};}
if(!options.onqueuerequestdrop){options.onqueuerequestdrop=function(){A4J.AJAX.Poll(form,options);};}
A4J.AJAX.SetZeroRequestDelay(options);A4J.AJAX._pollers[options.pollId]=window.setTimeout(function(){A4J.AJAX._pollers[options.pollId]=undefined;if((typeof(options.onsubmit)=='function')&&(options.onsubmit()==false)){A4J.AJAX.Poll(form,options);}else{A4J.AJAX.Submit(form,null,options);}},options.pollinterval);};A4J.AJAX.StopPoll=function(Id){if(A4J.AJAX._pollers[Id]){window.clearTimeout(A4J.AJAX._pollers[Id]);A4J.AJAX._pollers[Id]=undefined;}};A4J.AJAX.Push=function(form,options){A4J.AJAX.StopPush(options.pushId);options.onerror=function(){A4J.AJAX.Push(form,options);};options.onqueuerequestdrop=function(){LOG.debug("Push main request dropped from queue");};A4J.AJAX._pollers[options.pushId]=window.setTimeout(function(){var request=new XMLHttpRequest();request.onreadystatechange=function(){if(request.readyState==4){try{if(request.status==200){if(request.getResponseHeader("Ajax-Push-Status")=="READY"){A4J.AJAX.SetZeroRequestDelay(options);A4J.AJAX.Submit(form||options.dummyForm,null,options);}}}catch(e){}
request=null;A4J.AJAX._pollers[options.pushId]=null;A4J.AJAX.Push(form,options);}}
A4J.AJAX.SendPush(request,options);},options.pushinterval);};A4J.AJAX.SendPush=function(request,options){var url=options.pushUrl||options.actionUrl;request.open('HEAD',url,true);request.setRequestHeader("Ajax-Push-Key",options.pushId);if(options.timeout){request.setRequestHeader("Timeout",options.timeout);}
request.send(null);}
A4J.AJAX.StopPush=function(Id){if(A4J.AJAX._pollers[Id]){window.clearTimeout(A4J.AJAX._pollers[Id]);A4J.AJAX._pollers[Id]=null;}};A4J.AJAX.CloneObject=function(obj,noFunctions){var cloned={};for(var n in obj){if(noFunctions&&typeof(evt[prop])=='function'){continue;}
cloned[n]=obj[n];}
return cloned;}
A4J.AJAX.SubmitForm=function(form,options){var opt=A4J.AJAX.CloneObject(options);if(A4J._formInput){LOG.debug("Form submitted by button "+A4J._formInput.id);opt.control=A4J._formInput;A4J._formInput=null;opt.submitByForm=true;}
A4J.AJAX.Submit(form,null,opt);}
A4J.AJAX.SubmiteventsQueue=function(eventsQueue){eventsQueue.submit();};A4J.AJAX.CloneEvent=function(evt){var domEvt;evt=evt||window.event||null;if(evt){try{domEvt=A4J.AJAX.CloneObject(evt,false);}catch(e){LOG.warn("Exception on clone event "+e.name+":"+e.message);}
LOG.debug("Have Event "+domEvt+" with properties: target: "+domEvt.target+", srcElement: "+domEvt.srcElement+", type: "+domEvt.type);}
return domEvt;};A4J.AJAX.PrepareQuery=function(formId,domEvt,options){for(var li=0;li0)&&(inputs.length>0)){for(var i=0;i0){if(stopElem){stopElem.style.display="none";}
if(startElem){startElem.style.display="";}}else{if(startElem){startElem.style.display="none";}
if(stopElem){stopElem.style.display="";}}
if(start){if(startElem&&(typeof(startElem.onstart)=='function')){startElem.onstart();}}else{if(stopElem&&(typeof(stopElem.onstop)=='function')){stopElem.onstop();}}}catch(e){LOG.error("Exception on status change: ");}};A4J.Query=function(containerId,form){var containerIdOrDefault=containerId||A4J.AJAX.VIEW_ROOT_ID;this._query={AJAXREQUEST:containerIdOrDefault};this._oldSubmit=null;this._form=form;this._containerId=containerIdOrDefault;this._actionUrl=(this._form.action)?this._form.action:this._form;};A4J.Query.prototype={_form:null,_actionUrl:null,_ext:"",_query:{},_oldSubmit:null,_pageBase:window.location.protocol+"//"+window.location.host,hidden:function(control){this._value_query(control);if((control.name.length>4)&&(control.name.lastIndexOf("_idcl")==(control.name.length-5))){control.value="";}else if((control.name.length>12)&&(control.name.lastIndexOf("_link_hidden_")==(control.name.length-13))){control.value="";}},text:function(control){this._value_query(control);},textarea:function(control){this._value_query(control);},'select-one':function(control){if(control.selectedIndex!=-1){this._value_query(control);}},password:function(control){this._value_query(control);},file:function(control){this._value_query(control);},radio:function(control){this._radio_query(control);},checkbox:function(control){this._check_query(control);},'select-multiple':function(control){var cname=control.name;var options=control.options;for(var i=0;i=0)
{return actionUrl.substring(0,ask)+ext+actionUrl.substring(ask);}
else return actionUrl+ext;},getQueryString:function(){var qs="";var iname;var querySegments=[];var paramName;for(var k in this._query){if(typeof Object.prototype[k]=='undefined'){iname=this._query[k];paramName=this._encode(k);if(iname instanceof Object){for(var l=0;llink";var link=elt.firstChild;if(link&&link.getAttribute&&/&b=b$/.test(link.getAttribute('href'))){this._webkitBreakingAmps=2;}else{this._webkitBreakingAmps=1;}}
return this._webkitBreakingAmps>1;};A4J.AJAX.isXhtmlScriptMode=function(){if(!this._xhtmlScriptMode){var elt=document.createElement("div");elt.innerHTML="";var commentFound=false;var s=elt.firstChild;while(s){if(s.nodeType==Node.ELEMENT_NODE){var c=s.firstChild;while(c){if(c.nodeType==Node.COMMENT_NODE){commentFound=true;break;}
c=c.nextSibling;}
break;}
s=s.nextSibling;}
if(commentFound){this._xhtmlScriptMode=2;}else{this._xhtmlScriptMode=1;}}
return this._xhtmlScriptMode>1;}
A4J.AJAX._scriptEvaluated=false;A4J.AJAX.TestScriptEvaluation=function(){if((!document.all||window.opera)&&!A4J.AJAX._scriptTested){try{var oDomDoc=Sarissa.getDomDocument();var _span=document.createElement("span");document.body.appendChild(_span);var xmlString="A4J.AJAX._scriptEvaluated=true;";oDomDoc=(new DOMParser()).parseFromString(xmlString,"text/xml");var _script=oDomDoc.getElementsByTagName("script")[0];if(!window.opera&&!A4J.AJAX.isWebkitBreakingAmps()&&_span.outerHTML){_span.outerHTML=new XMLSerializer().serializeToString(_script);}else{var importednode;importednode=window.document.importNode(_script,true);document.body.replaceChild(importednode,_span);}}catch(e){};}
A4J.AJAX._scriptTested=true;}
A4J.AJAX.TestReplacedGetElementByIdVisibility=function(){if(!A4J.AJAX._replacedGetElementByIdVisibilityTested){A4J.AJAX._replacedGetElementByIdVisibilityTested=true;A4J.AJAX._testReplacedGetElementByIdVisibility=true;A4J.AJAX.TestScriptEvaluation();if(A4J.AJAX._scriptEvaluated){try{var _span=document.createElement("span");document.body.appendChild(_span);var xmlString="A4J.AJAX._testReplacedGetElementByIdVisibility = !!(document.getElementById('_A4J_AJAX_TestReplacedGetElementByIdVisibility'));";oDomDoc=(new DOMParser()).parseFromString(xmlString,"text/xml");var _newSpan=oDomDoc.getElementsByTagName("span")[0];var importednode;importednode=window.document.importNode(_newSpan,true);document.body.replaceChild(importednode,_span);document.body.removeChild(importednode);}catch(e){LOG.error("Error testing replaced elements getElementById() visibility: "+e.message);}}}};A4J.AJAX._eventQueues={};A4J.AJAX.EventQueue=function(){var DROP_NEW='dropNew';var DROP_NEXT='dropNext';var FIRE_NEW='fireNew';var FIRE_NEXT='fireNext';var extend=function(target,source){for(var property in source){target[property]=source[property];}};var extendOptions=function(options){var opts={};for(var name in options){opts[name]=options[name];}
for(var name in this.requestOptions){if(typeof opts[name]=='undefined'){opts[name]=this.requestOptions[name];}}
return opts;};var QueueEntry=function(){var ctor=function(queue,query,options,event){this.queue=queue;this.query=query;this.options=options;this.event=event;this.similarityGroupingId=this.options.similarityGroupingId;this.eventsCount=1;};extend(ctor.prototype,{isIgnoreDupResponses:function(){return this.options.ignoreDupResponses;},getSimilarityGroupingId:function(){return this.similarityGroupingId;},setSimilarityGroupingId:function(id){this.similarityGroupingId=id;},submit:function(){this.query.appendParameter("AJAX:EVENTS_COUNT",this.eventsCount);this.request=A4J.AJAX.SubmitQuery(this.query,this.options,this.event)
var queue=this.queue;this.request.queue=queue;return this.request;},abort:function(){if(this.request&&!this.aborted){this.aborted=true;this.request.abort();}},ondrop:function(){var callback=this.options.onqueuerequestdrop;if(callback){callback.call(this.queue,this.query,this.options,this.event);}},onRequestDelayPassed:function(){this.readyToSubmit=true;this.queue.submitFirst();},startTimer:function(){var delay=this.options.requestDelay;LOG.debug("Queue will wait "+(delay||0)+"ms before submit");if(delay){var _this=this;this.timer=setTimeout(function(){try{_this.onRequestDelayPassed();}finally{_this.timer=undefined;_this=undefined;}},delay);}else{this.onRequestDelayPassed();}},stopTimer:function(){if(this.timer){clearTimeout(this.timer);this.timer=undefined;}},clearEntry:function(){this.stopTimer();if(this.request){this.request.shouldNotifyQueue=false;this.request=undefined;}},getEventsCount:function(){return this.eventsCount;},setEventsCount:function(newCount){this.eventsCount=newCount;},getEventArguments:function(){return[this.query,this.options,this.event];}});return ctor;}();var Queue=function(name,queueOptions,requestOptions){this.items=new Array();this.name=name;this.queueOptions=queueOptions||{};this.requestOptions=requestOptions||{};};extend(Queue.prototype,{submitFirst:function(){var firstItem=this.items[0];if(firstItem){if(!firstItem.request){if(firstItem.readyToSubmit){LOG.debug("Queue '"+this.name+"' will submit request NOW");var req=firstItem.submit();req.shouldNotifyQueue=true;if(this.requestOptions.queueonsubmit){this.requestOptions.queueonsubmit.call(this,req);}}else{LOG.debug("First item is not ready to be submitted yet");}}}else{LOG.debug("Queue is empty now");}},getSize:function(){return this.items.length;},getMaximumSize:function(){return this.queueOptions.size;},isFull:function(){return this.getSize()==this.getMaximumSize();},getSizeExceededBehavior:function(){var policy=this.queueOptions.sizeExceededBehavior;if(!policy){policy=DROP_NEXT;}
return policy;},queue:function(entry){this.items.push(entry);if(this.queueOptions.onrequestqueue){LOG.debug("Call onrequestqueue handler");this.queueOptions.onrequestqueue.apply(this,entry.getEventArguments());}},dequeue:function(){var entry=this.items.shift();if(this.queueOptions.onrequestdequeue){LOG.debug("Call onrequestdequeue handler");this.queueOptions.onrequestdequeue.apply(this,entry.getEventArguments());}},push:function(query,opts,event){var options=extendOptions.call(this,opts);var entry=new QueueEntry(this,query,options,event);var similarityGroupingId=entry.getSimilarityGroupingId();var lastIdx=this.items.length-1;var last=this.items[lastIdx];var handled=false;if(last){if(last.getSimilarityGroupingId()==similarityGroupingId){LOG.debug("Similar request currently in queue '"+this.name+"'");if(last.request){LOG.debug("Request has already beeen sent to server");if(entry.isIgnoreDupResponses()){LOG.debug("Duplicate responses ignore requested");if(!this.isFull()){last.abort();LOG.debug("Response for the current request will be ignored");}else{LOG.debug("Queue is full, cannot set to ignore response for the current request");}}}else{LOG.debug("Combine similar requests and reset timer");handled=true;last.stopTimer();entry.setEventsCount(last.getEventsCount()+1);this.items[lastIdx]=entry;entry.startTimer();}}else{LOG.debug("Last queue entry is not the last anymore. Stopping requestDelay timer and marking entry as ready for submission")
last.stopTimer();last.setSimilarityGroupingId(undefined);last.readyToSubmit=true;}}
if(!handled){if(this.isFull()){LOG.debug("Queue '"+this.name+"' is currently full")
var b=this.getSizeExceededBehavior();var nextIdx=0;while(this.items[nextIdx]&&this.items[nextIdx].request){nextIdx++;}
if(this.queueOptions.onsizeexceeded){this.queueOptions.onsizeexceeded.apply(this,entry.getEventArguments());}
if(b==DROP_NEW){LOG.debug("Queue '"+this.name+"' is going to drop new item");entry.ondrop();handled=true;}else if(b==DROP_NEXT){LOG.debug("Queue '"+this.name+"' is going to drop ["+nextIdx+"] item that is the next one");var nextEntry=this.items.splice(nextIdx,1)[0];if(nextEntry){LOG.debug("Item dropped from queue");nextEntry.stopTimer();nextEntry.ondrop();}else{LOG.debug("There's no such item, will handle new request instead");entry.ondrop();handled=true;}}else if(b==FIRE_NEW){LOG.debug("Queue '"+this.name+"' will submit new request");entry.submit();handled=true;}else if(b==FIRE_NEXT){LOG.debug("Queue '"+this.name+"' is going to drop and fire immediately ["+nextIdx+"] item that is the next one");var nextEntry=this.items.splice(nextIdx,1)[0];if(nextEntry){LOG.debug("Item dropped from queue");nextEntry.stopTimer();nextEntry.submit();}else{LOG.debug("There's no such item, will handle new request instead");entry.submit();handled=true;}}}
this.submitFirst();}
if(!handled){this.queue(entry);LOG.debug("New request added to queue '"+this.name+"'. Queue similarityGroupingId changed to "+similarityGroupingId);entry.startTimer();}},pop:function(){LOG.debug("After request: queue '"+this.name+"'");this.dequeue();LOG.debug("There are "+this.items.length+" requests more in this queue");this.submitFirst();},clear:function(){var length=this.items.length;for(var i=0;i=LOG.LEVEL.priority){LOG._logToConsole(msg,logLevel,pre);if(LOG.transmitToServer)
{LOG._logToServer(msg,logLevel);}}}
LOG._time=function(){var currentTime=new Date();var hours=currentTime.getHours();var minutes=currentTime.getMinutes();if(minutes<10){minutes="0"+minutes;}
var seconds=currentTime.getSeconds();if(seconds<10){seconds="0"+seconds;}
var millisec=currentTime.getTime()%1000;if(millisec<100){millisec="0"+millisec;}
if(millisec<10){millisec="0"+millisec;}
return hours+":"+minutes+":"+seconds+","+millisec;}
LOG._logToConsole=function(msg,logLevel,preformat)
{var consoleDiv;var doc;if(LOG._window&&LOG._window.document){doc=LOG._window.document;consoleDiv=LOG._window.document.body;}else{doc=window.document;consoleDiv=window.document.getElementById(LOG.consoleDivId);}
if(consoleDiv)
{var span=doc.createElement("span");span.style.color=logLevel.color;span.appendChild(doc.createTextNode(logLevel.name+"["+LOG._time()+"]: "));var div=doc.createElement("div");var textnode=doc.createTextNode(msg);div.appendChild(span);div.appendChild(textnode);if(preformat){var pre=doc.createElement("span");textnode=doc.createTextNode(preformat);pre.appendChild(textnode);div.appendChild(pre);}
consoleDiv.appendChild(div);}
else
{}}
LOG._logToServer=function(msg,logLevel)
{var data=logLevel.name.substring(0,1)+msg;}
LOG._requestCallBack=function()
{}
if(!window.RichFaces){window.RichFaces={};}
if(!window.RichFaces.Memory){window.RichFaces.Memory={nodeCleaners:{},componentCleaners:{},addCleaner:function(name,cleaner){this.nodeCleaners[name]=cleaner;},addComponentCleaner:function(name,cleaner,checker){this.componentCleaners[name]={cleaner:cleaner,checker:checker};},applyCleaners:function(node,isAjax,componentNodes){for(var name in this.nodeCleaners){this.nodeCleaners[name](node,isAjax);}
for(var name in this.componentCleaners){if(this.componentCleaners[name].checker(node,isAjax))
componentNodes.push(node);}},_clean:function(oldNode,isAjax,componentNodes){if(oldNode){this.applyCleaners(oldNode,isAjax,componentNodes);var all=oldNode.all;if(all){var counter=0;var length=all.length;for(var counter=0;counter