// [@PPR]
// Renvoie true si la date valide le gabarit a/b/c où a E [1..31], b E [1..12], c E [1000, 9999]
// Renvoie false sinon
function estDateValide(in_valeur) {
  
  if ( (in_valeur.length < 8) || (in_valeur.length > 10) ) return false;
  var l_positionSlash1 = in_valeur.indexOf("/");  if ((l_positionSlash1 != 1) && (l_positionSlash1!=2)) return false;
  var l_jour = in_valeur.substring(0, l_positionSlash1);
  var l_chaineRestante = in_valeur.substring(l_positionSlash1+1, in_valeur.length);
  var l_positionSlash2 = l_chaineRestante.indexOf("/"); if ((l_positionSlash2 != 1) && (l_positionSlash2!=2)) return false;
  var l_mois = l_chaineRestante.substring(0, l_positionSlash2);
  var l_annee = l_chaineRestante.substring(l_positionSlash2+1, l_chaineRestante.length); if (l_annee.length!=4) return false;
  if ((l_jour.length==2) && (l_jour.charAt(0)=="0")) l_jour = l_jour.substring(1,2); 
  if ((l_mois.length==2) && (l_mois.charAt(0)=="0")) l_mois = l_mois.substring(1,2); 
  var l_iJour = parseInt(l_jour);  if (isNaN(l_iJour)) return false;
  var l_iMois = parseInt(l_mois);  if (isNaN(l_iMois)) return false;
  var l_iAnnee= parseInt(l_annee);  if (isNaN(l_iAnnee)) return false;
  return (l_iJour>0) && (l_iJour<32) && (l_iMois>0) && (l_iMois<13) && (l_iAnnee>1900) && (l_iAnnee<2100);
  
}

// Renvoie true si la valeur valide le gabarit xx(x)*@xx(x)*.xx(x)*
// Renvoie false sinon
function estEmailValide(in_valeur) {
  
  if (in_valeur.length < 8) return false;
  var l_positionArobase = in_valeur.indexOf("@"); if (l_positionArobase < 2) return false;
  var l_chaineRestante = in_valeur.substring(l_positionArobase+1, in_valeur.length);
  var l_positionPoint = l_chaineRestante.indexOf("."); 
  if ((l_positionPoint < 2) || (l_positionPoint > l_chaineRestante.length-3))   return false;
  
  return true;
  
}

// Renvoie true si la valeur sélectionnée dans le champ in_champSELECT
// n'est pas la première option.
// renvoie false sinon
function estSelectionne(in_champSELECT) {
  
  return in_champSELECT.selectedIndex>0;
  
}

// Renvoie false si les champs sont sélectionnés et identiques
// Renvoie true sinon
function selectionsValides(champ1,champ2) {
	if (estSelectionne(champ1) && estSelectionne(champ2) && champ1.selectedIndex == champ2.selectedIndex) {
		return false;
	}
	return true;
}

// Renvoie true si in_texte a une longueur appartenant à [in_min, in_max].
// Renvoie false sinon
function estDansBornes(in_texte, in_min, in_max) {

  return  (in_texte.length>=in_min) && (in_texte.length<=in_max)
  
}

// Renvoie true si in_checkBox est cochée
// Renvoie false sinon
function estCochee(in_checkBox) {
  if (in_checkBox.checked) {
    return true; 
  }
  return false;
}

function sinscrire() {
    //window.opener.location="http://www.enseignants.hachette-education.com/SiteSED?controlerCode=CtlInscription&requestCode=afficherFormulaireInscription";
window.opener.location="../cli/inscription.php";
    window.close();
  }
  
  function validerLogin() {
    var l_form = document.forms['login'];
    
    if (l_form.doubleSubmit.value.length == 0) {
    
    var l_message = "";      
        // Pseudo
    if (!estDansBornes(l_form.PSEUDO.value, 1, 20)) {
      l_message+="\nLe pseudo est obligatoire et limité à vingt caractères.";        
    }
    // Mot de passe
    if (!estDansBornes(l_form.PASSWORD.value, 1, 20)) {
      l_message+="\nLe mot de passe est obligatoire et limité à vingt caractères.";               
    } 
    if (l_message.length==0) {
      l_form.doubleSubmit.value="stop"; // blocage au prochain submit
      l_form.submit();
    } else {
      alert("Les erreurs suivantes ont été détectées :\n"+l_message); 
      return false;
    }
    return true;     
    } else {
      alert("Formulaire déjà pris en compte.");
      return false;
    }
  }

  function modifierProfil() {
	var l_form = document.forms['login'];
	l_form.redirectionProfil.value="oui";
	validerLogin();
  }

  function gestionBoutonEntree() {
   if (event.keyCode==13) {
     validerLogin();
   }
  }  

