if(!window.A4J){window.A4J={};} function Sarissa(){};Sarissa.VERSION="${project.version}";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;var _sarissa_iNsCounter=0;var _SARISSA_IEPREFIX4XSLPARAM="";var _SARISSA_HAS_DOM_IMPLEMENTATION=document.implementation&&true;var _SARISSA_HAS_DOM_CREATE_DOCUMENT=_SARISSA_HAS_DOM_IMPLEMENTATION&&document.implementation.createDocument;var _SARISSA_HAS_DOM_FEATURE=_SARISSA_HAS_DOM_IMPLEMENTATION&&document.implementation.hasFeature;var _SARISSA_IS_MOZ=_SARISSA_HAS_DOM_CREATE_DOCUMENT&&_SARISSA_HAS_DOM_FEATURE;var _SARISSA_IS_SAFARI=(navigator.userAgent&&navigator.vendor&&(navigator.userAgent.toLowerCase().indexOf("applewebkit")!=-1||navigator.vendor.indexOf("Apple")!=-1));var _SARISSA_IS_IE=document.all&&window.ActiveXObject&&navigator.userAgent.toLowerCase().indexOf("msie")>-1&&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(typeof XMLDocument=="undefined"&&typeof Document!="undefined"){XMLDocument=Document;} if(_SARISSA_IS_IE){_SARISSA_IEPREFIX4XSLPARAM="xsl:";var _SARISSA_DOM_PROGID="";var _SARISSA_XMLHTTP_PROGID="";var _SARISSA_DOM_XMLWRITER="";Sarissa.pickRecentProgID=function(idList){var bFound=false;for(var i=0;i1){prefix=sName.substring(0,sName.indexOf(":"));sName=sName.substring(sName.indexOf(":")+1);}else{prefix="a"+(_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);var 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);};if(!this.paramsSet[""+nsURI]){this.paramsSet[""+nsURI]=new Array();};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=new Array();};}else{if(_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_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_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_IS_IE){try{document.importNode=function(oNode,bChildren){var tmp;if(oNode.nodeName=='#text'){return document.createTextElement(oNode.data);} else{if(oNode.nodeName=="tbody"||oNode.nodeName=="tr"){tmp=document.createElement("table");} else if(oNode.nodeName=="td"){tmp=document.createElement("tr");} else if(oNode.nodeName=="option"){tmp=document.createElement("select");} else{tmp=document.createElement("div");};if(bChildren){tmp.innerHTML=oNode.xml?oNode.xml:oNode.outerHTML;}else{tmp.innerHTML=oNode.xml?oNode.cloneNode(false).xml:oNode.cloneNode(false).outerHTML;};return tmp.getElementsByTagName("*")[0];};};}catch(e){};};if(!Sarissa.getParseErrorText){Sarissa.getParseErrorText=function(oDoc){var parseErrorText=Sarissa.PARSED_OK;if(!oDoc.documentElement){parseErrorText=Sarissa.PARSED_EMPTY;}else if(oDoc.documentElement.tagName=="parsererror"){parseErrorText=oDoc.documentElement.firstChild.data;parseErrorText+="\n"+oDoc.documentElement.firstChild.nextSibling.firstChild.data;}else if(oDoc.getElementsByTagName("parsererror").length>0){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,"");};Sarissa.clearChildNodes=function(oNode){while(oNode.firstChild){oNode.removeChild(oNode.firstChild);};};Sarissa.copyChildNodes=function(nodeFrom,nodeTo,bPreserveExisting){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;if(typeof(ownerDoc.importNode)!="undefined"){for(var 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 itemKey='';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":"\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,"&");};A4J.AJAX={};A4J.AJAX.XMLHttpRequest=function(query){this._query=query;};A4J.AJAX.XMLHttpRequest.prototype={_query:null,_timeout:0,_timeoutID:null,onready:null,_parsingStatus:Sarissa.PARSED_EMPTY,_errorMessage:"XML Response object not set",_contentType:null,_onerror:function(req,status,message){window.alert(message);},onfinish:null,options:{},domEvt:null,form:null,_request:null,_aborted:false,setRequestTimeout:function(timeout){this._timeout=timeout;},send:function(){this._request=new XMLHttpRequest();var _this=this;this._request.onreadystatechange=function(){if(_this._aborted){return;};LOG.debug("Reqest state : "+_this._request.readyState);if(_this._request.readyState==4){LOG.debug("Reqest end with state 4");if(_this._timeoutID){window.clearTimeout(_this._timeoutID);} if(_this._request.status==200){try{LOG.debug("Response with content-type: "+_this.getResponseHeader('Content-Type'));LOG.debug("Full response content: ",_this.getResponseText());}catch(e){} if(_this._request.responseXML){_this._parsingStatus=Sarissa.getParseErrorText(_this._request.responseXML);if(_this._parsingStatus==Sarissa.PARSED_OK&&Sarissa.setXpathNamespaces){Sarissa.setXpathNamespaces(_this._request.responseXML,"xmlns='http://www.w3.org/1999/xhtml'");}} if(_this.onready){_this.onready(_this);}}else{_this._errorMessage="Reqest error, status : "+_this._request.status+" "+_this._request.statusText+"\n Message: "+_this.getResponseHeader("Ajax-Error-Message");LOG.error(_this._errorMessage);if(typeof(_this._onerror)=="function"){_this._onerror(_this,_this._request.status,_this._errorMessage);}} if(_this.onfinish){_this.onfinish(_this);} _this=undefined;}};try{LOG.debug("Start XmlHttpRequest");this._request.open('POST',this._query.getActionUrl(""),true);var contentType="application/x-www-form-urlencoded; charset=UTF-8";this._request.setRequestHeader("Content-Type",contentType);}catch(e){LOG.debug("XmlHttpRequest not support setRequestHeader - use GET instead of POST");this._request.open('GET',this._query.getActionUrl("")+"?"+this._query.getQueryString(),true);} this._request.send(this._query.getQueryString());if(this._timeout>0){this._timeoutID=window.setTimeout(function(){LOG.warn("request stopped due to timeout");if(!_this._aborted){A4J.AJAX.status(_this.containerId,_this.options.status,false);if(typeof(A4J.AJAX.onAbort)=="function"){A4J.AJAX.onAbort(_this);}} _this._aborted=true;_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(){if(!this._aborted){A4J.AJAX.status(this.containerId,this.options.status,false);if(typeof(A4J.AJAX.onAbort)=="function"){A4J.AJAX.onAbort(this);}} this._aborted=true;if(this._request){try{this._request.abort();if(this._timeoutID){window.clearTimeout(this._timeoutID);}}catch(e){LOG.warn("Exception for abort current request "+e.Message);}}},getResponseText:function(){return this._request.responseText;},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+"\"]");LOG.debug("selectNodes found "+elements.length);} catch(ex){elements=element.getElementsByTagName(elementname);LOG.debug("getElementsByTagName found "+elements.length);} return elements;},getElementById:function(id){var oDoc=this._request.responseXML;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 ");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;},evalScripts:function(node){var newscripts=this.getElementsByTagName("script",node);LOG.debug("Scripts in updated part count : "+newscripts.length);if(newscripts.length>0){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._eventsQueues={};A4J.AJAX.Listener=function(onafterajax){this.onafterajax=onafterajax;};A4J.AJAX._listeners=[];A4J.AJAX.AddListener=function(listener){A4J.AJAX._listeners.push(listener);};A4J.AJAX.removeListeners=function(listener){A4J.AJAX._listeners=[];};A4J.AJAX._pollers={};A4J.AJAX.Poll=function(containerId,form,options){A4J.AJAX.StopPoll(options.pollId);options.onerror=function(){A4J.AJAX.Poll(containerId,form,options);};A4J.AJAX._pollers[options.pollId]=window.setTimeout(function(){A4J.AJAX._pollers[options.pollId]=undefined;if((typeof(options.onsubmit)=='function')&&(!options.onsubmit())){A4J.AJAX.Poll(containerId,form,options);}else{A4J.AJAX.SubmitRequest(containerId,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(containerId,form,options){A4J.AJAX.StopPush(options.pushId);options.onerror=function(){A4J.AJAX.Push(containerId,form,options);};A4J.AJAX._pollers[options.pushId]=window.setTimeout(function(){var request=new XMLHttpRequest();request.onreadystatechange=function(){if(request.readyState==4){try{if(request.status==200){A4J.AJAX.SubmitRequest(containerId,form||options.dummyForm,null,options);}}catch(e){} A4J.AJAX.Push(containerId,form,options);request=null;}} 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();} A4J.AJAX.StopPush=function(Id){if(A4J.AJAX._pollers[Id]){window.clearTimeout(A4J.AJAX._pollers[Id]);A4J.AJAX._pollers[Id]=undefined;}};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(containerId,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(containerId,form,null,opt);} A4J.AJAX.Submit=function(containerId,form,evt,options){var domEvt;evt=evt||window.event||null;if(evt){try{domEvt=A4J.AJAX.CloneObject(evt,false);}catch(e){LOG.warn("Exception on clone event");} LOG.debug("Have Event "+domEvt+" with properties: target: "+domEvt.target+", srcElement: "+domEvt.srcElement+", type: "+domEvt.type);} if(options.eventsQueue){var eventsQueue=A4J.AJAX._eventsQueues[options.eventsQueue];if(eventsQueue){var eventsCount=eventsQueue.options.eventsCount||1;eventsQueue.wait=true;eventsQueue.containerId=containerId;eventsQueue.form=form;eventsQueue.domEvt=domEvt;eventsQueue.options=options;eventsQueue.options.eventsCount=eventsCount+1;if(options.ignoreDupResponses&&eventsQueue.request){LOG.debug("Abort uncompleted request in queue "+options.eventsQueue);eventsQueue.request.abort();eventsQueue.request=false;eventsQueue.wait=false;if(options.requestDelay){window.setTimeout(function(){LOG.debug("End delay waiting, make request in queue "+options.eventsQueue);A4J.AJAX.SubmiteventsQueue(A4J.AJAX._eventsQueues[options.eventsQueue]);},options.requestDelay);LOG.debug("Create new waiting for request in queue "+options.eventsQueue);return;}}else{LOG.debug("Put new event to queue "+options.eventsQueue);return;}}else{var queue={wait:false,containerId:containerId,form:form,domEvt:domEvt,options:options};A4J.AJAX._eventsQueues[options.eventsQueue]=queue;if(options.requestDelay){window.setTimeout(function(){LOG.debug("End delay waiting, make request in queue "+options.eventsQueue);A4J.AJAX.SubmiteventsQueue(A4J.AJAX._eventsQueues[options.eventsQueue]);},options.requestDelay);LOG.debug("Event occurs, create waiting for request in queue "+options.eventsQueue);return;}}} A4J.AJAX.SubmitRequest(containerId,form,domEvt,options);};A4J.AJAX.SubmiteventsQueue=function(eventsQueue){eventsQueue.wait=false;A4J.AJAX.SubmitRequest(eventsQueue.containerId,eventsQueue.form,eventsQueue.domEvt,eventsQueue.options);};A4J.AJAX.SubmitRequest=function(containerId,formId,domEvt,options){LOG.debug("NEW AJAX REQUEST !!! with form :"+formId);var form=window.document.getElementById(formId);if((!form||form.nodeName.toUpperCase()!="FORM")&&domEvt){var srcElement=domEvt.target||domEvt.srcElement||null;if(srcElement){form=A4J.AJAX.locateForm(srcElement);};};if(!options.submitByForm&&form&&form.onsubmit){LOG.debug("Form have onsubmit function, call it");if(form.onsubmit()==false){return false;};};var tosend=new A4J.Query(containerId,form);tosend.appendFormControls(options.single);if(options.control){tosend.appendControl(options.control,true);};if(options.parameters){tosend.appendParameters(options.parameters);};if(options.eventsCount){tosend.appendParameter("AJAX:EVENTS_COUNT",options.eventsCount);};if(options.actionUrl){tosend.setActionUrl(options.actionUrl);};var req=new A4J.AJAX.XMLHttpRequest(tosend);req.options=options;req.containerId=containerId;req.domEvt=domEvt;req.form=form;if(options.timeout){req.setRequestTimeout(options.timeout);};req.onready=A4J.AJAX.processResponse;if(options.onerror){req._onerror=options.onerror;}else if(typeof(A4J.AJAX.onError)=="function"){req._onerror=A4J.AJAX.onError;} req.onfinish=A4J.AJAX.finishRequest;A4J.AJAX.status(containerId,options.status,true);req.send();if(options.eventsQueue){var eventsQueue=A4J.AJAX._eventsQueues[options.eventsQueue];if(eventsQueue){eventsQueue.request=req;}} return false;};A4J.AJAX.processResponse=function(req){var options=req.options;var ajaxResponse=req.getResponseHeader('Ajax-Response');if(ajaxResponse!="true"){LOG.warn("No ajax response header ");var loc=req.getResponseHeader("Location");try{if(ajaxResponse=='redirect'&&loc){var expiredMsg=req.getResponseHeader('Ajax-Expired');if(expiredMsg){loc=A4J.AJAX.onExpired(loc,expiredMsg);if(!loc){return;}} window.location=loc;}else if(ajaxResponse=="reload"){window.location.reload(true);}else{var isIE=_SARISSA_IS_IE;if(isIE){var oldDocOpen=window.document.open;window.document.open=function(){oldDocOpen.apply(this,arguments);}} window.setTimeout(function(){var isDocOpen=false;try{window.document.open(req.getContentType(),true);isDocOpen=true;window.document.write(req.getResponseText());window.document.close();if(isIE){window.location.reload(false);}}catch(e){if(isDocOpen){window.document.close();} var oDomDoc=(new DOMParser()).parseFromString(req.getResponseText(),"application/xhtml+xml");var node=window.document.importNode(oDomDoc.documentElement,true);window.document.replaceChild(node,window.document.documentElement);}},30);}}catch(e){LOG.error("Error redirect to new location ");}}else{if(req.getParserStatus()==Sarissa.PARSED_OK){var idsFromResponse=req.getResponseHeader("Ajax-Update-Ids");if(options.affected){req.appendNewHeadElements();for(var k=0;k