function writediv(divStat,texte){
	$(divStat).innerHTML = texte;
}

var alreadyConnect = false;
function connect(login, password, loaderLogin){
	// affiche le loader
	if( alreadyConnect ) return;
	loaderLogin.style.display = "block";
	if(login.value.length == 0 || password.value.length == 0){
		parent = $('errorBox');
		while (parent.firstChild) {
			parent.removeChild(parent.firstChild);
		}
		// message d 'erreur + coloration des border des inputs
		textNode = document.createTextNode("Veuillez entrer votre login et votre mot de passe. ");
		parent.appendChild(textNode);
		password.value = "";
		new Effect.Appear('errorBox', {duration : 1.5, queue: 'end'});
	}
	else{	
		// requete de verification
		text = createAjaxObject('../includes/php/process/connect.php?log='+escape(login.value)+'&pass='+hex_md5(escape(password.value))+'');
		// connection ok
		if( text == "ok" ){
			alreadyConnect = true;
			return true;
		}
		// connection refusé
		parent = $('errorBox');
		while (parent.firstChild) {
			parent.removeChild(parent.firstChild);
		}
		// message d 'erreur + coloration des border des inputs
		textNode = document.createTextNode("Erreur de login ou de mot de passe. ");
		var link = document.createElement('a');
		link.href = "../creer-un-compte/";
		link.style.color = "#FFFFFF";
		link.appendChild(document.createTextNode("S'inscrire"));
		parent.appendChild(textNode);
		parent.appendChild(link);
		password.value = "";
		new Effect.Appear('errorBox', {duration : 1.5, queue: 'end'});
	}
	loaderLogin.style.display = "none";
	return false;
}

function disconnectAjax(){
	// deconnection
	createAjaxObject('../includes/php/process/disconnect.php');
	// redirection vers la page d 'accueil
	window.location.replace("index.php");
}

function deleteImg( idImage, nameOfImage, idDiv ){
	if(confirm('Etes vous sur de vouloir supprimer cette image : '+nameOfImage)){
		text = createAjaxObject('../includes/php/process/deleteImg.php?idImage='+escape(idImage));
		Effect.toggle(idDiv,'slide');
	}
}

// Prend un champ, la taille minimum , la taille maximum et la div dans laquelles on précise l'état en parametre
function verifInput(champ,min,max,divStat){
	var value = champ.value;
	var id = champ.id;
	if(value.length < min){
		writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop court</span>');
		$(id).style.border = "2px solid red";
	}
	else if(value.length > max){
		writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop long</span>');
		$(id).style.border = "2px solid red";
	}
	else{
		writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
		$(id).style.border = "1px #049aff solid";
		// si les champs sont ok on vérifie si le pseudo est pas deja pris
	}
}

function verifPseudo(champ,min,max,divStat){
	var value = champ.value;
	var id = champ.id;
	if(value.length < min){
		writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop court</span>');
		$(id).style.border = "2px solid red";
	}
	else if(value.length > max){
		writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop long</span>');
		$(id).style.border = "2px solid red";
	}
	else{
		writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
		$(id).style.border = "1px #049aff solid";
		// si les champs sont ok on vérifie si le pseudo est pas deja pris
		text = createAjaxObject('../includes/php/process/verifPseudo.php?pseudo='+escape(value));
		if ( text == "ok" ){
			writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
			$(id).style.border = "1px #049aff solid";
		}
		else if ( text == "bad" ){
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Vous devez utiliser uniquement les lettre de l alphabet ou des chiffres</span>');
			$(id).style.border = "2px solid red";
		}
		else {
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Pseudo deja utilise</span>');
			$(id).style.border = "2px solid red";
		}
	}
}
// Verifie si un email est correct
function verifEmail(champ,min,max,divStat,verifExist){
	var email = champ.value;
	var id = champ.id;
	if(email != ''){
        	if (email.search(/^[a-zA-Z0-9\.\-\+_]+@[a-zA-Z0-9\-_]+\.[a-zA-Z\.\-_]{1,}[a-zA-Z\-_]+/) == -1){
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> E-mail Invalide</span>');
			$(id).style.border = "2px solid red";
		}
		else{
			writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
			$(id).style.border = "1px #049aff solid";
			if ( verifExist == 'ok' )
				verifAlreadyExistEmail(email, id,divStat);
		}
	}
}

// Verifie si un email est correct
function verifAlreadyExistEmail(pseudo, id, divStat){
	text = createAjaxObject('../includes/php/process/verifEmail.php?email='+escape(pseudo));
	if ( text == "ok" ){
		writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
		$(id).style.border = "1px #049aff solid";
	}
	else {
		writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Email déjà utilisé</span>');
		$(id).style.border = "2px solid red";
	}
}

function verifZIP(champ,min,max,divStat){
	var zip = champ.value;
	var id = champ.id;
	if(zip != ''){
		if(zip.length < min){
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop court</span>');
			$(id).style.border = "2px solid red";			
		}
		else if(zip.length > max){
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop long</span>');
			$(id).style.border = "2px solid red";			
		}
        	else if (zip.search(/^[0-9]+\.?[0-9]*$/gi) == -1){
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Code postal invalide</span>');
			$(id).style.border = "2px solid red";
		}
		else{
			writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
			$(id).style.border = "1px #049aff solid";
		}
	}
}

