Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 1273 → Rev 1274

/trunk/client/bottin/bibliotheque/inscription.class.php
19,7 → 19,7
// | License along with this library; if not, write to the Free Software |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
// +------------------------------------------------------------------------------------------------------+
// CVS : $Id: inscription.class.php,v 1.15 2006-12-01 13:23:16 florian Exp $
// CVS : $Id: inscription.class.php,v 1.16 2007-03-22 15:58:35 alexandre_tb Exp $
/**
* Inscription
*
31,7 → 31,7
*@author Alexandre GRANIER <alexandre@tela-botanica.org>
//Autres auteurs :
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.15 $ $Date: 2006-12-01 13:23:16 $
*@version $Revision: 1.16 $ $Date: 2007-03-22 15:58:35 $
// +------------------------------------------------------------------------------------------------------+
*/
 
146,12 → 146,12
function construitFormulaire($url)
{
$squelette =& $this->defaultRenderer();
$squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'<table style="border:0;width:100%;">'."\n".'{content}'."\n".'</table>'."\n".'</form>'."\n");
$squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'<table class="inscription_table">'."\n".'{content}'."\n".'</table>'."\n".'</form>'."\n");
$squelette->setElementTemplate( '<tr>'."\n".
'<td style="font-size:12px;width:140px;text-align:right;">'."\n".'{label}'.
'<td class="inscription_cellule_gauche">'."\n".'{label}'.
'<!-- BEGIN required --><span class="symbole_obligatoire">&nbsp;*</span><!-- END required -->'."\n".
' :</td>'."\n".
'<td style="text-align:left;padding:5px;"> '."\n".'{element}'."\n".
'<td class="inscription_cellule_droite"> '."\n".'{element}'."\n".
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n".
'</td>'."\n".
'</tr>'."\n");
168,12 → 168,79
$this->addElement('html', $debut);
$this->addElement('text', 'email', INS_EMAIL) ;
$this->addRule('email', INS_EMAIL_REQUIS, 'required','', 'client') ;
$this->addRule('email', INS_MAIL_INCORRECT, 'email', '', 'client') ;
$this->addElement('password', 'mot_de_passe', INS_MOT_DE_PASSE, array('size' => '10')) ;
$this->addRule('email', INS_MAIL_INCORRECT, 'email', '', 'client') ;
// Le mot de passe
$this->addElement('html', '<tr><td colspan="2"><span class="commentaire">'.INS_LAIUS_MOT_DE_PASSE.'</span></td></tr>');
$this->addElement('password', 'mot_de_passe', INS_MOT_DE_PASSE, array('size' => '10', 'onkeyup' => 'test_robustesse()')) ;
$this->addElement('password', 'mot_de_passe_repete', INS_REPETE_MOT_DE_PASSE, array('size' => '10')) ;
$this->addRule('mot_de_passe', INS_MOT_DE_PASSE_REQUIS, 'required', '', 'client') ;
$this->addRule('mot_de_passe_repete', INS_MOT_DE_PASSE_REQUIS, 'required', '', 'client') ;
$this->addRule(array ('mot_de_passe', 'mot_de_passe_repete'), INS_MOTS_DE_PASSE_DIFFERENTS, 'compare', '', 'client') ;
// Un template special pour la ligne de mot de passe
// avec le niveau de securite
$squelette->setElementTemplate('<tr>'."\n".
'<td class="inscription_cellule_gauche">'."\n".'{label}'.
'<!-- BEGIN required --><span class="symbole_obligatoire">&nbsp;*</span><!-- END required -->'."\n".
' :</td>'."\n".
'<td class="inscription_cellule_droite"> '."\n".'{element}'."\n".
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n".
'&nbsp;'.INS_LAIUS_ROBUSTESSE.' <span id="histo_robustesse" style="font-weight:bold;"></span>'.
'</td>'."\n".
'</tr>'."\n", 'mot_de_passe');
// Le javascript pour gérer la sécurité
GEN_stockerCodeScript('
function test_robustesse() {
msg="";
cchi=1;cmaj=1;cmin=1;cdiv=1;cspe=1
pw = document.formulaire_inscription.mot_de_passe.value;
if (document.getElementById) {
robustesse = document.getElementById(\'histo_robustesse\');
} else if (document.all) {
robustesse = document.all[\'histo_robustesse\'];
} else {
robustesse = document.layers[\'histo_robustesse\'];
}
pw = pw.replace(/(^\s+)|(\s+$)/g,\'\');
lpw = pw.length;
for (i = 0; i < lpw; i++) {
ac=pw.charCodeAt(i);
if(ac<128){
// Code ascii de 48 a 57 : les chiffres
if(ac>47 && ac<58){cchi+=1}
// de 65 a 90 lettres majuscules
else if(ac>64 && ac<91){cmaj+=1}
// 97 a 122 lettres minuscules
else if(ac>96 && ac<123){cmin+=1}
else cdiv+=1
} // les caracteres speciaux > 122
else {cspe+=1}
}
// Formule de calcul de la robustesse
cx = cchi * cmaj * cmin * cdiv * cspe;
cx= Math.round(Math.log(cx*cx));
if (lpw < 4) {
robustesse.style.color = "#FF0000";
msg = "Trop court" ;
} else {
switch (cx) {
case 3: msg = "Faible";
robustesse.style.color = "#AA00AA";
break;
case 4:
case 5: msg = "moyen";
robustesse.style.color = "#5500CC";
break;
default : msg = "élevé";
robustesse.style.color = "#0000FF";
}
}
robustesse.innerHTML = msg;
}
');
$this->addElement('text', 'nom', INS_NOM) ;
$this->addRule('nom', INS_NOM_REQUIS, 'required', '', 'client') ;
$this->addElement('text', 'prenom', INS_PRENOM) ;