Incam_PROFIND_Web/www/protected/models/FormularioCambiarPassword.php

34 lines
1.2 KiB
PHP
Raw Normal View History

<?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.'));
}
}
}