/*********************************************************************** * * Fonction de vérification du format de l'adresse mail * ************************************************************************/ function checkEmail(emailAddr) { // this function checks for a well-formed e-mail address // in the format: // user@domain.com var i; // check for @ i = emailAddr.indexOf("@"); if (i == -1) { return false; } // separate the user name and domain var username = emailAddr.substring(0, i); var domain = emailAddr.substring(i + 1, emailAddr.length) // look for spaces at the beginning of the username i = 0; while ((username.substring(i, i + 1) == " ") && (i < username.length)) { i++; } // remove any found if (i > 0) { username = username.substring(i, username.length); } // look for spaces at the end of the domain i = domain.length - 1; while ((domain.substring(i, i + 1) == " ") && (i >= 0)) { i--; } // remove any found if (i < (domain.length - 1)) { domain = domain.substring(0, i + 1); } // make sure neither the username nor domain is blank if ((username == "") || (domain == "")) { return false; } // check for bad characters in the username var ch; for (i = 0; i < username.length; i++) { ch = (username.substring(i, i + 1)).toLowerCase(); if (!(((ch >= "a") && (ch <= "z")) || ((ch >= "0") && (ch <= "9")) || (ch == "_") || (ch == "-") || (ch == "."))) { return false; } } // check for bad characters in the domain for (i = 0; i < domain.length; i++) { ch = (domain.substring(i, i + 1)).toLowerCase(); if (!(((ch >= "a") && (ch <= "z")) || ((ch >= "0") && (ch <= "9")) || (ch == "_") || (ch == "-") || (ch == "."))) { return false; } } var aSuffix = new Array("com","edu","org","gov","mil","ca", "co.uk", "ltd.uk", "fr", "de"); var bFoundSuffix = false; i = 0; while (i < aSuffix.length) { if (("." + aSuffix[i]) == domain.substring(domain.length - aSuffix[i].length - 1, domain.length)) { return true; } i++; } // we would have exited if we'd found a good suffix, so return false return false; } function emailOK(emailAddr) { if (!(checkEmail(emailAddr))) { alert("Merci de bien vouloir vérifier votre adresse email : le format n'est pas valide"); } }