// JavaScript Document

function writediv(div, contenu) {
	document.getElementById(div).innerHTML = contenu;
}

function supprimerTuple(dossier, module, id) {
	if(confirm("Etes-vous certain de vouloir supprimer cette ligne ?"))
		if(reponse = file('include/scripts/supprimer_tuple.php?dossier='+escape(dossier)+'&module='+escape(module)+'&id='+escape(id))) {
			if(dossier == 'pages') {
				if(reponse == 'impossible') {
					alert("Veuillez d'abord supprimer les sous-pages rattachées à cette page.");
				}else{
					if(arguments.length == 5)
						writediv(arguments[4], reponse);
					else
						writediv('liste-'+module, reponse);
					if(arguments.length == 4)
						writediv(arguments[3], reponse);
					else
						writediv('mess-confirm', '<div class="mess-confirm" id="mess-confirm-vert">Element <strong>supprimÃ©</strong> avec succÃ¨s.</div>');
				}
			}else{
				if(arguments.length == 5)
					writediv(arguments[4], reponse);
				else
					writediv('liste-'+module, reponse);
				if(arguments.length == 4)
					writediv(arguments[3], reponse);
				else
					writediv('mess-confirm', '<div class="mess-confirm" id="mess-confirm-vert">Element <strong>supprimÃ©</strong> avec succÃ¨s.</div>');
				
			}
		}
}

function supprimerParagraphe(page, id) {
	if(reponse = file('include/scripts/supprimer_tuple.php?dossier=pages&module=pages_paragraphes&id='+escape(id)+'&page='+escape(page)))
		writediv('mess-confirm', '<div class="mess-confirm" id="mess-confirm-vert">Paragraphe <strong>supprimÃ©</strong> avec succÃ¨s.</div>');
}

function file(fichier) {
	if(window.XMLHttpRequest) // FIREFOX
		xhr_object = new XMLHttpRequest();
	else if(window.ActiveXObject) // IE
		xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
	else
		return(false);
	xhr_object.open("GET", fichier, false);
	xhr_object.send(null);
	if(xhr_object.readyState == 4) 
		return(xhr_object.responseText);
	else 
		return(false);
}

function loadXMLDoc(dname) {
	var xmlDoc;
	if (window.XMLHttpRequest) {
		xmlDoc=new window.XMLHttpRequest();
		xmlDoc.open("GET",dname,false);
		xmlDoc.send("");
		return xmlDoc.responseXML;
	}
	// IE 5 and IE 6
	else if (ActiveXObject("Microsoft.XMLDOM")) {
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async=false;
		xmlDoc.load(dname);
		return xmlDoc;
	}
	alert("Error loading document");
	return null;
}

function validForm(dossier, module) {
	
	document.getElementById('ajax-loader').style.display = 'block';
	
	xmlDoc = loadXMLDoc('include/modules/s.'+dossier+'/'+module+'.xml');
	
	var nom = xmlDoc.getElementsByTagName('nom');
	var obligatoire = xmlDoc.getElementsByTagName('obligatoire');
	var contient = xmlDoc.getElementsByTagName('contient');
	var label = xmlDoc.getElementsByTagName('label');
	
	for (i = 0; i < nom.length; i++) {
		if(typeof(obligatoire[i]) != 'undefined') {
			//alert(label[i].childNodes[0].nodeValue+" - "+obligatoire[i].childNodes[0].nodeValue);
			if(obligatoire[i].childNodes[0].nodeValue == 'oui' && document.getElementById(nom[i].childNodes[0].nodeValue).value == '') {
				alert('Le champ '+label[i].childNodes[0].nodeValue+' est obligatoire.');
				document.getElementById(nom[i].childNodes[0].nodeValue).focus();
				document.getElementById('ajax-loader').style.display = 'none';
				return false;
			}
		}
	}
	
	for (i = 0; i < nom.length; i++) {
		// Controle si un contient est déclaré
		if(typeof contient[i] != 'undefined') {
			if(contient[i].childNodes[0].nodeValue == 'alpha') {
				if(!isNaN(document.getElementById(nom[i].childNodes[0].nodeValue).value)) {
					alert('Le champ '+label[i].childNodes[0].nodeValue+' doit Ãªtre de type alpha-numÃ©rique.');
					document.getElementById('ajax-loader').style.display = 'none';
					return false;
				}
			}else if(contient[i].childNodes[0].nodeValue == 'alphanum') {
				
			}else if(contient[i].childNodes[0].nodeValue == 'num') {
				if(isNaN(document.getElementById(nom[i].childNodes[0].nodeValue).value)) {
					alert('Le champ '+label[i].childNodes[0].nodeValue+' doit Ãªtre de type numÃ©rique.');
					document.getElementById('ajax-loader').style.display = 'none';
					return false;
				}
			}else if(contient[i].childNodes[0].nodeValue == 'email') {
				if (((document.getElementById(nom[i].childNodes[0].nodeValue).value.indexOf('@')<1) || (document.getElementById(nom[i].childNodes[0].nodeValue).value.indexOf('@')==(document.getElementById(nom[i].childNodes[0].nodeValue).value.length-1)))) {
					alert('Le champ '+label[i].childNodes[0].nodeValue+' doit Ãªtre un email.');
					document.getElementById('ajax-loader').style.display = 'none';
					return false;
				}	
			}else if(contient[i].childNodes[0].nodeValue == 'date') {
				if (!isNaN(document.getElementById(nom[i].childNodes[0].nodeValue).value)) {
					alert('Le champ '+label[i].childNodes[0].nodeValue+' doit Ãªtre au format JJ/MM/AAAA.');
					document.getElementById('ajax-loader').style.display = 'none';
					return false;
				} else if (document.getElementById(nom[i].childNodes[0].nodeValue).value.length!=10) {
					alert('Le champ '+label[i].childNodes[0].nodeValue+' doit Ãªtre au format JJ/MM/AAAA.');
					document.getElementById('ajax-loader').style.display = 'none';
					return false;
				} else {
					if (
						   (isNaN(document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(0)+document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(1)))
						|| (document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(2) != '/')
						|| (isNaN(document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(3)+document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(4)))
						|| (document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(5) != '/')
						|| (isNaN(document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(6)+document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(7)+document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(8)+document.getElementById(nom[i].childNodes[0].nodeValue).value.charAt(9)))
						) {
							alert('Le champ '+label[i].childNodes[0].nodeValue+' doit Ãªtre au format JJ/MM/AAAA.');
							document.getElementById('ajax-loader').style.display = 'none';
							return false;
						}
				}
			}
		}
	}
	
	document.getElementById('form_'+module).submit();
	
	document.getElementById('ajax-loader').style.display = 'none';
		
}

