public function executeURemember(sfWebRequest $request) { $this->setLayout('gestio'); $this->ENVIAT = false; $this->IDS = $this->getUser()->getSessionPar('idS'); $RP = $request->getParameter('remember'); $this->FREMEMBER = new RememberForm(); $this->ERROR = ""; if ($request->hasParameter('BREMEMBER')) { $this->FREMEMBER->bind($RP); $OUsuari = UsuarisPeer::cercaDNI($this->FREMEMBER->getValue('DNI')); if ($OUsuari instanceof Usuaris && $this->FREMEMBER->isValid()) { $BODY = OptionsPeer::getString('MAIL_REMEMBER', $this->IDS); $BODY = str_replace('{{PASSWORD}}', $OUsuari->getPasswd(), $BODY); $this->ENVIAT = $this->sendMail(OptionsPeer::getString('MAIL_FROM', $this->IDS), '*****@*****.**', '[Hospici :: RECORDATORI]', $BODY); $this->ENVIAT = $this->sendMail(OptionsPeer::getString('MAIL_FROM', $this->IDS), $OUsuari->getEmail(), ' Hospici :: Recordatori de contrasenya ', $BODY); if (!$this->ENVIAT['OK']) { $this->ERROR = "Hi ha hagut algun problema enviant la contrassenya.<br /> Si us plau, torni-ho a provar més tard."; $this->ENVIAT = false; } } elseif ($this->FREMEMBER->isValid()) { $this->ERROR = "El DNI no existeix o suma incorrecte."; $this->ENVIAT = false; } else { $this->ERROR = ""; $this->ENVIAT = false; } } }
public static function ComprovaDNI($A, $valor, $arguments) { $DNI = trim($valor); if (self::valida_nif_cif_nie($DNI) <= 0) { throw new sfValidatorError($A, "Error: El DNI és incorrecte.<br /> Recorda escriure'l amb el format 99999999A."); } $OUsuari = UsuarisPeer::cercaDNI($DNI); if ($OUsuari instanceof Usuaris && $OUsuari->getUsuariid() != $arguments['idU']) { throw new sfValidatorError($A, "Error: El DNI ja existeix. Si us plau envii un missatge a informatica@casadecultura.org per a més informació. "); } return $valor; }
public static function ComprovaDNI($A, $valor, $arguments) { $DNI = trim($valor); if (self::valida_nif_cif_nie($DNI) <= 0) { throw new sfValidatorError($A, "Error: El DNI és incorrecte.<br /> Recorda escriure'l amb el format 99999999A."); } $OUsuari = UsuarisPeer::cercaDNI($DNI); //Hi ha un usuari amb aquest DNI if ($OUsuari instanceof Usuaris) { //L'usuari i l'actual són diferents if ($OUsuari->getUsuariid() != $arguments['idU']) { //Són diferents perquè és un usuari nou i estem en administració if ($arguments['ADMIN'] && is_null($arguments['idU'])) { return $valor; } else { throw new sfValidatorError($A, "Error: Ja hi ha un usuari creat amb aquest DNI.<br />Provi de recuperar la seva contrassenya i si no pot, contacti per e-mail amb informatica@casadecultura.org. "); } } } return $valor; }
/** * A partir d'un DNI retorna els sites i els nivells. * @param $DNI Usuari DNI * @return Array('Site ID'=>'Nivell ID') * */ public static function searchDNI($DNI) { $RET = array(); $OU = UsuarisPeer::cercaDNI($DNI); if ($OU instanceof Usuaris) { $C = new Criteria(); $C = self::getCriteriaActiu($C); $C->add(self::USUARI_ID, $OU->getUsuariid()); foreach (self::doSelect($C) as $OUS) { $RET[$OUS->getSiteId()] = $OUS->getNivellId(); } return $RET; } return array(); }
public function executeRemember(sfWebRequest $request) { $this->setLayout('hospici'); if ($request->isMethod('POST')) { //L'usuari he enviat el seu DNI i se li ha d'enviar la contrassenya $RS = $request->getParameter('remember'); $this->FREMEMBER = new RememberForm(); $this->FREMEMBER->bind($RS); if ($this->FREMEMBER->isValid()) { $OU = UsuarisPeer::cercaDNI($this->FREMEMBER->getValue('DNI')); $BODY = OptionsPeer::getString('MAIL_REMEMBER', SitesPeer::HOSPICI_ID); $BODY = str_replace('{{PASSWORD}}', $OU->getPasswd(), $BODY); $this->ENVIAT = $this->sendMail(OptionsPeer::getString('MAIL_FROM', $this->IDS), $OU->getEmail(), ' Hospici :: Recordatori de contrasenya ', $BODY); $this->ENVIAT = $this->sendMail(OptionsPeer::getString('MAIL_FROM', $this->IDS), '*****@*****.**', '[Hospici :: RECORDATORI ' . $OU->getUsuariid() . ']', $BODY); if (!$this->ENVIAT) { $this->SECCIO = "ERROR_ENVIAMENT"; } else { $this->SECCIO = 'ENVIADA'; } } else { $this->SECCIO = 'ERROR_DNI_VALIDACIO'; } } else { $this->FREMEMBER = new RememberForm(); $this->SECCIO = 'INICI'; } }