Uno de los grandes fallos que tiene Joomla 1.5 está en el formulario de registro de usuarios. El problema viene en que no trae un campo para verificar o validar el email y son muchísimos los usuarios que se registran y al indicar un email erroneo pues no les puede llegar el correo para verificar su cuenta. Si les pasa esto, pensarán que nuestra página web no funciona y que no van a perder más tiempo en ella intentando registrarse.
Básicamente lo que haremos será insertar un formvalidator para que nos avise cuando el email insertado no sea igual y también tenemos que añadir un nuevo inputbox para poder escribir la validación del email.
Para solucionar ese handicap vamos a tener que editar el archivo default.php que está en:
/components/com_user/views/register/tmpl/default.php
Primero buscamos estas líneas:
Window.onDomReady(function(){
document.formvalidator.setHandler('passverify', function (value) { return ($('password').value == value); } );
});
Y justo debajo de ellas vamos a pegar el siguiente código:
Window.onDomReady(function(){
document.formvalidator.setHandler('passverify', function (value) { return ($('password').value == value); } );
document.formvalidator.setHandler('emailverify', function (value) { return ($('email').value == value); } );
});
Ahora vamos a buscar las siguientes líneas:
<tr>
<td height="40">
<label id="emailmsg" for="email">
<?php echo JText::_( 'Email' ); ?>:
</label>
</td>
<td>
<input type="text" id="email" name="email" size="40" value="<?php echo $this->user->get( 'email' );?>" class="inputbox required validate-email" maxlength="100" /> *
</td>
</tr>
Justo debajo de ellas vamos a pegar el siguiente código:
<tr>
<td height="40">
<label id="email2msg" for="email2">
<?php echo JText::_( 'Verify Email' ); ?>:
</label>
</td>
<td>
<input type="text" id="email2" name="email2" size="40" value="<?php echo $this->user->get( 'email' );?>" class="inputbox required validate-emailverify" maxlength="100" /> *
</td>
</tr>
Esta solución la saqué de los foros en inglés y funciona perfectamente. No modifica datos de la base de datos ni hace nada extraño ya que su única función es validar y comparar los emails insertados.
Espero que sirva de ayuda!