function loadForm(module, id) {
	
	if(reponse = file('include/scripts/load_form.php?module='+escape(module)+'&id='+escape(id)))
		var tableau = eval('(' + reponse + ')')
		
	xmlDoc = loadXMLDoc('include/modules/s.'+module+'/'+module+'.xml');
	
	var nom 		= xmlDoc.getElementsByTagName('nom');
	var contient 	= xmlDoc.getElementsByTagName('contient');
	var bdd 		= xmlDoc.getElementsByTagName('bdd');

	for (i = 0; i < nom.length; i++)
		if(typeof(bdd[i]) != 'undefined')
			document.getElementById(nom[i].childNodes[0].nodeValue).value = tableau[0][bdd[i].childNodes[0].nodeValue];

}

function cacheMessage(){
	setTimeout("writediv('mess-confirm', '');", 5000);
	if (document.getElementById('mess-confirm2'))
		setTimeout("writediv('mess-confirm2', '');", 5000);
	
}

function verifLogin(login, pass) {
	if(login != '' && pass != '') {
		document.getElementById('retour').innerHTML = '';
		document.getElementById('ajax-loader').style.display = 'block';
		if(reponse = file('scripts/verif_login_client.php?login='+escape(login)+'&pass='+escape(pass))) {
			if(reponse == 'ok')
				window.location.href = '../index.php';
			else if(reponse == '!ok')
				writediv('retour', 'Mauvais login/pass');
			else
				writediv('retour', 'Erreur !');
		}
		document.getElementById('ajax-loader').style.display = 'none';
	}else
		document.getElementById('retour').innerHTML = 'Champ(s) vide(s) !';
}

function addLoadEvent(func) { 
   var oldonload = window.onload; 
   if(typeof window.onload != 'function') { 
      window.onload = func; 
   } else { 
      window.onload = function() { 
         oldonload(); 
         func(); 
      } 
   } 
}

function moveTuple(dossier, module, sens, ordre) {
  if(reponse = file('include/scripts/invert_tuples.php?dossier='+escape(dossier)+'&module='+escape(module)+'&sens='+escape(sens)+'&ordre='+escape(ordre))) {
	  writediv('liste-'+module, reponse);
	  writediv('mess-confirm', '<div class="mess-confirm" id="mess-confirm-vert">Element <strong>dÃ©placÃ©</strong> avec succÃ¨s.</div>');
  }
}

function moveTuple(dossier, module, sens, ordre, id) {
  if(reponse = file('include/scripts/invert_tuples.php?dossier='+escape(dossier)+'&module='+escape(module)+'&sens='+escape(sens)+'&ordre='+escape(ordre)+'&id='+escape(id))) {
	  writediv('liste-'+module, reponse);
	  writediv('mess-confirm', '<div class="mess-confirm" id="mess-confirm-vert">Element <strong>dÃ©placÃ©</strong> avec succÃ¨s.</div>');
  }
}

function supprimerModule(module) {
	if(confirm("Etes-vous certain de vouloir supprimer ce module ?"))
		if(confirm("VERIFICATION : SUPPRIMER CE MODULE ?"))
			if(reponse = file('include/scripts/supprimer_module.php?module='+escape(module))) {
				writediv('liste-modules', reponse);
				writediv('mess-confirm', '<div class="mess-confirm" id="mess-confirm-vert">Module <strong>supprimÃ©</strong> avec succÃ¨s.</div>');
			}
	cacheMessage();
}

function ouvrePopupAddParagraphe(){
	document.getElementById('nouveau_paragraphe').style.display = 'block';
}

function addParagraphe(page, titre, contenu, online) {
	if(reponse = file('include/scripts/insert_paragraphe.php?page='+page+'&titre='+escape(titre)+'&contenu='+escape(contenu)+'&online='+escape(online))) {
		writediv('liste-pages_paragraphes', reponse);
		//document.getElementById('form_paragraphe').reset();
		document.getElementById('nouveau_paragraphe').style.display = 'none';
	}
}

function afficheDiv(div) {
	document.getElementById(div).style.display = 'block';
}

function switchMenu() {
	if(document.getElementById('onglets_corps').style.display == 'block') {
		document.getElementById('onglets_corps').style.display = 'none';
		document.getElementById('onglets_corps2').style.display = 'block';
		document.getElementById('liseret_vert').innerHTML = '&nbsp;<a href="#" onclick="javascript:switchMenu();" class="bt_config" >Editorial</a>';
	}else{
		document.getElementById('onglets_corps2').style.display = 'none';
		document.getElementById('onglets_corps').style.display = 'block';
		document.getElementById('liseret_vert').innerHTML = '&nbsp;<a href="#" onclick="javascript:switchMenu();" class="bt_config" >Configuration</a>';
	}
}

