var functions=new Array();var ranges=new Array();var documents=new Array();function Function(id,libelle){this.id=id;this.libelle=libelle}function Range(id,libelle,idFunction){this.id=id;this.libelle=libelle;this.idFunction=idFunction}function Document(id,libelle,idFunction,idRange){this.id=id;this.libelle=libelle;this.idFunction=idFunction;this.idRange=idRange}function rangeActivation(indiceFunction,firstOptionLabel){if(indiceFunction!='')window.document.formulaire.p_ranges.disabled=false;else{window.document.formulaire.p_ranges.disabled=true;window.document.formulaire.p_ranges.options[0].selected=true}window.document.formulaire.p_documents.disabled=true;window.document.formulaire.p_documents.options[0].selected=true;document.getElementById("submitButton").style.display="none";document.getElementById("submitButtonHide").style.display="inline";fillRangeList(indiceFunction,firstOptionLabel)}function legacyRangeActivation(indiceFunction,firstOptionLabel){if(indiceFunction!='')window.document.formulaire.p_ranges.disabled=false;else{window.document.formulaire.p_ranges.disabled=true;window.document.formulaire.p_ranges.options[0].selected=true}document.getElementById("submitButton").style.display="none";document.getElementById("submitButtonHide").style.display="inline";fillRangeList(indiceFunction,firstOptionLabel)}function documentActivation(indiceRange,indiceFunction,firstOptionLabel,isPrepControlActivated,usePrepLabel,errorLabel){if(indiceRange!=''&&indiceFunction!='')window.document.formulaire.p_documents.disabled=false;else{window.document.formulaire.p_documents.disabled=true;window.document.formulaire.p_documents.options[0].selected=true}document.getElementById("submitButton").style.display="none";document.getElementById("submitButtonHide").style.display="inline";fillDocumentList(indiceRange,indiceFunction,firstOptionLabel,isPrepControlActivated,usePrepLabel,errorLabel)}function formActivation(indiceDocument){document.getElementById("submitButton").style.display="none";document.getElementById("submitButtonHide").style.display="inline";if(indiceDocument!=''&&indiceDocument!=0){document.getElementById("submitButton").style.display="inline";document.getElementById("submitButtonHide").style.display="none"}}function formLegacyActivation(indiceRange,contentTypes,isPrepControlActivated,errorLabel){document.getElementById("submitButton").style.display="none";document.getElementById("submitButtonHide").style.display="inline";if(indiceRange!=''&&indiceRange!=0){if(isPrepControlActivated=='true'&&hashMapAvailableContentTypeFromPrep!=null){var tabContentsTypes=contentTypes.split(",");var numberOfContentType=0;for(j=0;j<tabContentsTypes.length;j++){if(hashMapAvailableContentTypeFromPrep.get(tabContentsTypes[j])!=null&&hashMapAvailableContentTypeFromPrep.get(tabContentsTypes[j])!=''){numberOfContentType++}}if(numberOfContentType>0){document.getElementById("submitButton").style.display="inline";document.getElementById("submitButtonHide").style.display="none"}else{document.getElementById("submitButton").style.display="none";document.getElementById("submitButtonHide").style.display="inline";document.getElementById("document_legacy_message").innerHTML="<p>"+errorLabel+"</p>"}}else{document.getElementById("submitButton").style.display="inline";document.getElementById("submitButtonHide").style.display="none"}}}function fillFunctionList(firstOptionLabel){var sel=window.document.formulaire.p_functions;sel.options.length=1;sel.options[0]=new Option(firstOptionLabel,0);for(i=0;i<functions.length;i++){sel.options[sel.options.length]=new Option(functions[i].libelle,functions[i].id)}}function fillRangeList(indiceFunction,firstOptionLabel){var sel=window.document.formulaire.p_ranges;sel.options.length=1;sel.options[0]=new Option(firstOptionLabel,0);for(i=0;i<ranges.length;i++){if(indiceFunction!=''&&ranges[i].idFunction==indiceFunction)sel.options[sel.options.length]=new Option(ranges[i].libelle,ranges[i].id)}if(sel.options.length==1){sel.disabled=true}}function getAllContentTypesForASpecificRange(indiceRange,indiceFunction){var hashMapContentTypes={};hashMapContentTypes={set:function(key,value){this[key]=value},get:function(key){return this[key]}};var listeContentType='';for(i=0;i<documents.length;i++){if(indiceRange!=''&&indiceFunction!=''&&documents[i].idRange==indiceRange&&documents[i].idFunction==indiceFunction){var tabContentTypes=documents[i].id.split(",");for(j=0;j<tabContentTypes.length;j++){if(hashMapContentTypes.get(tabContentTypes[j])!=tabContentTypes[j]){listeContentType+=tabContentTypes[j]+",";hashMapContentTypes[tabContentTypes[j]]=tabContentTypes[j]}}}}listeContentType=listeContentType.substr(0,listeContentType.length-1);return listeContentType}function fillDocumentList(indiceRange,indiceFunction,firstOptionLabel,isPrepControlActivated,usePrepLabel,errorLabel){var hashMapContentTypes={};hashMapContentTypes={set:function(key,value){this[key]=value},get:function(key){return this[key]}};var sel=window.document.formulaire.p_documents;if(isPrepControlActivated=='true'&&hashMapAvailableContentTypeFromPrep!=null){sel.options.length=1;sel.options[0]=new Option(firstOptionLabel,0);var compteurGlobal=0;for(i=0;i<documents.length;i++){if(indiceRange!=''&&indiceFunction!=''&&documents[i].idRange==indiceRange&&documents[i].idFunction==indiceFunction){var tabContentsTypes=documents[i].id.split(",");var numberOfContentType=0;var idSelected="";for(j=0;j<tabContentsTypes.length;j++){if(hashMapContentTypes.get(tabContentsTypes[j])!=tabContentsTypes[j]&&hashMapAvailableContentTypeFromPrep.get(tabContentsTypes[j])!=null&&hashMapAvailableContentTypeFromPrep.get(tabContentsTypes[j])!=''){numberOfContentType++;compteurGlobal++;if(numberOfContentType==1)idSelected=hashMapAvailableContentTypeFromPrep.get(tabContentsTypes[j]);hashMapContentTypes.set(tabContentsTypes[j],tabContentsTypes[j])}}if(numberOfContentType>0){if(usePrepLabel=="true"&&numberOfContentType==1)sel.options[sel.options.length]=new Option(idSelected,documents[i].id);else sel.options[sel.options.length]=new Option(documents[i].libelle,documents[i].id)}}}if(sel.options.length==1){sel.disabled=true}if(compteurGlobal==0){sel.options[0]=new Option(errorLabel,0);sel.disabled=true}}else{sel.options.length=1;sel.options[0]=new Option(firstOptionLabel,0);for(i=0;i<documents.length;i++){if(indiceRange!=''&&indiceFunction!=''&&documents[i].idRange==indiceRange&&documents[i].idFunction==indiceFunction)sel.options[sel.options.length]=new Option(documents[i].libelle,documents[i].id)}if(sel.options.length==1){sel.disabled=true}}}function getContentTypesFromResource(url){var sousChaine1Position=eval(url.indexOf("%26c=",0)+5);var sousChaine2Position=url.indexOf("~",0);var contentTypes=url.substring(sousChaine1Position,sousChaine2Position);return contentTypes}function getXMLHttpRequest(){var xhr=null;if(window.XMLHttpRequest)xhr=new XMLHttpRequest();else if(window.ActiveXObject){try{xhr=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){xhr=new ActiveXObject("Microsoft.XMLHTTP")}}else xhr=false;return xhr}function nodeCleaner(n){if(!n.data.replace(/\s/g,''))n.parentNode.removeChild(n)}function cleanXML(docElement){var node=docElement.getElementsByTagName('*');for(i=0;i<node.length;i++){a=node[i].previousSibling;if(a&&a.nodeType==3)nodeCleaner(a);b=node[i].nextSibling;if(b&&b.nodeType==3)nodeCleaner(b)}return docElement}function handleHttpResponse(){if(xhrPrep.readyState==4&&xhrPrep.status==200){response=xhrPrep.responseXML.documentElement;if(response!=null){response=cleanXML(xhrPrep.responseXML.documentElement);hashMapAvailableContentTypeFromPrep=getAvailableDocumentsTypes(response)}}}function displayResult(response){var html='';var rangeId=response.getElementsByTagName("range_id").item(0).firstChild.nodeValue;var rangeContainsDoc=response.getElementsByTagName("contains_doc").item(0).firstChild.nodeValue;var contentTypeItems=response.getElementsByTagName("content_type");html+='<h1>Range (id: '+rangeId+', contains_doc: '+rangeContainsDoc+')</h1>';for(i=0;i<contentTypeItems.length;i++){var contentTypeId=contentTypeItems.item(i).getElementsByTagName("id").item(0).firstChild.nodeValue;var contentTypeTitle=contentTypeItems.item(i).getElementsByTagName("title").item(0).firstChild.nodeValue;var contentTypeContainsDoc=contentTypeItems.item(i).getElementsByTagName("contains_doc").item(0).firstChild.nodeValue;html+='<p>content type (id: '+contentTypeId+',title: '+contentTypeTitle+', contains_doc: '+contentTypeContainsDoc+'</p>'}document.getElementById('content').innerHTML=html}function getAvailableDocumentsTypes(response){var hashMap={set:function(key,value){this[key]=value},get:function(key){return this[key]}};var tab=response.getElementsByTagName("contains_doc");var rangeContainsDoc=0;for(i=0;i<tab.length;i++){if(tab[i].parentNode.tagName=="check_content")rangeContainsDoc=tab[i].firstChild.nodeValue}if(rangeContainsDoc==1){var contentTypeItems=response.getElementsByTagName("content_type");for(i=0;i<contentTypeItems.length;i++){var contentTypeId=getNodeValue(contentTypeItems.item(i).getElementsByTagName("id").item(0));var contentTypeTitle=getNodeValue(contentTypeItems.item(i).getElementsByTagName("title").item(0));var contentTypeContainsDoc=getNodeValue(contentTypeItems.item(i).getElementsByTagName("contains_doc").item(0));if(contentTypeContainsDoc==1&&contentTypeId!=''){hashMap.set(contentTypeId,contentTypeTitle)}}}return hashMap}function getNodeValue(node){var value='';if(node!=null&&node.hasChildNodes())value=node.firstChild.nodeValue;return value}function replaceByHexadecimalValue(param){param=param.replace("?","%3F","g");param=param.replace("&","%26","g");return param}function execute(urlServlet,urlPrep,idRange,idFunction,langue){xhrPrep=getXMLHttpRequest();hashMapAvailableContentTypeFromPrep=null;xhrPrep.onreadystatechange=handleHttpResponse;xhrPrep.open("GET",urlServlet+replaceByHexadecimalValue(urlPrep)+"%26p="+idRange+"%26c="+getAllContentTypesForASpecificRange(idRange,idFunction)+"%26L="+langue,false);xhrPrep.send(null)}function executeLegacy(urlServlet,urlPrep,idRange,langue,contentTypes){xhrPrep=getXMLHttpRequest();hashMapAvailableContentTypeFromPrep=null;xhrPrep.onreadystatechange=handleHttpResponse;xhrPrep.open("GET",urlServlet+replaceByHexadecimalValue(urlPrep)+"%26p="+idRange+"%26c="+contentTypes+"%26L="+langue,false);xhrPrep.send(null)}