Tarea #1099 -> Mejorar la encriptación de las contraseñas git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_PROFIND_Web/trunk@55 3fe1ab16-cfe0-e34b-8c9f-7d8c168d430d
34 lines
1.2 KiB
PHP
34 lines
1.2 KiB
PHP
<?php
|
|
|
|
/**
|
|
*
|
|
*/
|
|
class FormularioCambiarPassword extends CFormModel {
|
|
|
|
public $passwordAnterior;
|
|
public $password;
|
|
public $passwordRepetida;
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public function rules() {
|
|
return array(
|
|
array('passwordAnterior, password, passwordRepetida', 'required'),
|
|
array('password, passwordRepetida', 'length', 'max' => 128, 'min' => 6, 'message' => Yii::t('profind', 'La contraseña debe al menos 6 caracteres.')),
|
|
array('passwordRepetida', 'compare', 'compareAttribute' => 'password', 'message' => Yii::t('profind', 'La confirmación de contraseña no coincide.')),
|
|
array('passwordAnterior', 'comprobarPasswordAnterior'),
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Comprobar que la anterior contraseña es correcta
|
|
*/
|
|
public function comprobarPasswordAnterior($attribute, $params) {
|
|
if (!$this->hasErrors()) {
|
|
$usuario = Usuario::model()->findByPk(Yii::app()->user->id);
|
|
if ($usuario->password != Usuario::model()->encryptPassword($this->passwordAnterior))
|
|
$this->addError($this->passwordAnterior, Yii::t('profind', 'La contraseña anterior no es correcta.'));
|
|
}
|
|
}
|
|
} |