Ejemplo n.º 1
0
 /**
  * Ejecuta la validación del usuario.
  *
  * @param value A file or parameter value/array.
  * @param error An error message reference.
  *
  * @return bool verdadero, si ha pasado con éxtio la validación, de lo contrario falso.
  */
 public function execute(&$value, &$error)
 {
     $campo_param = $this->getParameterHolder()->get('campo');
     $usuario = $this->getContext()->getRequest()->getParameter($campo_param);
     $campo_param = $this->getParameterHolder()->get('campo_id');
     $id = $this->getContext()->getRequest()->getParameter($campo_param);
     $c = new Criteria();
     $c->add(UsuarioPeer::USUARIO, $usuario['usuario'], Criteria::EQUAL);
     $u = UsuarioPeer::doSelectOne($c);
     /*
           print_R($id);
           print_R($usuario['usuario']);
           print_R($u->getUsuario());die;
     */
     // existe o no el mismo usuario en la DB
     if ($u) {
         if ($u->getUsuario() == $usuario['usuario'] and $id == $u->getId()) {
             return true;
         } else {
             $error = $this->getParameterHolder()->get('usuario_error');
             return false;
         }
     } else {
         return true;
     }
 }
Ejemplo n.º 2
0
 public function postValidate($validator, $values)
 {
     if ($values['uid'] == null) {
         throw new sfValidatorError($validator, 'Usuario incorrecto.');
     }
     $c = new Criteria();
     $c->add(UsuarioPeer::ID, $values['uid']);
     $usuario = UsuarioPeer::doSelectOne($c);
     if ($usuario->getSeguridadRespuesta() == $values['respuesta']) {
         return $values;
     } else {
         // throw new sfValidatorError($validator, 'Repuesta Incorrecta');
         $error = new sfValidatorError($validator, 'Respuesta Incorrecta');
         throw new sfValidatorErrorSchema($validator, array('respuesta' => $error));
     }
 }
Ejemplo n.º 3
0
 public function getUsuario(PropelPDO $con = null)
 {
     if ($this->aUsuario === null && $this->fk_usuario_id !== null) {
         $c = new Criteria(UsuarioPeer::DATABASE_NAME);
         $c->add(UsuarioPeer::ID, $this->fk_usuario_id);
         $this->aUsuario = UsuarioPeer::doSelectOne($c, $con);
     }
     return $this->aUsuario;
 }
Ejemplo n.º 4
0
 /**
  * Get the associated Usuario object
  *
  * @param      PropelPDO Optional Connection object.
  * @return     Usuario The associated Usuario object.
  * @throws     PropelException
  */
 public function getUsuario(PropelPDO $con = null)
 {
     if ($this->aUsuario === null && $this->id_usuario !== null) {
         $c = new Criteria(UsuarioPeer::DATABASE_NAME);
         $c->add(UsuarioPeer::ID_USUARIO, $this->id_usuario);
         $this->aUsuario = UsuarioPeer::doSelectOne($c, $con);
         /* The following can be used additionally to
         		   guarantee the related object contains a reference
         		   to this object.  This level of coupling may, however, be
         		   undesirable since it could result in an only partially populated collection
         		   in the referenced object.
         		   $this->aUsuario->addSesions($this);
         		 */
     }
     return $this->aUsuario;
 }
Ejemplo n.º 5
0
 public function executePregunta()
 {
     if ($this->getRequestParameter('comprobar')) {
         if ($this->getRequest()->getMethod() == sfRequest::POST) {
             $params = $this->getRequestparameter('pregunta');
             $c = new Criteria();
             $c->add(UsuarioPeer::ID, $params['uid']);
             $this->usuario = UsuarioPeer::doSelectOne($c);
             if (!$this->usuario) {
                 $this->getUser()->setFlash('error', 'Usuario incorrecto.');
                 return $this->redirect('seguridad/enviarclave');
             }
             $this->form = new PreguntaSecretaForm(array(), array('usuario' => $this->usuario));
             $this->form->bind($this->getRequestParameter('pregunta'));
             if ($this->form->isValid()) {
                 $c = new Criteria();
                 $c->add(UsuarioPeer::ID, $this->form->getValue('uid'));
                 $this->usuario = UsuarioPeer::doSelectOne($c);
                 $this->_resetPass();
                 $this->getUser()->setFlash('notice', 'Su clave ha sido enviar por correo electronico.');
                 return $this->redirect('seguridad/preguntaOk');
             } else {
                 $this->getUser()->setFlash('error', 'El formulario contiene errores.');
             }
         } else {
             throw new Excepion("Error del formulario.");
         }
     } else {
         $c = new Criteria();
         $c->add(UsuarioPeer::USUARIO, $this->getRequestParameter('usuario'));
         $this->usuario = UsuarioPeer::doSelectOne($c);
         if (!$this->usuario) {
             $this->getUser()->setFlash('error', 'Usuario incorrecto.');
             return $this->redirect('seguridad/enviarclave');
         }
         $this->form = new PreguntaSecretaForm(array(), array('usuario' => $this->usuario));
     }
 }