function init_js(){
	
	rollOvers();
	//loadMasks();
	
	// fonctions pour IE seulement ...
	try { 
		$('searchQ').focus();
	} catch(e) { }
	try {
		var fsize = getcsdicookie('fontsize');
		if (fsize == null || fsize==0) return;
		if (fsize > 0) {
			cur = fsize;
			document.getElementById('content').style.fontSize=arrFont[cur];
			document.getElementById('content').style.lineHeigth=arrHeigth[cur];
		}
	}
	catch(e) {
		return;
	}

}

var selectsBoxes = new Array();

sfHover = function() {
	try {
		var sfEls = document.getElementById("menu").getElementsByTagName("LI");
		for (var i=0; i<sfEls.length; i++) {
			sfEls[i].onmouseover=function() {
				this.className+=" sfhover";
				hideSelects();
			}
			sfEls[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
				showSelects();
			}
			var tmpsel = document.getElementsByTagName('select');
			for (var u=0;u<tmpsel.length;u++) {
				selectsBoxes[u] = tmpsel[u];	
			}
		}
	} catch(e) { }
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

function hideSelects() {
	for (var u=0;u<selectsBoxes.length;u++) {
		selectsBoxes[u].style.visibility = 'hidden';	
	}
}

function showSelects() {
	for (var u=0;u<selectsBoxes.length;u++) {
		selectsBoxes[u].style.visibility = 'visible';	
	}
}


function rollOvers(){
	if (!document.getElementById) return
	
	var imgOriginSrc;
	var MouseOverHappened;
	var oldtop;
	var imgTemp = new Array();
	var imgarr = document.getElementsByTagName('img');
	
	for (var i = 0; i < imgarr.length; i++) {
		//Attribut hsrc pour Rollovers
		if (imgarr[i].getAttribute('hsrc')) {
			imgTemp[i] = new Image();
			imgTemp[i].src = imgarr[i].getAttribute('hsrc');
			imgarr[i].onmouseover = function() {
				imgOriginSrc = this.getAttribute('src');			
				this.setAttribute('src',this.getAttribute('hsrc'));
				MouseOverHappened=true;
			}
			imgarr[i].onmouseout = function() {
				if(MouseOverHappened)
					this.setAttribute('src',imgOriginSrc);
			}
		}
	
		//Attribut csrc pour action de click comme boutons
		if (imgarr[i].getAttribute('csrc')) {
			imgTemp[i] = new Image();
			imgTemp[i].src = imgarr[i].getAttribute('csrc');
			imgarr[i].onmousedown = function() {
				imgOriginSrc = this.getAttribute('src');			
				this.setAttribute('src',this.getAttribute('csrc'));
				MouseOverHappened=true;
			}
			imgarr[i].onmouseup = function() {
				if(MouseOverHappened)
					this.setAttribute('src',imgOriginSrc);
			}
		}
	}
}

arrFont = Array('10px','11px','12px','14px','16px');
arrHeigth = Array('1.5em','1.9em','4em','5em','30em');
cur = 0;
				 
function fontUp(){
	if(cur<arrFont.length-1){cur++;document.getElementById('content').style.fontSize=arrFont[cur];document.getElementById('content').style.lineHeigth=arrHeigth[cur];}
	setcsdicookie('fontsize',cur);
}


function fontDown(){
	if(cur>0){cur--;document.getElementById('content').style.fontSize=arrFont[cur];document.getElementById('content').style.lineHeigth=arrHeigth[cur];}
	setcsdicookie('fontsize',cur);
}

var displayed="carte";

function displayMenu1(x){
	if (displayed != "0") document.getElementById(displayed).style.display = "none";
	if (displayed != x) {
		document.getElementById(x).style.display="";
		displayed = x;
	} else {
		document.getElementById(x).style.display="none";
		displayed = "0";
	}
}

var arr = "";
var arrpos = 0;
var thetimeout = "";


function changemois(direction,mois,annee){
	lafonct = function() {
		if(ajaxOk()){
			document.getElementById('calendar').innerHTML=objAjax.responseText;
			objAjax = null;
		}
	}

	callAjax('/new/calendrier.php?action=changemois&dir='+direction+'&mois='+mois+'&annee='+annee,null,lafonct);
}

function buildPostData(form) {
	try {
			var returnData = "";
		var tags = new Array("input","textarea","select");
		for (var k = 0; k < tags.length; ) {
			var ar = form.getElementsByTagName(tags[k++]);
			var cc = null;
			for (var i = 0; i < ar.length;) {
				cc = ar[i++];
				if (cc.name != "" && cc.type != "file") {
					if (cc.getAttribute("type") == 'checkbox' || cc.getAttribute('type') == 'radio') {
						if (cc.checked != false) returnData += (returnData != "") ? "&" + cc.name + "=" + escape(cc.value) : cc.name + "=" + escape(cc.value);
					}
					else returnData += (returnData != "") ? "&" + cc.name + "=" + escape(cc.value) : cc.name + "=" + escape(cc.value);					
				}
			}
		}
		return returnData;
	} catch(e) { return ''; }
}

function callAjax(url,formToPost,fonct) {
	var postData = "";
	
		
		if (!('undefined' == typeof formToPost || formToPost == null)) {
			postData = buildPostData(formToPost);
		}
		if (window.XMLHttpRequest) {
			objAjax = new XMLHttpRequest();
			objAjax.onreadystatechange = fonct;
			if (postData != "") {
				objAjax.open("POST",url,true);
				objAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
				objAjax.send(postData);
			}
			else {
				objAjax.open("GET",url,true);	
				objAjax.send(null);
			}
			
		}
		else if (window.ActiveXObject) {
			objAjax = new ActiveXObject("Microsoft.XMLHTTP");
			objAjax.onreadystatechange = fonct;
			if (postData != "") {
				objAjax.open("POST",url,true);
				objAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
				objAjax.send(postData);
			}
			else {
				objAjax.open("GET",url,true);	
				objAjax.send();
			}
					
		}
		
		else {
			alert("Browser incompatible");
		}
		//alert('writing send');
	
	
}
var objAjax = null;
function ajaxOk() {
	if (objAjax.readyState == 4) {
		//alert(objAjax.status);
		if (objAjax.status == 200) {
			
			return true;
		}
		else if (objAjax.status == 401) {
			//document.location.href = 'login.php';
			return false;
		}
		else if (objAjax.status == 403) {
			var err = objAjax.responseXML;
			objAjax = null;
			alert(err);
			return false;
		}
		else if (objAjax.status == 404) {
			//bypass le probleme d'enregistrement inexistant
			var err = objAjax.responseXML;
			objAjax = null;
			alert(err);
			return false;
		}
		else {
			var err = objAjax.responseXML;
			alert('erreur : '+objAjax.status);
			objAjax = null;
			alert(err);
			return false;
		}
 	}
	else return false;
}

function addQuestion(hndl){
	lafonct = function() {
		if(ajaxOk()){
			document.getElementById('contentForm').innerHTML='<p>Merci.<br />Nous vous répondrons dans les plus brefs délais.</p>';
			objAjax = null;
		}
	}
	
	if(validForm(hndl)){
		callAjax('/addQuestion.php',hndl,lafonct);
	}
}

function saveTypeEtablissement(id,nom) {
	callAjax('bottin.php?savetype='+id+'&nom='+escape(nom),function() { 
		if (!ajaxOk()) return;
		objAjax = null;
		
	});
	$('nomView').innerHTML = nom;
	$('viewType').style.display='inline';
	$('editType').style.display='none';
}


function saveTypeRessource(id,nom) {
	callAjax('ressources.php?modtype='+id+'&nom='+escape(nom),function() { 
		if (!ajaxOk()) return;
		objAjax = null;
		
	});
	$('nomView').innerHTML = nom;
	$('viewType').style.display='inline';
	$('editType').style.display='none';
}


var $ = function(vari) {
	return document.getElementById(vari);	
}

function voirdetailressource(idr) {
	callAjax('/new/ressources.php?detail='+idr,null,function() { 

		if (!ajaxOk()) return;
		
		$('detailres').innerHTML = objAjax.responseText;
		objAjax = null;
		
	});
}


function reloadDemandeurList() {
	callAjax('/new/reservations.php?demandeur',null,function() { 
		if (!ajaxOk()) return;
		$('demandeuredit').innerHTML = objAjax.responseText;
		objAjax = null;
	});	
}

function filtrerdemandeur(val) {
	var lstD = $('tbldemandeur').getElementsByTagName('tr');
	var rege = new RegExp(val,'i');
	for (var x=0;x<lstD.length;x++) {
		if (lstD[x].getElementsByTagName('td')[1].innerHTML.match(rege)) lstD[x].style.display = '';
		else lstD[x].style.display = 'none';
	}
}

function choisirdemandeur(id,nom) {
	$('fk_demandeur').value=id;
	$('nom_demandeur').innerHTML = nom;
	$('demandeuredit').innerHTML = '<h3 style="text-align:center;">Veuillez patienter...</h3>';
	//$('demandeuredit').style.height='0px';
	//$('demandeuredit').style.overflow='hidden';
	$('demandeurview').style.display='block';
	$('demandeuredit').style.display='none';
	reloadajoutreservation();
}

function reloadajoutreservation() {
	if ($('fk_type').value==0) {
		$('reservressource').innerHTML = '<input type="hidden" name="fk_ressource" id="fk_ressource" value="0" /><h3 style="text-align:center;padding-top:10px;border-bottom:1px solid #feecd0;padding-bottom:5px;margin-bottom:10px;">Choix de la ressource...</h3><div style="text-align:justify;padding-left:15px;padding-right:15px;"><b><i>Veuillez choisir un type de ressource...</i></b></div>';	
		return;
	}
	if (!validDate($('debut_d').value)) {
		$('reservressource').innerHTML = '<input type="hidden" name="fk_ressource" id="fk_ressource" value="0" /><h3 style="text-align:center;padding-top:10px;border-bottom:1px solid #feecd0;padding-bottom:5px;margin-bottom:10px;">Choix de la ressource...</h3><div style="text-align:justify;padding-left:15px;padding-right:15px;"><b><i>Date de début de réservation invalide.</i></b></div>';			
		return;
	}
	if (!validDate($('fin_d').value)) {
		$('reservressource').innerHTML = '<input type="hidden" name="fk_ressource" id="fk_ressource" value="0" /><h3 style="text-align:center;padding-top:10px;border-bottom:1px solid #feecd0;padding-bottom:5px;margin-bottom:10px;">Choix de la ressource...</h3><div style="text-align:justify;padding-left:15px;padding-right:15px;"><b><i>Date de fin de réservation invalide.</i></b></div>';			
		return;
	}
	
	if (!isDatetimePlusGrande($('fin_d').value,$('fin_h').value,$('fin_m').value,$('debut_d').value,$('debut_h').value,$('debut_m').value)) {
		$('reservressource').innerHTML = '<input type="hidden" name="fk_ressource" id="fk_ressource" value="0" /><h3 style="text-align:center;padding-top:10px;border-bottom:1px solid #feecd0;padding-bottom:5px;margin-bottom:10px;">Choix de la ressource...</h3><div style="text-align:justify;padding-left:15px;padding-right:15px;"><b><i>La date de fin doit être ult&eacute;rieure à la date de début.</i></b></div>';			
		return;
	}
	if (!isDatetimePlusGrande2(new Date(),$('debut_d').value,$('debut_h').value,$('debut_m').value)) {
		$('reservressource').innerHTML = '<input type="hidden" name="fk_ressource" id="fk_ressource" value="0" /><h3 style="text-align:center;padding-top:10px;border-bottom:1px solid #feecd0;padding-bottom:5px;margin-bottom:10px;">Choix de la ressource...</h3><div style="text-align:justify;padding-left:15px;padding-right:15px;"><b><i>La date de début doit &ecirc;tre ult&eacute;rieure à la date et l\'heure actuelle.</i></b></div>';						
		return;
	}
	
	$('reservressource').innerHTML = '<h3 style="text-align:center;padding-top:10px;border-bottom:1px solid #feecd0;padding-bottom:5px;margin-bottom:10px;">Choix de la ressource...</h3><div style="text-align:justify;padding-left:15px;padding-right:15px;"><b><i>Veuillez patienter, chargement des ressources disponible...</i></b></div>';			
	var strurl = '/new/reservations.php?action=listressourcesnouvellereservation&fk_type='+$('fk_type').value;
	var datedebut = $('debut_d').value+' '+$('debut_h').value+':'+$('debut_m').value+':00';
	strurl += '&date_debut='+escape(datedebut);
	var datefin = $('fin_d').value+' '+$('fin_h').value+':'+$('fin_m').value+':00';
	strurl += '&date_fin='+escape(datefin);
	strurl += '&fk_demandeur='+$('fk_demandeur').value;
	
	callAjax(strurl,null,function() {
		if (!ajaxOk()) return;
		$('reservressource').innerHTML = objAjax.responseText;
		objAjax = null;
	 });
	
}

function validNewReservation(frm) {
	if (!validForm(frm)) return false;
	if ($('fk_type').value==0) {
		alert('Veuillez choisir un type de ressource.');	
		return false;
	}
	if (!validDate($('debut_d').value)) {
		alert('Date de début de réservation invalide.');			
		return false;
	}
	if (!validDate($('fin_d').value)) {
		alert('Date de fin de réservation invalide.');			
		return false;
	}
	
	if (!isDatetimePlusGrande($('fin_d').value,$('fin_h').value,$('fin_m').value,$('debut_d').value,$('debut_h').value,$('debut_m').value)) {
		alert('La date de fin doit être ult&eacute;rieure à la date de début.');
		return false;
	}
	if (!isDatetimePlusGrande2(new Date(),$('debut_d').value,$('debut_h').value,$('debut_m').value)) {
		alert('La date de début doit &ecirc;tre ult&eacute;rieure à la date et l\'heure actuelle.');
		return false;
	}
	if ($('fk_ressource').value == 0) {
		alert('Veuillez sélectionné une ressource.');	
		return false;
	}
	return true;
}

function reloadreservresult() {
	var strurl = '/new/reservations.php?action=reloadreservresult';	
	strurl += '&fk_ressource='+$('fk_ressource').value;
	strurl += '&fk_demandeur='+$('fk_demandeur').value;
	strurl += '&fk_etablissement='+$('fk_etablissement').value;
	strurl += '&fk_statut='+$('fk_statut').value;
	strurl += '&date=1';
	strurl += '&datedebut='+$('datedebut').value;
	strurl += '&datefin='+$('datefin').value;
	callAjax(strurl,null,function() {
		if (!ajaxOk()) return;
		$('reservresult').innerHTML = objAjax.responseText;
		objAjax = null;
	 });
}

function reloadmoddate() {
	var strurl = '/new/reservations.php?action=moddatesavebtn&id='+$('idreservation').value;
	if ($('moddebut').value=='1') strurl += '&moddebut=1&debut_d='+$('debut_d').value+'&debut_h='+$('debut_h').value+'&debut_m='+$('debut_m').value;
	else strurl += '&moddebut=0';
	strurl += '&fin_d='+$('fin_d').value+'&fin_h='+$('fin_h').value+'&fin_m='+$('fin_m').value	
	callAjax(strurl,null,function() { 
		if (!ajaxOk()) return;
		$('moddatebtn').innerHTML = objAjax.responseText;
		objAjax = null;
	});
	$('moddatebtn').innerHTML = 'Veuillez patienter...';
}


function showpostefiltre(elm,total) {
	elm.innerHTML = '[ Retour &agrave; la liste de tous les postes... ]';
	$('listefiltre').style.display='block';
	$('allposte').style.display='none';
	$('postefiltre').style.display='inline';
}

function hidepostefiltre(elm,total) {
	elm.innerHTML = '[ Rechercher dans la liste... ]';
	$('listefiltre').style.display='none';
	$('allposte').style.display='inline';
	$('postefiltre').style.display='none';
	filtrepostes('');
	$('txtfiltre').value='';
}

function filtrepostes(q) {
	var trs = $('srchtbl').getElementsByTagName('tr');
	var row = '1';
	var reg = new RegExp(q,'i');
	var nb = 0;
	for(var i=0;i<trs.length;i++) {
		if (q=='' || reg.test(trs[i].getAttribute('srch'))) { // montrer...
			trs[i].style.display='';
			trs[i].className = 'row'+row;
			row = (row=='1') ? '' : '1';
			nb++;
		}
		else trs[i].style.display='none';
	}
	$('nbfiltre').innerHTML=nb;
	$('txtfiltre2').innerHTML = q;
}

var textesaved = function() { 
	if (!ajaxOk()) return; 
	objAjax = null; 
}

function saveTexte(typer,id,texte) {
	//alert('/new/modiftexte.php?type='+typer+'&id='+id+'&texte='+escape(texte));
	//callAjax('/new/modiftexte.php?type='+typer+'&id='+id+'&texte='+escape(texte),null,textesaved);
	var url = '/new/modiftexte.php?type='+typer+'&id='+id;
	var postData = 'texte='+escape(texte);
	if (window.XMLHttpRequest) {
		objAjax = new XMLHttpRequest();
		objAjax.onreadystatechange = textesaved;
		
		objAjax.open("POST",url,true);
		objAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
		objAjax.send(postData);
	
	}
	else if (window.ActiveXObject) {
		objAjax = new ActiveXObject("Microsoft.XMLHTTP");
		objAjax.onreadystatechange = textesaved;
		
		objAjax.open("POST",url,true);
		objAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
		objAjax.send(postData);
	
				
	}
	
	//alert('TEST');
	$('ppresentation').innerHTML = texte.replace("\n",'<br />');
	$('editpresentation').style.display='none';
	$('textepresentation').style.display='block';
}

function filtrelistedoc(lacat,cookiename) {
	//alert(lacat);	
	if (typeof(cookiename) != 'undefined') setcsdicookie(cookiename,lacat);
	var lis = $('lst_a_filtrer').getElementsByTagName('li');
	for(var x=0;x<lis.length;x++) {
		try {
			if (lacat == '!!ALLCAT!!' || lis[x].getAttribute('nomcat') == lacat) lis[x].style.display = '';
			else lis[x].style.display = 'none';
		}
		catch(e) { lis[x].style.display = ''; }
	}
}

function setcsdicookie(cookieName,cookieValue,nDays) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
                 + ";expires="+expire.toGMTString();
}

function getcsdicookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f
	
	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );
		
		
		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
	
		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}	

function addfichier(typee,elm) {
	if ($('fichier').value=='') return alert('Veuillez sélectionner un fichier au préalable.');
	var frm = document.getElementsByTagName('form')[0];
	// Save olds...
	frm.oldsubmit = frm.onsubmit;
	frm.oldaction = frm.action;
	
	frm.onsubmit = function() { return true; };
	frm.action = '/new/fichiers.php?action=add&type='+typee+'&element='+elm;
	frm.target = 'postfile';
	
	frm.submit();
	
	frm.onsubmit = frm.oldsubmit;
	frm.action = frm.oldaction;
	frm.target = '_self';
}

function reloadfichiers(typee,elm) {
	callAjax('/new/fichiers.php?action=list&type='+typee+'&element='+elm,null,function() { if (!ajaxOk()) return; $('filelist').innerHTML=objAjax.responseText; objAjax = null; });	
}

function reloadfichiersedit(typee,elm) {
	callAjax('/new/fichiers.php?action=listedit&type='+typee+'&element='+elm,null,function() { if (!ajaxOk()) return; $('filelist').innerHTML=objAjax.responseText; objAjax = null; });	
}

function delfichier(typee,elm,fid) {
	callAjax('/new/fichiers.php?action=delfichier&type='+typee+'&element='+elm+'&fid='+fid,null,function() { if (!ajaxOk()) return; $('filelist').innerHTML=objAjax.responseText; objAjax = null; });		
}

function delsessfichier(typee,fname) {
	callAjax('/new/fichiers.php?action=delsessfichier&type='+typee+'&element=0&fname='+fname,null,function() { if (!ajaxOk()) return; $('filelist').innerHTML=objAjax.responseText; objAjax = null; });		
}
