/**
 * Fichier de quelques fonctions js
 *
 * @name scripts.js
 * @author Marc Brun <mb1@free.fr>
 * @copyright Marc Brun 2011
 * @version 1.0.0
 */


$(document).ready(function() {

	$('span#identification').click(function () {
		raz_connexion();
		$(document.getElementById('identification_form')).show('blind', { direction: 'vertical' }, 500);
	});
	$('div#pwdperdu').click(function () {
		raz_connexion();
		$(document.getElementById('pwdperdu_form')).show('blind', { direction: 'vertical' }, 500);
	});
	$('span#inscription').click(function () {
		raz_connexion();
		$(document.getElementById('inscription_form')).show('blind', { direction: 'vertical' }, 500);
	});

	$('p#fermer_identification').click(function () {
		raz_connexion();
	});
	$('p#fermer_pwdperdu').click(function () {
		raz_connexion();
	});
	$('p#fermer_inscription').click(function () {
		raz_connexion();
	});

});

function raz_connexion() {

 	document.getElementById('identification_form').style.display = 'none';
 	document.getElementById('pwdperdu_form').style.display = 'none';
 	document.getElementById('inscription_form').style.display = 'none';

	document.getElementById('erreur_login').style.visibility = 'hidden';
	document.getElementsByName('login')[0].value = '';
	document.getElementsByName('password')[0].value = '';

}

function getXhr() {

	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;
	}
	return xhr;
}

function isEmail(string) {
    return (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1);
}

