<?php 
/**
 * Este es el formulario de Creacion/modificacion de usuarios
 */
class FRMNuevaContrasenya extends AppFormulario
{
	protected $_url_traseditar='/usuarios/listado';
	
    /**
     * init() hereda de AppForm
     */
	public function init()
	{
		parent::init();
		$this->setName('formulariologin');
		
		$this->setAction('/usuarios/recuperanuevapass?token='.$this->getObjeto()->token);
		
		
		
		
		
			$clave = new EFClave('clave');
			$clave->setLabel('Clave:');
			$this->addElement($clave);
		
		
		$repite = new EFClave('repite');
		$repite->setIgual('clave', 'Las contraseñas no coinciden');
		$repite->setLabel('Repetir contraseña:');
		$this->addElement($repite);

		$mensaje = new EFHtml('mensaje');
		$mensaje->setValue('Tras cambiar la contraseña se redirigira a la página de login');
		$this->addElement($mensaje);
		
		//Boton Submit
		$submit = new EFSubmit('cpass');
		$submit->setValue('Guardar');
		
		
		
		$this->addElement($submit);
		
		
		
	
		
	
		
	
	}
	
	public function cpassAccion($datos){
	
		$objeto = $this->getObjeto();
	
		if($objeto instanceof Usuario)
	
		if($this->isValid($datos)){
			$valores = $this->getValues();
			try {
				$objeto->cambiarPass($valores['clave']);
				AppAjax::setRedirigir(BASEURL.'/index/index');
			} catch(Exception $e){
				AppAjax::setMensajeError('#clave',  $e->getMessage());
			}
		}else{
			foreach ($this->getElements() as $element){
				if($element instanceof AppElementoFormulario){
					if(count($element->getMessages()>1))
					foreach($element->getMessages() as $mensaje){
						AppAjax::setMensajeError($element->identificadorScript(), $mensaje);
					}
				}
					
			}
		}
	}
	
	public function __construct(Usuario $objeto, $options = null){
		$this->setObjeto($objeto);
		parent::__construct($options);
		
	}}