Sandy Barnabas reçu un message plutôt étrange lorsqu'elle valida son formulaire d’enregistrement :
Sandy regarda le champ Nom et vérifia que Barnabas était effectivement correctement écrit. Elle revalida son formulaire, et reçut le même message d'erreur. Manifestement, le site semblait connaître une information sur elle qu'elle ignorait, elle vérifia sa carte d'identité, "Barnabas" était effectivement son nom. Elle décida de jeter un coup d’oeil au code source du formulaire...
//8/9
// - Ajout de meilleurs filtres JS pour les noms
// - Nécessite un minimum de deux caractères pour la nom et prénom
// - Rejette les nom et prénoms qui contiennent plus de deux fois le même
// - caractère de façon consécutive, ex : ooo, lll, eee,etc.
// - Rejette les noms et les prénoms qui contiennent “asdf”
if( has_firstname & has_lastname )
{
var firstname = eval('object.firstname.value');
var lastname = eval('object.lastname.value');
firstname = firstname.toLowerCase();
lastname = lastname.toLowerCase();
if( lastname.length < 2 ) {
alert("Please enter a valid Last Name.");
eval('object.lastname.focus()');
return false;
}
if( firstname.length < 2 ) {
alert("Please enter a valid First Name.");
eval('object.firstname.focus()');
return false;
}
if( lastname.indexOf('asdf') != -1 ) {
alert("Please enter a valid Last Name.");
eval('object.lastname.focus()');
return false;
}
if( firstname.indexOf('asdf') != -1 ) {
alert("Please enter a valid First Name.");
eval('object.firstname.focus()');
return false;
}
for( i = 0; i < firstname.length; i++ ) {
var substrings = firstname.split(firstname.charAt(i));
if(substrings.length - 1 >= 3) {
alert("Please enter a valid First Name.");
eval('object.firstname.focus()');
return false;
}
}
for( i = 0; i < lastname.length; i++ ) {
var substrings = lastname.split(lastname.charAt(i));
if(substrings.length - 1 >= 3) {
alert("Please enter a valid Last Name.");
eval('object.lastname.focus()');
return false;
}
}
}
return true;
} // function validation END
D'après Sandy, « Le seul problème c'est que le code rejette tous les noms ou prénoms qui contiennent plus de trois fois le même caractère, sans se soucier qu'il soient consécutifs ou non. Aussi, j'en conclus que mon nom de famille n'est pas assez "valide" pour ce site génial. »