// docu_js.js

// old stuff ====================
var noEtabMax = 2294 ; // variable smarty ou ajax, quand il y aura un admin

function MM_goToURL() {
  document.MM_returnValue = false;
	refer = document.fiche.ref.value;
	if ((refer>0) && (refer < noEtabMax)) {
	  url = "page.php?id=" + refer ;
		location.href = url;
	}	else {
		alert("Il n'y a pas d'établissement avec cette référence.");
		document.fiche.ref.value = "";
		document.fiche.ref.focus();
		return (false);
		}
}

// Check to see if we're displaying from the cgi-bin - if yes, then return to search; if no, go to home page
function goback() {
	history.go(-1)
}

function MM_displayStatusMsg(msgStr) {
  status=msgStr;
  document.MM_returnValue = true;
}









function loadXMLObj() 
{
 var obj = false;
 try{
 if (window.XMLHttpRequest) obj = new XMLHttpRequest();	 // branch for native XMLHttpRequest object
 else if(window.ActiveXObject)							 // branch for IE/Windows ActiveX version
	{
	obj = new ActiveXObject("Msxml2.XMLHTTP");
	if ( ! obj ) obj = new ActiveXObject("Microsoft.XMLHTTP");	
	}
 }
 catch(c){obj = false ;}

 return obj ;
}



function checkAjax()
{
 var obj = loadXMLObj() ;
 if ( ! obj ) displayError() ; 
}

function displayError()
{
 var D = document.getElementById('normal') ;
 if ( D ) D.style.display = 'none' ;
 D = document.getElementById('erreur') ;
 if ( D ) D.style.display = 'block' ;
}




function Request( url, action, callback )
{
 var obj =  loadXMLObj() ;
 if (! obj) { alert("AJAX ne peut pas être initialisé"); return; }
 
 obj.open("POST", url, true ) ; // POST ou GET, true pour asynchrone, false pour synchrone
 obj.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=iso-8859-1');

  obj.onreadystatechange=function()
	{
	 if (obj.readyState == 4)
		 {
		 if (obj.status == 200)
			 {
			 data = obj.responseText	;
			 callback( data, action) ;
			 }
		 else alert("Erreur de communication avec le serveur");
		 }
	 return ;
	}
 
 action = "date=" + Date() + (action =="" ? "" : "&" + action) ;
 obj.send( action );
}

// variable globale
var S = null;

function resItems(data,action)
{
 resp = data.split("\n") ;
 if ( resp[0].substr(0,4) != "good" )  { alert ( "Erreur : " + message[resp[0]] ) ;	return ; }
 nb = resp.length - 2 ;

 if ( S.options[0] && S.options[0].value == -1 ) S.options.length=1 ; 
 else S.options.length=0;

 for ( var i = 0 ; i < nb ; i++ )
	{
	L = resp[i+1].split('|') ;
	Optionn( S, L[1], L[0] ) ;
	}
 
 if ( nb > 0 ) S.removeAttribute('disabled');
 else Optionn( S, 'Aucun résultat', '' ) ;
}

function Optionn( S, text, value)
{
 var Opt = document.createElement("OPTION");
 if ( S.options.add) S.options.add(Opt);	// ne marche pas avec Safari
 else S.appendChild(Opt);
 Opt.innerHTML = text ;
 Opt.value = value ;
}


function getItems(elem, what, more)
{
 S = document.getElementById(elem) ;
 Request( 'process/ajax_get.php', 'what=' + what + '&filtre=' + more, resItems); // resItems
}

function switchAdvanced()
{
 var S = document.getElementById('simple') ;
 var C = document.getElementById('complex') ;
 S.style.display = 'none' ;
 C.style.display = 'block' ;
 Critere( document.getElementById('tddoc'), 'typedoc' ) ;
}



function Critere( td, what )
{
 var C = document.getElementById(what) ;
 document.getElementById('typedoc').style.display = 'none' ; 
 document.getElementById('typethemes').style.display = 'none' ; 
 document.getElementById('typepersonne').style.display = 'none' ; 
 document.getElementById('typelieu').style.display = 'none' ; 
 document.getElementById('typemotsclefs').style.display = 'none' ;
 if(C) C.style.display = '' ;
 
 document.getElementById('tddoc').className = 'onglet' ; 
 document.getElementById('tdthemes').className = 'onglet' ; 
 document.getElementById('tdpers').className = 'onglet' ; 
 document.getElementById('tdlieu').className = 'onglet' ; 
 document.getElementById('tdclefs').className = 'onglet' ;
 td.className = 'onglet_select' ;
}

function Recherche()
{
 var val = document.getElementById('deptselect').value ; 
 var dept = val != '' && val >= 0 ? 'dept=' + val : '' ;
 val = document.getElementById('villeselect').value ; 
 dept += dept != '' && val != '' && val >= 0  ? '&ville=' + val : '' ;

 val = document.getElementById('typeselect').value ; 
 var type = val != '' ? (dept != '' ? '&' : '' ) + 'type=' + val : ''  ;
	
 var crit = '' ;	
 if (document.getElementById('typedoc').style.display != 'none' ) {
 	val = document.getElementById('typedocselect').value ;
	crit = val != '' ? 'doctype=' + val : '' ;
 } else if (document.getElementById('typethemes').style.display != 'none' ) { 
  val = document.getElementById('typethemesselect').value ;
	if ( val != '' ) {
		crit = 'theme=' + val ;
  	val = document.getElementById('typesubthemesselect').value ;
		if ( val != '' && val >= 0 ) {
			crit += '&subtheme=' + val ;
		    val = document.getElementById('typeusubthemesselect').value ;
			crit += val != '' && val >= 0  ? '&usubtheme=' + val : '' ;
			}
		}
} else if (document.getElementById('typepersonne').style.display != 'none' ) {
 	val = document.getElementById('typepersonneselect').value ;
	crit = val != '' ? 'personne=' + val : '' ;
 } else if (document.getElementById('typelieu').style.display != 'none' ) {
 	val = document.getElementById('typelieuselect').value ;
	crit = val != '' ? 'lieu=' + val : '' ;
 } else if (document.getElementById('typemotsclefs').style.display != 'none' ) {
 	val = document.getElementById('textkeyword').value ;
	if ( val != '' && val.length >= 3 ) {
		crit = 'keyword=' + val ;
		crit += '&keymode=' + ( document.getElementById('key_or').checked ? 'OR' :'AND' ) ;
		}
	else {
		alert("Le mot recherché doit contenir au moins 3 lettres");
		return ;
	}
 } 
	
 if ( dept == '' && type == '' && crit == '' )	{
 	alert("Spécifiez au minimum un critère avant de lancer la recherche.");
	return ;
 }
 var req = "recherche.php?" + dept + type + (dept != '' || type != '' ? '&' : '' ) + crit ;
 document.location = req ;
}


function allowTrouve(text, target)
{
 var T =document.getElementById(target);
 if(text.length > 2 ) T.removeAttribute('disabled') ;
 else T.setAttribute('disabled','disabled');
}
