
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;i<idList.length&&!bFound;i++){try{var oDoc=new ActiveXObject(idList[i]);o2Store=idList[i];bFound=true;}catch(objException){};};if(!bFound){throw"Could not retreive a valid progID of Class: "+idList[idList.length-1]+". (original exception: "+e+")";};idList=null;return o2Store;};_SARISSA_DOM_PROGID=null;_SARISSA_THREADEDDOM_PROGID=null;_SARISSA_XSLTEMPLATE_PROGID=null;_SARISSA_XMLHTTP_PROGID=null;if(!window.XMLHttpRequest){XMLHttpRequest=function(){if(!_SARISSA_XMLHTTP_PROGID){_SARISSA_XMLHTTP_PROGID=Sarissa.pickRecentProgID(["Msxml2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]);};return new ActiveXObject(_SARISSA_XMLHTTP_PROGID);};};Sarissa.getDomDocument=function(sUri,sName){if(!_SARISSA_DOM_PROGID){_SARISSA_DOM_PROGID=Sarissa.pickRecentProgID(["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.3.0","MSXML2.DOMDocument","MSXML.DOMDocument","Microsoft.XMLDOM"]);};var oDoc=new ActiveXObject(_SARISSA_DOM_PROGID);if(sName){var prefix="";if(sUri){if(sName.indexOf(":")>1){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<oDoc.parseError.linepos;i++){parseErrorText+="-";};parseErrorText+="^\n";}
else if(oDoc.documentElement==null){parseErrorText=Sarissa.PARSED_EMPTY;};return parseErrorText;};Sarissa.setXpathNamespaces=function(oDoc,sNsSet){oDoc.setProperty("SelectionLanguage","XPath");oDoc.setProperty("SelectionNamespaces",sNsSet);};XSLTProcessor=function(){if(!_SARISSA_XSLTEMPLATE_PROGID){_SARISSA_XSLTEMPLATE_PROGID=Sarissa.pickRecentProgID(["Msxml2.XSLTemplate.6.0","MSXML2.XSLTemplate.3.0"]);};this.template=new ActiveXObject(_SARISSA_XSLTEMPLATE_PROGID);this.processor=null;};XSLTProcessor.prototype.importStylesheet=function(xslDoc){if(!_SARISSA_THREADEDDOM_PROGID){_SARISSA_THREADEDDOM_PROGID=Sarissa.pickRecentProgID(["MSXML2.FreeThreadedDOMDocument.6.0","MSXML2.FreeThreadedDOMDocument.3.0"]);};xslDoc.setProperty("SelectionLanguage","XPath");xslDoc.setProperty("SelectionNamespaces","xmlns:xsl='http://www.w3.org/1999/XSL/Transform'");var converted=new ActiveXObject(_SARISSA_THREADEDDOM_PROGID);if(xslDoc.url&&xslDoc.selectSingleNode("//xsl:*[local-name() = 'import' or local-name() = 'include']")!=null){converted.async=false;if(_SARISSA_THREADEDDOM_PROGID=="MSXML2.FreeThreadedDOMDocument.6.0"){converted.setProperty("AllowDocumentFunction",true);converted.resolveExternals=true;}
converted.load(xslDoc.url);}else{converted.loadXML(xslDoc.xml);};converted.setProperty("SelectionNamespaces","xmlns:xsl='http://www.w3.org/1999/XSL/Transform'");var output=converted.selectSingleNode("//xsl:output");this.outputMethod=output?output.getAttribute("method"):"html";this.template.stylesheet=converted;this.processor=this.template.createProcessor();this.paramsSet=new Array();};XSLTProcessor.prototype.transformToDocument=function(sourceDoc){if(_SARISSA_THREADEDDOM_PROGID){this.processor.input=sourceDoc;var outDoc=new ActiveXObject(_SARISSA_DOM_PROGID);this.processor.output=outDoc;this.processor.transform();return outDoc;}
else{if(!_SARISSA_DOM_XMLWRITER){_SARISSA_DOM_XMLWRITER=Sarissa.pickRecentProgID(["Msxml2.MXXMLWriter.6.0","Msxml2.MXXMLWriter.3.0","MSXML2.MXXMLWriter","MSXML.MXXMLWriter","Microsoft.XMLDOM"]);};this.processor.input=sourceDoc;var outDoc=new ActiveXObject(_SARISSA_DOM_XMLWRITER);this.processor.output=outDoc;this.processor.transform();var oDoc=new ActiveXObject(_SARISSA_DOM_PROGID);oDoc.loadXML(outDoc.output+"");return oDoc;};};XSLTProcessor.prototype.transformToFragment=function(sourceDoc,ownerDoc){this.processor.input=sourceDoc;this.processor.transform();var s=this.processor.output;var f=ownerDoc.createDocumentFragment();if(this.outputMethod=='text'){f.appendChild(ownerDoc.createTextNode(s));}else if(ownerDoc.body&&ownerDoc.body.innerHTML){var container=ownerDoc.createElement('div');container.innerHTML=s;while(container.hasChildNodes()){f.appendChild(container.firstChild);}}
else{var oDoc=new ActiveXObject(_SARISSA_DOM_PROGID);if(s.substring(0,5)=='<?xml'){s=s.substring(s.indexOf('?>')+2);}
var xml=''.concat('<my>',s,'</my>');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<nodes.length;i++){var node=nodes[i];var nodeType=node.nodeType;if(nodeType==Node.TEXT_NODE||nodeType==Node.CDATA_SECTION_NODE){s+=node.data;}else if(deep==true&&(nodeType==Node.ELEMENT_NODE||nodeType==Node.DOCUMENT_NODE||nodeType==Node.DOCUMENT_FRAGMENT_NODE)){s+=Sarissa.getText(node,true);};};return s;};if(!window.XMLSerializer&&Sarissa.getDomDocument&&Sarissa.getDomDocument("","foo",null).xml){XMLSerializer=function(){};XMLSerializer.prototype.serializeToString=function(oNode){return oNode.xml;};};Sarissa.stripTags=function(s){return s.replace(/<[^>]+>/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<nodes.length;i++){nodeTo.appendChild(ownerDoc.importNode(nodes[i],true));};}else{for(var i=0;i<nodes.length;i++){nodeTo.appendChild(nodes[i].cloneNode(true));};};};Sarissa.moveChildNodes=function(nodeFrom,nodeTo,bPreserveExisting){if((!nodeFrom)||(!nodeTo)){throw"Both source and destination nodes must be provided";};if(!bPreserveExisting){Sarissa.clearChildNodes(nodeTo);};var nodes=nodeFrom.childNodes;if(nodeFrom.ownerDocument==nodeTo.ownerDocument){while(nodeFrom.firstChild){nodeTo.appendChild(nodeFrom.firstChild);};}else{var ownerDoc=nodeTo.nodeType==Node.DOCUMENT_NODE?nodeTo:nodeTo.ownerDocument;if(typeof(ownerDoc.importNode)!="undefined"){for(var i=0;i<nodes.length;i++){nodeTo.appendChild(ownerDoc.importNode(nodes[i],true));};}else{for(var i=0;i<nodes.length;i++){nodeTo.appendChild(nodes[i].cloneNode(true));};};Sarissa.clearChildNodes(nodeFrom);};};Sarissa.xmlize=function(anyObject,objectName,indentSpace){indentSpace=indentSpace?indentSpace:'';var s=indentSpace+'<'+objectName+'>';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?"</array-item>\n":"</"+objectName+">\n");};Sarissa.escape=function(sXml){return sXml.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");};Sarissa.unescape=function(sXml){return sXml.replace(/&apos;/g,"'").replace(/&quot;/g,"\"").replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&amp;/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 <meta>");if(this._parsingStatus==Sarissa.PARSED_OK){var metas=this.getElementsByTagName("meta");for(var i=0;i<metas.length;i++){var meta=metas[i];LOG.debug("Find <meta name='"+meta.getAttribute('name')+"' content='"+meta.getAttribute('content')+"'>");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<newscripts.length;i++){var newscript=Sarissa.getText(newscripts[i],true);try{LOG.debug("Evaluate script replaced area in document: ",newscript);if(window.execScript){window.execScript(newscript);}else{window.eval(newscript);}}catch(e){LOG.error("ERROR Evaluate script:  Error name: "+e.name+e.message?". Error message: "+e.message:"");}}
newscripts=null;},50);}},updatePagePart:function(id){var newnode=this.getElementById(id);if(!newnode){LOG.error("New node for ID "+id+" is not present in response");return;}
var oldnode=window.document.getElementById(id);if(oldnode){var anchor=oldnode.parentNode;Sarissa.clearChildNodes(oldnode);if(oldnode.outerHTML){LOG.debug("Replace content of node by outerHTML()");oldnode.outerHTML=new XMLSerializer().serializeToString(newnode);}else{var importednode;importednode=window.document.importNode(newnode,true);LOG.debug("Replace content of node by replaceChild()");anchor.replaceChild(importednode,oldnode);}
if(!A4J.AJAX._scriptEvaluated){this.evalScripts(newnode);}
LOG.debug("Update part of page for Id: "+id+" successful");}else{LOG.warn("Node for replace by response with id "+id+" not found in document");}},appendNewHeadElements:function(){this._appendNewElements("script","src",["type","language","charset"]);this._appendNewElements("link","href",["type","rel","rev","media"]);},_appendNewElements:function(tag,href,attributes){var newscripts=this.getElementsByTagName(tag);var oldscripts=document.getElementsByTagName(tag);var head=document.getElementsByTagName("head")[0]||document.documentElement;for(var i=0;i<newscripts.length;i++){var element=newscripts[i];var src=element.getAttribute(href);if(src){var exist=false;LOG.debug("<"+tag+"> in response with src="+src);for(var j=0;j<oldscripts.length;j++){if(this._noSessionHref(src)==this._noSessionHref(oldscripts[j].getAttribute(href))){LOG.debug("Such element exist in document");exist=true;break;}}
if(!exist){var script=document.createElement(tag);script.setAttribute(href,src);for(var j=0;j<attributes.length;j++){this._copyAttribute(element,script,attributes[j]);}
LOG.debug("append element to document");head.appendChild(script);}}}},_noSessionHref:function(href){var cref=href;if(href){var sessionid=href.lastIndexOf(";jsessionid=");if(sessionid>0){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<options.affected.length;k++){LOG.debug("Update page part from call parameter for ID "+options.affected[k]);req.updatePagePart(options.affected[k]);};}else if(idsFromResponse!=""){LOG.debug("Update page by list of rendered areas from response "+idsFromResponse);req.appendNewHeadElements();var childs=idsFromResponse.split(",");for(var k=0;k<childs.length;k++){var id=childs[k];LOG.debug("Attempt to update part of page for Id: "+id);if(id){req.updatePagePart(id);};};}else{LOG.warn("No information in response about elements to replace");}
var idsSpan=req.getElementById("ajax-update-ids");LOG.debug("Hidden JSF state fields: "+idsSpan);if(idsSpan!=null){var namespace=options.parameters['org.ajax4jsf.portlet.NAMESPACE'];LOG.debug("Namespace for hidden view-state input fields is "+namespace);var anchor=namespace?window.document.getElementById(namespace):window.document;var inputs=anchor.getElementsByTagName("input");var newinputs=req.getElementsByTagName("input",idsSpan);A4J.AJAX.replaceViewState(inputs,newinputs);newinputs=req.getElementsByTagName("INPUT",idsSpan);A4J.AJAX.replaceViewState(inputs,newinputs);}
for(var li=0;li<A4J.AJAX._listeners.length;li++){var listener=A4J.AJAX._listeners[li];if(listener.onafterajax){var data=req.getJSON('_ajax:data');listener.onafterajax(req,req.domEvt,data);}}
var focusId=req.getJSON("_A4J.AJAX.focus");if(focusId){LOG.debug("focus must be set to control "+focusId);var focusElement=false;if(req.form){focusElement=req.form.elements[focusId];}
if(!focusElement){LOG.debug("No control element "+focusId+" in submitted form");focusElement=document.getElementById(focusId);}
if(focusElement){LOG.debug("Set focus to control ");focusElement.focus();}else{LOG.warn("Element for set focus not found");}}else{LOG.debug("No focus information in response");}}else{LOG.error("Error parsing XML");LOG.error("Parse Error: "+req.getParserStatus());}}};A4J.AJAX.onExpired=function(loc,expiredMsg){if(window.confirm(expiredMsg)){return loc;}else{return undefined;}};A4J.AJAX.replaceViewState=function(inputs,newinputs){LOG.debug("Replace value for inputs: "+inputs.length+" by new values: "+newinputs.length);if((newinputs.length>0)&&(inputs.length>0)){for(var i=0;i<newinputs.length;i++){var newinput=newinputs[i];LOG.debug("Input in response: "+newinput.getAttribute("name"));for(var j=0;j<inputs.length;j++){var input=inputs[j];if(input.name==newinput.getAttribute("name")){LOG.debug("Found same input on page with type: "+input.type);input.value=newinput.getAttribute("value");}}}}};A4J.AJAX.finishRequest=function(req){var options=req.options;A4J.AJAX.status(req.containerId,options.status,false);if(options.oncomplete){LOG.debug("Call request oncomplete function after processing updates");window.setTimeout(function(){options.oncomplete(req,req.domEvt,req.getJSON('_ajax:data'));},50);}
if(options.eventsQueue){var eventsQueue=A4J.AJAX._eventsQueues[options.eventsQueue];if(eventsQueue){A4J.AJAX._eventsQueues[options.eventsQueue]=false;if(eventsQueue.wait){LOG.debug("Queue not empty, execute next request in queue "+options.eventsQueue);A4J.AJAX.SubmiteventsQueue(eventsQueue);}}}};A4J.AJAX.locateForm=function(obj){var parent=obj;while(parent&&parent.nodeName.toLowerCase()!='form'){parent=parent.parentNode;};return parent;};A4J.AJAX.getElementById=function(id,options){var namespace=options['org.ajax4jsf.portlet.NAMESPACE'];var anchor=namespace?window.document.getElementById(namespace):window.document;var element;if(anchor){element=anchor.getElementById(id);}else{LOG.error("No root element for portlet namespace "+namespace+" on page");}
return element;}
A4J.AJAX._requestsCounts={};A4J.AJAX.status=function(regionID,targetID,start){try{var elem;targetID=targetID||regionID+":status";A4J.AJAX._requestsCounts[targetID]=(A4J.AJAX._requestsCounts[targetID]||0)+(start?1:-1);if(A4J.AJAX._requestsCounts[targetID]>0){elem=document.getElementById(targetID+".stop");if(elem){elem.style.display="none";}
elem=document.getElementById(targetID+".start");if(elem){elem.style.display="";if(typeof(elem.onstart)=='function'){elem.onstart();}}}else{elem=document.getElementById(targetID+".start");if(elem){elem.style.display="none";}
elem=document.getElementById(targetID+".stop");if(elem){elem.style.display="";if(typeof(elem.onstop)=='function'){elem.onstop();}}}}catch(e){LOG.error("Exception on status change: ");}};A4J.Query=function(containerId,form){this._query={AJAXREQUEST:containerId};this._oldSubmit=null;this._form=form;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._check_query(control);},checkbox:function(control){this._check_query(control);},'select-multiple':function(control){var cname=control.name;var childs=control.childNodes;for(var i=0;i<childs.length;i++){var child=childs[i];if(child.tagName=='OPTGROUP'){var options=child.childNodes;for(var j=0;j<options.length;j++){this._addOption(cname,options[j]);}}else{this._addOption(cname,child);}}},_addOption:function(cname,option){if(option.selected){if(!this._query[cname]){this._query[cname]=[];}
this._query[cname][this._query[cname].length]=option.value;}},image:function(control,action){if(action)this._value_query(control);},button:function(control,action){if(action)this._value_query(control);},submit:function(control,action){if(action){this._value_query(control);}},link:function(control,action){if(action){this._value_query(control);if(control.parameters){this.appendParameters(control.parameters);}}},input:function(control,action){if(action){this.link(control,action);if(control.control){this.appendControl(control.control,action);}}},appendControl:function(control,action){if(this[control.type]){this[control.type](control,action);}else{this._appendById(control.id||control);}},appendFormControls:function(hiddenOnly){try{var elems=this._form.elements;if(elems){var k=0;for(k=0;k<elems.length;k++){var element=elems[k];try{if(!hiddenOnly||element.type=="hidden"){this.appendControl(element,false);}}catch(ee){LOG.error("exception in building query ( append form control ) "+ee);}}}}catch(e){LOG.warn("Error with append form controls to query "+e)}},appendParameters:function(parameters){for(k in parameters){if(typeof Object.prototype[k]=='undefined'){LOG.debug("parameter "+k+" with value "+parameters[k]);this.appendParameter(k,parameters[k]);}}},setActionUrl:function(actionUrl){this._actionUrl=actionUrl;},getActionUrl:function(ext){var actionUrl=this._actionUrl;var ask=actionUrl.indexOf('?');if(actionUrl.substring(0,1)=='/'){actionUrl=this._pageBase+actionUrl;}
if(!ext)ext=this._ext;if(ask>=0)
{return actionUrl.substring(0,ask)+ext+actionUrl.substring(ask);}
else return actionUrl+ext;},getQueryString:function(){var qs="";var iname;for(var k in this._query){if(typeof Object.prototype[k]=='undefined'){iname=this._query[k];if(iname instanceof Object){for(var l=0;l<iname.length;l++){qs+=this._encode(k)+"="+this._encode(iname[l])+"&";}}else{qs+=this._encode(k)+"="+this._encode(iname)+"&";}}}
LOG.debug("QueryString: "+qs);return qs;},_appendById:function(id){this.appendParameter(this._form.id+"_link_hidden_",id);},_value_query:function(control){LOG.debug("Append "+control.type+" control "+control.name+" with value ["+control.value+"] and value attribute ["+control.getAttribute('value')+"]");if(null!=control.value){this.appendParameter(control.name,control.value);}},_check_query:function(control){if(control.checked){this.appendParameter(control.name,control.value?control.value:"on");}},appendParameter:function(cname,value){if(!this._query[cname]){this._query[cname]=value;return;}else if(!(this._query[cname]instanceof Object)){this._query[cname]=[this._query[cname]];}
this._query[cname][this._query[cname].length]=value;},_encode:function(string){try{return encodeURIComponent(string);}catch(e){var str=escape(string);return str.split('+').join('%2B');}}}
A4J.AJAX._scriptEvaluated=false;if(!document.all||window.opera){setTimeout(function(){try{var oDomDoc=Sarissa.getDomDocument();var _span=document.createElement("span");document.documentElement.appendChild(_span);var xmlString="<html xmlns='http://www.w3.org/1999/xhtml'><sc"+"ript>A4J.AJAX._scriptEvaluated=true;</scr"+"ipt></html>";oDomDoc=(new DOMParser()).parseFromString(xmlString,"text/xml");var _script=oDomDoc.getElementsByTagName("script")[0];if(_span.outerHTML){_span.outerHTML=new XMLSerializer().serializeToString(_script);}else{var importednode;importednode=window.document.importNode(_script,true);document.documentElement.replaceChild(importednode,_span);}}catch(e){};},50);}
function LOG()
{throw"Do not instantiate LOG";}
LOG.Level=function(name,priority,color){this.name=name;this.priority=priority;if(color){this.color=color;}}
LOG.OFF=new LOG.Level("off",1000);LOG.FATAL=new LOG.Level("fatal",900,"red");LOG.ERROR=new LOG.Level("error",800,"red");LOG.WARN=new LOG.Level("warn",500,"yellow");LOG.INFO=new LOG.Level("info",400,"blue");LOG.DEBUG=new LOG.Level("debug",300,"darkblue");LOG.ALL=new LOG.Level("all",100);LOG.A4J_DEBUG=new LOG.Level("a4j_debug",0,"green");LOG.LEVEL=LOG.OFF;LOG.window=null;LOG.transmitToServer=true;LOG.consoleDivId="logConsole";LOG.styles={a4j_debug:"green",debug:"darkblue",info:"blue",warn:"yellow",error:"red",fatal:"red"};LOG.a4j_debug=function(msg,pre)
{LOG._log(msg,LOG.A4J_DEBUG,pre);}
LOG.debug=function(msg,pre)
{LOG._log(msg,LOG.DEBUG,pre);}
LOG.info=function(msg,pre)
{LOG._log(msg,LOG.INFO,pre);}
LOG.warn=function(msg,pre)
{LOG._log(msg,LOG.WARN,pre);}
LOG.error=function(msg,pre)
{LOG._log(msg,LOG.ERROR,pre);}
LOG.fatal=function(msg,pre)
{LOG._log(msg,LOG.FATAL,pre);}
LOG.registerPopup=function(hotkey,name,width,height,level){if(!LOG._onKeyUp){LOG._onKeyUp=document.onkeyup;}
var key=hotkey.toUpperCase();document.onkeyup=function(e){if(window.event){e=window.event;};if(String.fromCharCode(e.keyCode)==key&e.shiftKey&e.ctrlKey){LOG.LEVEL=level;LOG.openWindow(name,'width='+width+',height='+height+',toolbar=no,scrollbars=yes,location=no,statusbar=no,menubar=no,resizable=yes,left = '+((screen.width-width)/2)+',top ='+((screen.height-height)/2));}else{if(LOG._onKeyUp)LOG._onKeyUp(e);};}}
LOG.openWindow=function(name,features){if(LOG.window){LOG.window.focus();}else{LOG.window=window.open("",name,features);var _LOG=LOG;LOG.window.onunload=function(){_LOG.window=null;_LOG.LEVEL=_LOG.OFF;_LOG=undefined;}}}
LOG._log=function(msg,logLevel,pre)
{if(logLevel.priority>=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()
{}