/* JavaScriptCompressor 0.8 [www.devpro.it], thanks to Dean Edwards for idea [dean.edwards.name] */
function validCriteres(){return true;var table=document.getElementById(
"table_criteres"
);
var inputs=table.getElementsByTagName(
'INPUT'
);for (i=0;i<inputs.length;i++){if (inputs[i].id.substring(0,15) !=
'lignes_criteres'
) continue;if (inputs[i].value !=
''
) return true;}
var selects=table.getElementsByTagName(
'SELECT'
);for (i=0;i<selects.length;i++){if (selects[i].id.substring(0,15) !=
'lignes_criteres'
) continue;if (selects[i].value !=
''
) return true;}
return false;}
function sortTable(header,column,type,order){var desc=(order.toLowerCase()==
"desc"
);var parent=header.parentNode.parentNode;var rows=new Array();var contents=new Array();tds=header.parentNode.getElementsByTagName(
'TD'
);for (var i=0;i<tds.length;i++){var img=tds[i].getElementsByTagName(
'IMG'
)[0];if (img) img.src=
'./IMG/site/tri_off.gif'
;}
var imgs=header.getElementsByTagName(
'IMG'
);if (imgs[0]){if (desc){imgs[0].src=
'./IMG/site/tri_on2.gif'
;} else {imgs[0].src=
'./IMG/site/tri_on.gif'
;}}
for (var node=header.parentNode.nextSibling;node!=null;node=node.nextSibling){if (node.nodeType!=1) continue;var tr=node;if (tr.tagName.toLowerCase()!=
"tr"
) continue;var td=node.getElementsByTagName(
"td"
)[column];if (td==null||td.nodeType!=1||td.tagName.toLowerCase()!=
"td"
) continue;var content=getContent(td,type);var i;for (i=0;i<contents.length;i++){if (desc==false&&contents[i]>content) break;if (desc==true&&contents[i]<content) break;}
for (k=contents.length-1;k>=i;k--){contents[k+1]=contents[k];rows[k+1]=rows[k];}
 contents[i]=content;rows[i]=tr;}
for (var i=0;i<rows.length;i++){parent.removeChild(rows[i]);parent.appendChild(rows[i]);}}
function getContent(rootNode,type){var text=getAllTextContent(rootNode);if (type==
"date"
){var d=text.substring(6)+
"-"
+text.substring(3,5)+
"-"
+text.substring(0,2);return d;}
if (type==
"int"
){return parseInt(text);}
return text;}
function getAllTextContent(rootNode){var text=
""
;var node=rootNode;for (;;){if (node.nodeType==3){text+=node.nodeValue;}
if (node.firstChild!=null){node=node.firstChild;} else if (node.nextSibling!=null){node=node.nextSibling;} else {for (;;){node=node.parentNode;if (node==rootNode) return text.replace(
/^\s*|\s*$/g,
""
);
if (node.nextSibling!=null){node=node.nextSibling;break;}}}}}
function ajouteLigneCritere(select){var critereType=Number(select.options[select.selectedIndex].value);
var tr0=document.getElementById(
"ajout_critere"
);var parent=tr0.parentNode;var allTr=parent.getElementsByTagName(
"tr"
);var premier=true;var avantTr=null;var firstTr=null;
for (var i=0;i<allTr.length;i++){var ct=Number(getCritereType(allTr[i]));if (ct==0) continue;if (firstTr==null) firstTr=allTr[i];if (premier==false){avantTr=allTr[i];break;}
if (ct==critereType){premier=false;}}
if (premier==true) avantTr=firstTr;ajouteLigne(critereType,0,avantTr,null);rafraichit();
select.selectedIndex=0;}
var maxCritere=0;function ajouteLigne(critereType,conditionIndex,avantTr,params){maxCritere++;var critere=criteres[critereType];if (critere==null) return;
var condition=critere[
"conditions"
][conditionIndex];var tr0=document.getElementById(
"ajout_critere"
);var parent=tr0.parentNode;var tr=tr0.cloneNode(true);tr.style.display=
""
;if (tr.id!=
""
&&tr.id.indexOf(
"%"
)<0){tr.removeAttribute(
"id"
);}
var td2=tr.getElementsByTagName(
"td"
)[2];var td3=tr.getElementsByTagName(
"td"
)[3];var td4=tr.getElementsByTagName(
"td"
)[4];var td5=tr.getElementsByTagName(
"td"
)[5];
td2.getElementsByTagName(
"a"
)[0].onclick=function(){cloneLigne(this)};
td3.getElementsByTagName(
"a"
)[0].onclick=function(){supprimeLigne(this)};
var input=document.createElement(
"input"
);input.type=
"hidden"
;input.name=
"lignes_criteres["
+maxCritere+
"][type]"
;input.value=critereType;td4.appendChild(input);
if (critere[
"conditions"
].length==1){var input=document.createElement(
"input"
);input.type=
"hidden"
;input.name=
"lignes_criteres["
+maxCritere+
"][condition]"
;input.value=0;td4.appendChild(input);td4.appendChild(document.createTextNode(condition[
"libelles"
][0]+
"\xA0\xA0"
));} else {var input=document.createElement(
"select"
);input.name=
"lignes_criteres["
+maxCritere+
"][condition]"
;input.className=
"fiche_contenu"
;for (var i=0;i<critere[
"conditions"
].length;i++){input.options[i]=new Option(critere[
"conditions"
][i][
"libelles"
][0],i);}
function bindChangeCondition(critIndex){return function(){changeCondition(this,critIndex);};}
input.onchange=bindChangeCondition(maxCritere);if (conditionIndex>0){input.selectedIndex=conditionIndex;}
td4.appendChild(input);}
creeChamps(tr.getElementsByTagName(
"td"
)[5],maxCritere,critere,condition,params);
parent.insertBefore(tr,avantTr!=null?avantTr:tr0);}
function getCritereType(tr){var allTd=tr.getElementsByTagName(
"td"
);if (allTd.length<6) return null;var allInput=allTd[4].getElementsByTagName(
"input"
);if (allInput.length<1) return null;return allInput[0].value;}
function getParams(tr){var allTd=tr.getElementsByTagName(
"td"
);if (allTd.length<6) return null;var allNodes=allTd[5].childNodes;var params=new Array();var n=0;for (var i=0;i<allNodes.length;i++){var node=allNodes[i];if (node.nodeType==1){
if (node.tagName.toLowerCase()==
"input"
){params[n++]=node.value;} else if (node.tagName.toLowerCase()==
"select"
){params[n++]=node.options[node.selectedIndex].value;}}}
return params;}
function supprimeLigne(icone){var tr=icone.parentNode.parentNode;var parent=tr.parentNode;var inputs=tr.getElementsByTagName(
'INPUT'
);for (var i=0;i<inputs.length;i++){supprimerValidation(inputs[i].name);}
tr.parentNode.removeChild(tr);rafraichit();}
function cloneLigne(icone){var tr=icone.parentNode.parentNode;var critereType=getCritereType(tr);var avantTr=tr.nextSibling;var conditionIndex=0;var td4=tr.getElementsByTagName(
"td"
)[4];var allSelect=td4.getElementsByTagName(
"select"
);if (allSelect.length>0){conditionIndex=allSelect[0].selectedIndex;}
ajouteLigne(critereType,conditionIndex,avantTr,null);rafraichit();}
function rafraichit(){var parent=document.getElementById(
"ajout_critere"
).parentNode;var allTr=parent.getElementsByTagName(
"tr"
);var premier=true;var precedent=-1;for (var i=0;i<allTr.length;i++){var tr=allTr[i];var critType=getCritereType(tr);if (critType==null) continue;var spanNom=tr.getElementsByTagName(
"td"
)[1].getElementsByTagName(
"span"
)[0];var spanEt=tr.getElementsByTagName(
"td"
)[0].getElementsByTagName(
"span"
)[0];while (spanEt.firstChild!=null) spanEt.removeChild(spanEt.firstChild);if (critType!=precedent){
spanNom.replaceChild(document.createTextNode(criteres[critType][
"nom"
]),spanNom.childNodes[0]);spanNom.className=
"nom_critere"
;if (!premier) spanEt.appendChild(document.createTextNode(
"(et)"
));} else {
spanNom.replaceChild(document.createTextNode(
"(ou)"
),spanNom.childNodes[0]);spanNom.className=
"libelle_critere"
;}
precedent=critType;premier=false;}}
function changeCondition(selectCondition,critereIndex){var tr=selectCondition.parentNode.parentNode;var critere=criteres[getCritereType(tr)];var condition=critere[
"conditions"
][selectCondition.selectedIndex];var params=getParams(tr);
var td5=tr.getElementsByTagName(
"td"
)[5];while (td5.firstChild!=null){td5.removeChild(td5.firstChild);}
creeChamps(tr.getElementsByTagName(
"td"
)[5],critereIndex,critere,condition,params);}
function creeChamps(td,critereIndex,critere,condition,params){
var champsEnfants=new Array();for (var i=condition[
"champs"
].length-1;i>=0;i--){if (condition[
"champs"
][i].substring(0,7)==
"select|"
){var requete=condition[
"champs"
][i].substring(7);var param=null;if (requete.indexOf(
"("
)>0){param=requete.substring(requete.indexOf(
"("
)+1);param=param.substring(0,requete.indexOf(
")"
));param=parseInt(param);requete=requete.substring(0,requete.indexOf(
"("
));}
if (param!=null&&param.length!=0){if (champsEnfants[param]==null){champsEnfants[param]=new Array();}
champsEnfants[param][champsEnfants[param].length]=i;}}}
var champs=new Array();for (var i=0;i<condition[
"champs"
].length;i++){if (i>0&&i<condition[
"libelles"
].length){td.appendChild(document.createTextNode(
"\xA0\xA0\xA0\xA0"
+condition[
"libelles"
][i]+
"\xA0\xA0"
));}
if (condition[
"champs"
][i]==
"input"
||condition[
"champs"
][i].substring(0,6)==
"input|"
){var input=document.createElement(
"input"
);champs[i]=input;input.name=
"lignes_criteres["
+critereIndex+
"][params]["
+i+
"]"
;input.id=input.name;input.className=
"fiche_contenu"
;if (params!=null&&params.length>i&&params[i]!=null){input.value=params[i];}
td.appendChild(input);if (condition[
"champs"
][i]==
"input|date"
){input.size=
"10"
;td.appendChild(document.createTextNode(
' '
));var img=document.createElement(
"img"
);img.border=
"0"
;img.src=
"images/calendar_view_day.png"
;img.title=
"Calendrier"
;var a=document.createElement(
"a"
);a.href=
"#"
;addListener(a,
"click"
,new Function(
"DisCal"
,
"displayCalendar(document.getElementById('"
+input.name+
"'),'dd/mm/yyyy',this); return false;"
));a.appendChild(img);td.appendChild(a);ajouterValidation(
"Rechercher"
,input.name,critere[
"nom"
],
"date"
);} else if (condition[
"champs"
][i].substring(0,6)==
"input|"
){input.size=condition[
"champs"
][i].substring(6);}} else if (condition[
"champs"
][i].substring(0,7)==
"select|"
){var input=document.createElement(
"select"
);champs[i]=input;input.name=
"lignes_criteres["
+critereIndex+
"][params]["
+i+
"]"
;input.id=input.name;input.className=
"fiche_contenu"
;td.appendChild(input);} else if (condition[
"champs"
][i].substring(0,5)==
"ajax|"
){var input=document.createElement(
"input"
);champs[i]=input;input.name=
"lignes_criteres["
+critereIndex+
"][params]["
+i+
"]"
;input.id=input.name;input.autocomplete=
"off"
;input.setAttribute(
'autocomplete'
,
'off'
);input.className=
"form-autocomplete"
;if (condition[
"champs"
][i].split(
'|'
)[2]){input.size=condition[
"champs"
][i].split(
'|'
)[2];}
if (params!=null&&params.length>i&&params[i]!=null){input.value=params[i];}
td.appendChild(input);var div=document.createElement(
"div"
);div.id=
"_"
+input.name;div.className=
"autocomplete"
;td.appendChild(div);var requete=condition[
"champs"
][i].split(
'|'
)[1];autocompleteField(input,div,null,
"ajax.php?page="
+requete+
".php"
,
"filtre"
,null,
"throbbing"
,
"null"
);} else alert(
"Champ inconnu : "
+condition[
"champs"
][i]);}
for (var i=0;i<condition[
"champs"
].length;i++){if (condition[
"champs"
][i].substring(0,7)==
"select|"
){alimenteChampSelect(i,condition[
"champs"
],champs,champsEnfants,params,true);}}}
function alimenteChampSelect(i,definitions,champs,champsEnfants,params,ignoreEnfants){var input=champs[i];var requete=definitions[i].substring(7);var param=null;if (requete.indexOf(
"("
)>0){param=requete.substring(requete.indexOf(
"("
)+1);param=param.substring(0,requete.indexOf(
")"
));param=parseInt(param);requete=requete.substring(0,requete.indexOf(
"("
));}
var enfants=champsEnfants[i];var postFunc=null;if (enfants!=null){postFunc=function alimenteEnfants(){for (var k=0;k<champsEnfants[i].length;k++){alimenteChampSelect(champsEnfants[i],definitions,champs,champsEnfants,params,false);}}}
if (param==null||param.length==0){alimenteSelectAjax(null,input,
"ajax.php?page="
+requete+
".php"
,
"filtre"
,postFunc,
"throbbing"
,
"null"
,(params!=null&&params.length>i?params[i]:null));} else {if (!ignoreEnfants){alimenteSelectAjax(champs[param],input,
"ajax.php?page="
+requete+
".php"
,
"filtre"
,postFunc,
"throbbing"
,
"null"
,(params!=null&&params.length>i?params[i]:null));}}}
function alimenteSelectAjax(inputField,targetField,uri,paramName,postFunc,emptyFunc,errorFunc,value){if (!postFunc) postFunc=function (){};if (!emptyFunc) emptyFunc=function (){};if (!errorFunc) errorFunc=function (){};var updater=liveUpdater(constructUri,handlerFunc,null,emptyFunc,errorFunc);var timeout=window.setTimeout(updater,0);function constructUri(){if (inputField==null) return uri;var separator=
"?"
;if (uri.indexOf(
"?"
)>=0)
separator=
"&"
;var val=
""
;if (inputField.selectedIndex>=0&&inputField.options.length>inputField.selectedIndex){var optionValue=inputField.options[inputField.selectedIndex];val=optionValue!=null?optionValue.value:null;}
return uri+separator+paramName+
"="
+escape(val);}
function handlerFunc(xmlDoc){var root=xmlDoc.documentElement;
targetField.options.length=0;if (root !=null){targetField.disabled=false;var items=root.childNodes;targetField.options[0]=new Option(
""
,
""
);for (var i=0;i<items.length;i++){var label=(items[i].firstChild!=null?items[i].firstChild.nodeValue:
""
);var option=new Option(label,items[i].getAttribute(
"value"
));if (items[i].getAttribute(
"value"
)==
"-999"
){option.disabled=true;option.className=
"fiche_contenu_rupture"
;}
targetField.options[i+1]=option;if (value==items[i].getAttribute(
"value"
)){targetField.options[i+1].selected=true;}}
targetField.focus();postFunc();}}
function handleChange(e){var updater=liveUpdater(constructUri,handlerFunc,null,emptyFunc,errorFunc);var timeout=window.setTimeout(updater,0);}
if (inputField!=null){addListener(inputField,
"change"
,handleChange);}}
function ioCheckAll(element,uncheck){var checked=false;var checkboxes=new Array();
var td0=element;while (td0.nodeName!=
"TD"
&&td0.nodeName!=
"TH"
){td0=td0.parentNode;}
var tdPosition=0;for (var td=td0.previsousSibling;td!=null;td=td.previsousSibling){tdPosition++;}
var tr0=td0;while (tr0.nodeName!=
"TR"
){tr0=tr0.parentNode;}
for (var tr=tr0.nextSibling;tr!=null;tr=tr.nextSibling){if (tr.nodeName!=
"TR"
) continue;
if (tr.style.visibility.toLowerCase()==
"hidden"
||tr.style.display.toLowerCase()==
"none"
) continue;var td=tr.getElementsByTagName(
"td"
)[tdPosition];var inputs=td.getElementsByTagName(
"input"
);for (var i=0;i<inputs.length;i++){var input=inputs[i];if (input.type.toLowerCase()==
"checkbox"
){checkboxes[checkboxes.length]=input;if (input.checked==false){checked=true;}
if (!input.disabled) input.checked=true;}}}
if (!checked){for (var i=0;i<checkboxes.length;i++){checkboxes[i].checked=false;}}}