function envoiMail() {

	var xhr = getXhr();

	qui					= document.getElementsByName('qui')[0].value;
	nom					= document.getElementsByName('nom')[0].value;
	mail				= document.getElementsByName('mail')[0].value;
	telephone		= document.getElementsByName('telephone')[0].value;
	ville 			= document.getElementsByName('ville')[0].value;
	txtmessage	= document.getElementsByName('txtmessage')[0].value;

	if ((nom == '') || (mail == '') || (txtmessage == '')) {
		alert("Vous devez renseigner tous les champs obligatoires !");
		exit();
	}

	if (!isEmail(mail)) {
		alert("Votre adresse email n'est pas valide !");
		exit();
	}

	xhr.onreadystatechange = function() {

		if (xhr.readyState == 4 && xhr.status == 200) {
			result = xhr.responseText;
			//document.getElementById('reponse_mail').style.visibility = 'visible';
			document.getElementById('reponse_mail').innerHTML = "Votre message a été envoyé avec succès !";
			document.getElementsByName('nom')[0].value = '';
			document.getElementsByName('mail')[0].value = '';
			document.getElementsByName('telephone')[0].value = '';
			document.getElementsByName('ville')[0].value = '';
			document.getElementsByName('txtmessage')[0].value = '';
		}
	}

	// Envoi au script php
	xhr.open("POST", "ajax/envoi_mail.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send("qui=" + qui + "&nom=" + nom + "&mail=" + mail + "&telephone=" + telephone + "&ville=" + ville + "&txtmessage=" + txtmessage);

}

function connexion() {

	var xhr = getXhr();

	login			= document.getElementsByName('login')[0].value;
	password	= document.getElementsByName('password')[0].value;
	souvenir	= document.getElementById('checkbox_souvenir').checked;

	// Envoi au script php, mode synchrone
	xhr.open("POST", "ajax/connexion.php", false);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send("login=" + login + "&password=" + password + "&souvenir=" + souvenir);
	result = xhr.responseText;

	if (result == "OK") {
		return true;
	} else {
		document.getElementById('erreur_login').innerHTML = result;
		document.getElementById('erreur_login').style.visibility = 'visible';
		return false;
	}

}

function connexion_sav(page) {

	var xhr = getXhr();

	xhr.onreadystatechange = function() {

		if (xhr.readyState == 4 && xhr.status == 200) {

			result = xhr.responseText;

			if (result == "OK") {
				document.location = page;
			} else {
				document.getElementById('erreur_login').innerHTML = result;
				document.getElementById('erreur_login').style.visibility = 'visible';
			}
		}
	}

	login			= document.getElementsByName('login')[0].value;
	password	= document.getElementsByName('password')[0].value;

	// Envoi au script php
	xhr.open("POST", "ajax/connexion.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send("login=" + login + "&password=" + password);

	return false;
}

function pwd_perdu(page) {

	var xhr = getXhr();

	xhr.onreadystatechange = function() {

		if (xhr.readyState == 4 && xhr.status == 200) {

			result = xhr.responseText;

			if (result == "OK") {
				document.getElementById('erreur_pwd_perdu').innerHTML = "Nous avons bien reçu votre demande, vous allez recevoir un e-mail avec votre nouveau mot de passe.<br/>Pensez aux vitamines B9 et B12 pour éviter de nouvelles pertes de mémoire.";
				document.getElementById('erreur_pwd_perdu').style.visibility = 'visible';
				document.getElementById('erreur_pwd_perdu').style.borderColor = 'green';
				document.getElementById('zone_pwd_perdu').style.display = 'none';
			} else {
				document.getElementById('erreur_pwd_perdu').innerHTML = result;
				document.getElementById('erreur_pwd_perdu').style.visibility = 'visible';
				document.getElementById('erreur_pwd_perdu').style.borderColor = 'red';
			}
		}
	}

	email = document.getElementsByName('perdu_email')[0].value;

	// Envoi au script php
	xhr.open("POST", "ajax/pwd_perdu.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send("email=" + email);

}

function diaporama_theme() {
	selectElmt = document.getElementsByName('id_theme')[0];
	id_theme = selectElmt.options[selectElmt.selectedIndex].value;
	document.location = "diaporama.php?id_theme=" + id_theme + "&recherche=&ordre=date&page=1";
}

function diaporama_ordre() {
	selectElmt = document.getElementsByName('ordre')[0];
	ordre = selectElmt.options[selectElmt.selectedIndex].value;
	document.location = "diaporama.php?ordre=" + ordre + "&recherche=&id_theme=0&page=1";
}

function diaporama_recherche() {
	recherche = document.getElementsByName('lucarne_recherche')[0].value;
	document.location = "diaporama.php?recherche=" + recherche + "&ordre=date&id_theme=0&page=1";
}

function note_lucarne(id_lucarne_texte) {

	var xhr = getXhr();

	xhr.onreadystatechange = function() {

		if (xhr.readyState == 4 && xhr.status == 200) {

			result = xhr.responseText;
			if (result.substring(0, 3) == "err") {
				alert("Erreur : vous ne pouvez pas voter");
			} else {
				document.getElementById('zone_note').innerHTML = result;
			}
		}
	}

	note = document.getElementsByName('note')[0].value;

	// Envoi au script php
	xhr.open("POST", "ajax/note_lucarne.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send("id_lucarne_texte=" + id_lucarne_texte + "&note=" + note);

}

function ouvrir_reaction() {

	document.getElementById('mini_reagir').style.display = 'none';
	document.getElementById('maxi_reagir').style.display = 'block';

}

// Vide le champ 'champ' si le contenu vaut 'texte'
// Fonctionne pour textearea et input
function clearField(champ, texte) {

	if (document.getElementsByName(champ)[0].tagName == "TEXTAREA") {
		if (document.getElementsByName(champ)[0].innerHTML == texte) {
			document.getElementsByName(champ)[0].innerHTML = '';
		}
	} else if (document.getElementsByName(champ)[0].tagName == "INPUT") {
		if (document.getElementsByName(champ)[0].value == texte) {
			document.getElementsByName(champ)[0].value = '';
		}
	}

}

function getSelectedRadioValue(radiobutton) {

	var returnValue = "";

	if (radiobutton.length == 1) {
		returnValue = radiobutton.value;
	} else {
		for (i = 0 ; i < radiobutton.length ; i++) {
			if (radiobutton[i].checked == true) {
				returnValue = radiobutton[i].value;
			}
		}
	}
	return returnValue;

}

function sondage_validation() {

	id_sondage_choix = getSelectedRadioValue(document.getElementsByName('sondage_choix'));
	if (!id_sondage_choix) {
		alert("Merci de glisser un bulletin dans l'enveloppe avant de quitter l'isoloir !");
		return false;
	}

	var xhr = getXhr();

	xhr.onreadystatechange = function() {

		if (xhr.readyState == 4 && xhr.status == 200) {

			result = xhr.responseText;
			if (result.substring(0, 3) == "err") {
				alert("Erreur : vous avez déjà voté !");
			} else {
				document.getElementById('zone_sondage').innerHTML = result;
			}
			return false;
		}
	}

	// Envoi au script php
	xhr.open("POST", "ajax/vote_sondage.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send("id_sondage_choix=" + id_sondage_choix);

}

function fbs_click(u) {
	window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u),'sharer','toolbar=0,status=0,width=626,height=436');
	return false;
}

// Lance le calcul du classement d'une saison
function generer_classement() {

	var xhr = getXhr();

	xhr.onreadystatechange = function() {

		if (xhr.readyState == 4 && xhr.status == 200) {
			new_classement = xhr.responseText;
			document.getElementById("classement").innerHTML = new_classement;
		}
	}

	// préparation du POST
	xhr.open("POST", "ajax_classement.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

	championnat = document.getElementsByName("championnat")[0].value;

	journee_debut = document.getElementsByName("journee_debut")[0].options[document.getElementsByName("journee_debut")[0].selectedIndex].value;
	journee_fin = document.getElementsByName("journee_fin")[0].options[document.getElementsByName("journee_fin")[0].selectedIndex].value;
	minute_debut = document.getElementsByName("minute_debut")[0].options[document.getElementsByName("minute_debut")[0].selectedIndex].value;
	minute_fin = document.getElementsByName("minute_fin")[0].options[document.getElementsByName("minute_fin")[0].selectedIndex].value;

	domext = document.getElementsByName("domext")[0].options[document.getElementsByName("domext")[0].selectedIndex].value;
	ordre  = document.getElementsByName("ordre")[0].options[document.getElementsByName("ordre")[0].selectedIndex].value;

	post  = "championnat=" + championnat;
	post += "&journee_debut=" + journee_debut;
	post += "&journee_fin=" + journee_fin;
	post += "&minute_debut=" + minute_debut;
	post += "&minute_fin=" + minute_fin;
	post += "&domext=" + domext;
	post += "&ordre=" + ordre;
	xhr.send(post);

}

function submitOnEnter(evt, form_id) {
	var charCode = (evt.which) ? evt.which : event.keyCode;
	if(charCode == "13") {
		document.getElementById(form_id).submit();
	}
}

function connectOnEnter(evt) {
	var charCode = (evt.which) ? evt.which : event.keyCode;
	password	= document.getElementsByName('password')[0].value;

	if (charCode == "13" && password) {
		connexion();
	}
}