function verifMDP(champ, otherChamp, min, max, divStat1, divStat2){
	var code1 = champ.value;
	var code2 = otherChamp.value;
	var id1 = champ.id;
	var id2 = otherChamp.id;
	if( code1 != '' ){
		if(code1.length < min && code1.length!= 0){
			writediv(divStat1,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop court</span>');
			$(id1).style.border = "2px solid red";
		}
		else if(code2.length < min && code2.length!= 0){
			writediv(divStat2,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop court</span>');
			$(id2).style.border = "2px solid red";
		}
		else if(code1.length > max){
			writediv(divStat1,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop long</span>');
			$(id1).style.border = "2px solid red";
		}
		else if(code2.length > max){
			writediv(divStat2,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Trop long</span>');
			$(id2).style.border = "2px solid red";
		}
		else if ( code2 !=  code1 ){
			writediv(divStat1,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Code différent</span>');
			writediv(divStat2,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Code différent</span>');
			$(id1).style.border = "2px solid red";
			$(id2).style.border = "2px solid red";
		}
		else {
			writediv(divStat1,'<span><img src="../images/button/ok.png" /></span>');
			writediv(divStat2,'<span><img src="../images/button/ok.png" /></span>');
			$(id1).style.border = "1px #049aff solid";
			$(id2).style.border = "1px #049aff solid";
		}
	}
}

function verifCaptcha(divStat,champ){
	var code = champ.value;
	var id = champ.id;
	if(texte = createAjaxObject('../includes/crypt/verifier.php?code='+escape(code))){
		if(texte == 1){
			writediv(divStat,'<span><img src="../images/button/ok.png" /></span>');
			$(id).style.border = "1px #049aff solid";
		}
		else if(texte == 2){
			writediv(divStat,'<span style="color:#cc0000;font-size:12px;"><img src="../images/button/bad.png" /> Mauvais code</span>');
			$(id).style.border = "2px solid red";
		}
	}
}

function displayTheme(id,balise,max){
	for (i = 0; i < max; i++) {
		if ( i == balise )
 			$(i).style.backgroundColor="grey";
		else
 			$(i).style.backgroundColor="white";
 	}
    var xhr = null; 
	if(window.XMLHttpRequest) // Firefox et autres
	   xhr = new XMLHttpRequest(); 
	else if(window.ActiveXObject){ // Internet Explorer 
	   try {
	            xhr = new ActiveXObject("Msxml2.XMLHTTP");
	        } catch (e) {
	            xhr = new ActiveXObject("Microsoft.XMLHTTP");
	        }
	}
	else { // XMLHttpRequest non supporté par le navigateur 
	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
	   xhr = false;
	} 

	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function(){
		// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		if(xhr.readyState == 4 && xhr.status == 200){
			leselect = xhr.responseText;
			// On se sert de innerHTML pour rajouter les options a la liste
			$('mycarousel').innerHTML = leselect;
		}
	}
	// Ici on va voir comment faire du post
	xhr.open("POST","../includes/php/process/searchTemplate.php",true);
	// ne pas oublier ça pour le post
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	// Envoie de paramètres
	xhr.send("idTemplate="+id);
}

//Prend un parametre un tableau avec le nom de toutes les DIV errors
//Si tous les elements sont Ok alors on active le bouton de submit
function verifSubmit( myArray , submitId){
	// on boucle sur les elements obligatoires
	for( i = 0; i < myArray.length; i++){
		// Si un des elements contenu dans le tableau n'est pas ok, alors on desactive le submit
		if( document.getElementById(myArray[i]).childNodes[0].childNodes.length != 1 ){
			$(submitId).disabled = true;
			return false;
		}
	}
	// sinon a l'active
	$(submitId).disabled = false;
}

// supprime la page et ferme la div
function deletePage(idPage, idDiv, orderPage){
	if(confirm('Etes vous sur de vouloir supprimer cette page ?')){
		text = createAjaxObject('../includes/php/process/deletePage.php?idPage='+escape(idPage)+'&order='+escape(orderPage));
		Effect.toggle(idDiv,'slide');
	}
}

// supprime la page et ferme la div
function orderPage(currentOrder,newOrder){
	text = createAjaxObject('../includes/php/process/orderPage.php?currentOrder='+escape(currentOrder)+'&newOrder='+escape(newOrder));
	writediv('allMyPages',text);
}


function selectLook(idThemeSelected, divSelected, isFirst ){
	// on enregistre dans la BDD, on redirige vers son site si il le souhaite
	text = createAjaxObject('../includes/php/process/changeLook.php?idLook='+escape(idThemeSelected));
	alert('Le look a bien ete changer');
	if ( isFirst  == 'ok'){
		window.open("../assistant-creation-de-site/","_self");
	}
}

function getUserCss(){
	return createAjaxObject('../includes/php/process/getCss.php');
}

function searchWebSite(loaderLogin){
	loaderLogin.style.display = "block";
	name = $('edtName').value;
 	categorie = $('edtCat').value;
	text = createAjaxObject('../includes/php/process/searchSite.php?name='+escape(name)+'&categorie='+escape(categorie));
	writediv('tableAnnuaire',text);
	loaderLogin.style.display = "none";
	return false;
}

// Appel de l'objet XMLHttpRequest en fonction du naviguateur afin de vérifier en BDD ou dans un fichier
function createAjaxObject(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);
}
