	function isDate(dateStr) {
		var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
		var matchArray = dateStr.match(datePat); // is the format ok?
		
		if (matchArray == null) {
			//alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
			return false;
		}
		
		month = matchArray[3]; // p@rse date into variables
		day = matchArray[1];
		year = matchArray[5];
		
		if (month < 1 || month > 12) { // check month range
			return false;
		}
		
		if (day < 1 || day > 31) {
			return false;
		}
		
		if ((month==4 || month==6 || month==9 || month==11) && day==31) {
			return false;
		}
		
		if (month == 2) { // check for february 29th
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
			if (day > 29 || (day==29 && !isleap)) {
				return false; }
		}
		return true;
	}
	function check_email(email) {
		//check_form_envoi_amialert(email);
		ok = true;
		var regexp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		//var regexp 	= /^[a-zA-Z0-9_-]+@[a-zA-Z0-9-]{2,}[.][a-zA-Z]{2,4}$/
		if (regexp.test(email) != true) {
			ok = false; }
		return ok;
	}
	
	function check_login() {
		if(document.getElementById('l').value != "" && document.getElementById('p').value != "") {
			if(check_email(document.getElementById('l').value)) {
				var http_request ;        
				if (window.XMLHttpRequest) { // Mozilla, Safari, ...
					http_request = new XMLHttpRequest(); } 
				else if (window.ActiveXObject) { // IE
					http_request = new ActiveXObject("Microsoft.XMLHTTP"); }
		
				if (!http_request) {
					alert("Votre navigateur ne permet pas la consultation de ce site"); }
				else {
					http_request.onreadystatechange = function() { check_login_retour(http_request); }
					Url = "/includes/ajax/login.asp?l=" + document.getElementById('l').value + "&p=" + document.getElementById('p').value;					
					http_request.open('GET', Url, true);
					if (window.XMLHttpRequest)  { // Mozilla, Safari, ...
						http_request.send(null); } 
					else if (window.ActiveXObject) { // IE
						http_request.send(null); }
				}
			}
			else {
				document.getElementById("info_login").style.display = "block";
				document.getElementById("info_login").innerHTML = "L'email n'est pas correct !<br/>";
			}
		}
		else {
			document.getElementById("info_login").style.display = "block";
			if(document.getElementById('l').value == "") {
				document.getElementById("info_login").innerHTML = "L'email n'est pas renseigné !<br/>"; }
			if(document.getElementById('p').value == "") {
				document.getElementById("info_login").innerHTML = document.getElementById("info_login").innerHTML + "L'email n'est pas renseigné !<br/>"; }
		}
		return false;	
	}
	
	
	function check_login_retour(http_request) {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				response = http_request.responseText;
				if (response == "0" || response == "-1" || response == "-2" || response == "-3") {
					document.getElementById("info_login").style.display = "block";
					switch(response) {
						case "-1" :
							document.getElementById("info_login").innerHTML = "Le mot de passe n'est pas correct !<br/>";
							break;
						case "-2" :
							document.getElementById("info_login").innerHTML = "L'email n'existe pas !<br/>";
							break;
						case "-3" :
							document.getElementById("info_login").innerHTML = "L'email n'est pas valide !<br/>";
							break;
						default :
							document.getElementById("info_login").innerHTML = "Une erreur est apparue...<br/>";
					}
				}
				else {
					tab = response.split('|');
					document.getElementById("info_login").style.display = "none";
					document.getElementById("form_login").style.display = "none";
					document.getElementById("logged-info").innerHTML = "<strong>Vous êtes maintenant connecté en tant que <strong>"+tab[0]+"</strong>";
					document.getElementById("logged").style.display = "block";
					window.location.replace('espace-etudiant.asp');
				}
			}
		}		
	}
	
	
	
	
	function check_new_login() {
		if(document.getElementById('n').value != "" && document.getElementById('d').value != "") {
			var http_request ;        
			if (window.XMLHttpRequest) { // Mozilla, Safari, ...
				http_request = new XMLHttpRequest(); } 
			else if (window.ActiveXObject) { // IE
				http_request = new ActiveXObject("Microsoft.XMLHTTP"); }
	
			if (!http_request) {
				alert("Votre navigateur ne permet pas la consultation de ce site"); }
			else {
				http_request.onreadystatechange = function() { check_new_login_retour(http_request); }
				Url = "/includes/ajax/login_new.asp?n=" + document.getElementById('n').value + "&d=" + document.getElementById('d').value;					
				http_request.open('GET', Url, true);
				if (window.XMLHttpRequest)  { // Mozilla, Safari, ...
					http_request.send(null); } 
				else if (window.ActiveXObject) { // IE
					http_request.send(null); }
			}
		}
		else {
			document.getElementById("info_login").style.display = "block";
			if(document.getElementById('n').value == "") {
				document.getElementById("info_login").innerHTML = "Le nom n'est pas renseigné !<br/>"; }
			if(document.getElementById('d').value == "") {
				document.getElementById("info_login").innerHTML = document.getElementById("info_login").innerHTML + "La date de naissance n'est pas renseignée !<br/>"; }
		}
		return false;	
	}
	
	function check_new_login_retour(http_request) {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				response = http_request.responseText;
				if (response == "0" || response == "-1" || response == "-2") {
					document.getElementById("info_login").style.display = "block";
					switch(response) {
						case "-1" :
							document.getElementById("info_login").innerHTML = "La date de naissance n'est pas correcte !<br/>";
							break;
						case "-2" :
							document.getElementById("info_login").innerHTML = "Le nom n'existe pas !<br/>";
							break;
						default :
							document.getElementById("info_login").innerHTML = "Une erreur est apparue...<br/>";
					}
				}
				else {
					tab = response.split('|');
					document.getElementById("info_login").style.display = "none";
					document.getElementById("form_new").style.display = "none";
					document.getElementById("logged-info").innerHTML = "<strong>Vous êtes maintenant connecté en tant que <strong>"+tab[0]+"</strong>";
					document.getElementById("logged").style.display = "block";
				}
			}
		}		
	}
	
	
	
	
	function envoi_mdp() {
		if(document.getElementById('e').value != "") {
			if(check_email(document.getElementById('e').value)) {
				var http_request ;        
				if (window.XMLHttpRequest) { // Mozilla, Safari, ...
					http_request = new XMLHttpRequest(); } 
				else if (window.ActiveXObject) { // IE
					http_request = new ActiveXObject("Microsoft.XMLHTTP"); }
		
				if (!http_request) {
					alert("Votre navigateur ne permet pas la consultation de ce site"); }
				else {
					http_request.onreadystatechange = function() { envoi_mdp_retour(http_request); }
					Url = "/includes/ajax/envoi_mdp.asp?e=" + document.getElementById('e').value;					
					http_request.open('GET', Url, true);
					if (window.XMLHttpRequest)  { // Mozilla, Safari, ...
						http_request.send(null); } 
					else if (window.ActiveXObject) { // IE
						http_request.send(null); }
				}
			}
			else {
				document.getElementById("info_login").style.display = "block";
				document.getElementById("info_login").innerHTML = "L'email n'est pas correct !<br/>";
			}
		}
		else {
			document.getElementById("info_login").style.display = "block";
			if(document.getElementById('l').value == "") {
				document.getElementById("info_login").innerHTML = "L'email n'est pas renseigné !<br/>"; }
		}
		return false;	
	}
	
	function envoi_mdp_retour(http_request) {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				response = http_request.responseText;
				if (response == "0" || response == "-1" || response == "-2" || response == "-3") {
					document.getElementById("info_login").style.display = "block";
					switch(response) {
						case "-2" :
							document.getElementById("info_login").innerHTML = "L'email n'existe pas !<br/>";
							break;
						case "-3" :
							document.getElementById("info_login").innerHTML = "L'email n'est pas valide !<br/>";
							break;
						default :
							document.getElementById("info_login").innerHTML = "Une erreur est apparue...<br/>";
					}
				}
				else {
					tab = response.split('|');
					document.getElementById("info_login").innerHTML = "Un email contenant votre login et votre mot de passe a été envoyé à " + document.getElementById("e").value;
					document.getElementById("info_login").style.display = "block";
					document.getElementById("form_login").style.display = "none";
					document.getElementById("form_oubli").style.display = "none";
				}
			}
		}		
	}
	
	
	
	
	
	function check_form_info_perso() {
		r = true;
		var msg = "";
		// On vérifie les champs
		ok = false;
		for (i=0;i<=2;i++){
			if (document.forms.ETUDIANT.ETUDIANT_Civilite[i].checked == true)
      			ok = true; }
		if (!ok) {
			r = false;
			msg = msg + "<li>La civilite n'est pas renseignée</li>"; }
		if (document.getElementById('ETUDIANT_Nom').value == "") {
			r = false;
			msg = msg + "<li>Le nom n'est pas renseigné</li>"; }
		
		if (document.getElementById('ETUDIANT_Prenom').value == "") {
			r = false;
			msg = msg + "<li>Le prenom n'est pas renseigné</li>"; }
		
		if (document.getElementById('ETUDIANT_Email').value == "") {
			r = false;
			msg = msg + "<li>L'email n'est pas renseigné</li>"; }
		else if (!check_email(document.getElementById('ETUDIANT_Email').value)) {
			r = false;
			msg = msg + "<li>L'email n'est pas correcte</li>"; }
		if (document.getElementById('ETUDIANT_Pwd').value == "") {
			r = false;
			msg = msg + "<li>Le mot de passe n'est pas renseigné</li>"; }
		show_erreur(msg);
		return r;
	}
	
	function check_form_situation_pro() {
		var msg = "";
		r = true;
		if (document.getElementById('ETUDIANT_SITU_Societe').value == "") {
			r = false;
			msg = msg + "<li>La société n'est pas renseignée</li>"; }
		if (document.getElementById('ETUDIANT_SITU_Fonction').value == "") {
			r = false;
			msg = msg + "<li>La fonction n'est pas renseignée</li>"; }
		show_erreur(msg);
		return r;
	}
	
	function show_erreur(msg) {
		if (msg != "") {
			alert(msg);
		}
	}
	
	function check_form_contact() {
		var msg = "";
		r = true;
		if (document.getElementById('CONTACT_Nom').value == "") {
			r = false;
			msg = msg + "Le nom n'est pas renseigné, "; }		
		if (document.getElementById('CONTACT_Prenom').value == "") {
			r = false;
			msg = msg + "Le prénom n'est pas renseigné, "; }			
		if (document.getElementById('CONTACT_Email').value == "") {
			r = false;
			msg = msg + "L'email n'est pas renseigné, "; }
		else if (!check_email(document.getElementById('CONTACT_Email').value)) {
			r = false;
			msg = msg + "L'email n'est pas valide, ";	}
		
		show_erreur(msg);
		return r;
	}
	
	function check_form_depot_offre() {
		var msg = "";
		r = true;
		if (document.getElementById('OFFRE_Societe').value == "") {
			r = false;
			msg = msg + "<li>La société n'est pas renseignée</li>"; }	
		if (document.getElementById('OFFRE_Contact_Nom').value == "") {
			r = false;
			msg = msg + "<li>Le nom du contact n'est pas renseigné</li>"; }				
		if (document.getElementById('OFFRE_Contact_Email').value == "") {
			r = false;
			msg = msg + "<li>L'email du contact n'est pas renseigné</li>"; }
		else if (!check_email(document.getElementById('OFFRE_Contact_Email').value)) {
			r = false;
			msg = msg + "<li>L'email du contact n'est pas valide</li>";	}		
		if (document.getElementById('OFFRE_Contact_Adresse').value == "") {
			r = false;
			msg = msg + "<li>L'adresse du contact n'est pas renseigné</li>"; }					
		if (document.getElementById('OFFRE_Contact_CP').value == "") {
			r = false;
			msg = msg + "<li>Le code postal du contact n'est pas renseigné</li>"; }	
		if (document.getElementById('OFFRE_Contact_Ville').value == "") {
			r = false;
			msg = msg + "<li>La ville du contact n'est pas renseigné</li>"; }					
		if (document.getElementById('OFFRE_Fonction').value == "") {
			r = false;
			msg = msg + "<li>La fonction n'est pas renseignée</li>"; }	
		if (document.getElementById('OFFRE_Mission').value == "") {
			r = false;
			msg = msg + "<li>La mission n'est pas renseignée</li>"; }
		var offre_datedebut = document.DEPOT_OFFRE.OFFRE_DateDebutJJ.options[document.DEPOT_OFFRE.OFFRE_DateDebutJJ.selectedIndex].value + '/' + document.DEPOT_OFFRE.OFFRE_DateDebutMM.options[document.DEPOT_OFFRE.OFFRE_DateDebutMM.selectedIndex].value + '/' + document.DEPOT_OFFRE.OFFRE_DateDebutAAAA.options[document.DEPOT_OFFRE.OFFRE_DateDebutAAAA.selectedIndex].value;
		if (offre_datedebut == "//") {
			r = false;
			msg = msg + "<li>La date de début souhaitée n'est pas renseignée</li>"; }
		else if (!isDate(offre_datedebut)) {
			r = false;
			msg = msg + "<li>La date de début souhaitée n'est pas valide (" + offre_datedebut + ")</li>"; }			
		var offre_datefin = document.DEPOT_OFFRE.OFFRE_DateFinJJ.options[document.DEPOT_OFFRE.OFFRE_DateFinJJ.selectedIndex].value + '/' + document.DEPOT_OFFRE.OFFRE_DateFinMM.options[document.DEPOT_OFFRE.OFFRE_DateFinMM.selectedIndex].value + '/' + document.DEPOT_OFFRE.OFFRE_DateFinAAAA.options[document.DEPOT_OFFRE.OFFRE_DateFinAAAA.selectedIndex].value;
		if (offre_datefin != "//" && !isDate(offre_datefin)) {
			r = false;
			msg = msg + "<li>La date de fin souhaitée n'est pas renseignée</li>"; }
		
		
		show_erreur(msg);
		return r;
	}
	
	
	function show_etudiant(id) {
		
		var http_request ;        
		if (window.XMLHttpRequest) { // Mozilla, Safari, ...
			http_request = new XMLHttpRequest(); } 
		else if (window.ActiveXObject) { // IE
			http_request = new ActiveXObject("Microsoft.XMLHTTP"); }

		if (!http_request) {
			alert("Votre navigateur ne permet pas la consultation de ce site"); }
		else {
			http_request.onreadystatechange = function() { show_etudiant_retour(http_request); }
			Url = "/includes/ajax/get_etudiant.asp?e=" + id;					
			http_request.open('GET', Url, true);
			if (window.XMLHttpRequest)  { // Mozilla, Safari, ...
				http_request.send(null); } 
			else if (window.ActiveXObject) { // IE
				http_request.send(null); }
		}	
	}
	
	
	function show_etudiant_retour(http_request) {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				response = http_request.responseText;
				if (response == "0" || response == "-1") {
					switch(response) {
						case "-1" :
							alert("L'étudiant est introuvable !!!");
							break;
						default :
							alert("Une erreur est apparue...");
					}
				}
				else {
					tab = response.split('|');
					document.getElementById("annuaire_texte").innerHTML = "<font>"+tab[1]+" "+tab[2]+"</font><br /><p>"+tab[4]+"<br />"+tab[3]+"</p><p>Tél : "+tab[5]+"<br />Email : "+tab[6]+"</p>";
					if (tab[7]=="") {
						document.getElementById('etudiant_photo').src = "img/etudiant/nophoto2.gif";
					} else {
						document.getElementById('etudiant_photo').src = "img/upload/etudiants/" + tab[7];
					}
					affiche_annuaire('fiche_annuaire');					
				}
			}
		}		
	}
	
	function popup_panorama(page) {
       window.open(page,"Panorama 360° de l'IUT-GMP de Valenciennes","menubar=no, status=no, scrollbars=no, menubar=no, width=1000, height=425");
   }