function reset()
 {
     $id = (int) str_replace(Config::get('salt'), '', Cript::decript($_GET['recuperar']));
     try {
         $d = new DateTime();
         $agora = $d->format('Ymdhi');
         # int muito longo para o windows, não da para fazer typecast
         $data = str_replace(Config::get('salt'), '', urldecode(Cript::decript($_GET['d'])));
         #meia hora de validade do email
         if ($agora - $data > 30) {
             throw new Exception('<p>Este link expirou. Solicite novamente sua senha.</p>');
             $this->go('Login', 'login');
         }
         $model = $this->model;
         $user = new $model($id);
         $senha = $this->gerarSenha();
         $user->{$this->password} = md5(Config::get('salt') . $senha);
         $user->save();
         #envia email com a nova senha
         $headers = "From: nao-responder@" . $_SERVER['HTTP_HOST'] . "\r\n";
         $headers .= "MIME-Version: 1.0\r\n";
         $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
         $subject = "Nova senha em " . $_SERVER['HTTP_HOST'];
         $message = "Olá de novo,<p>você pediu para mudar a senha da sua conta em ";
         $message .= $_SERVER['HTTP_HOST'] . ".</p>";
         $message .= "<p>Sua nova senha é:<strong>{$senha}</strong></p>";
         mail($user->{$this->email}, $subject, $message, $headers);
         new Msg('Uma nova senha foi gerada e enviada para o seu email!');
         $this->go('Login', 'login');
     } catch (Exception $exc) {
         new Msg($exc->getMessage(), 3);
         $this->go('Login', 'login');
     }
 }
Example #2
0
 public function insert()
 {
     $connect = static::start();
     $stm = $connect->prepare("INSERT INTO managers(name, email, password) VALUES (:name, :email, :password)");
     $stm->BindValue(":name", $this->name, PDO::PARAM_STR);
     $stm->BindValue(":email", $this->email, PDO::PARAM_STR);
     $stm->BindValue(":password", Cript::encryptpassword($this->password), PDO::PARAM_STR);
     return $stm->execute();
 }
Example #3
0
 /**
  * Constrói uma URL no padrão lazyphp.
  * 
  * <b>Exemplo de uso 1:</b><br>
  * <?php echo $this->Html->getUrl('Usuario', 'all');?>
  * 
  * <b>Retorna se rewriteURL estiver definido: </b><br>
  * /Usuario/all<br>
  * 
  * <b>Retorna se rewriteURL NÃO estiver definido: </b><br>
  * index.php?m=Usuario&p=all<br>
  * 
  * <b>Exemplo de uso 2:</b><br>
  * <?php echo $this->Html->getUrl('Usuario', 'all', array('id' => 1));?>
  * 
  * <b>Retorna se rewriteURL estiver definido: </b><br>
  * /Usuario/all/?id=1<br>
  * 
  * <b>Retorna se rewriteURL NÃO estiver definido: </b><br>
  * index.php?m=Usuario&p=all&id=1<br>
  * 
  * @param String $controller
  * @param String $action
  * @param array $urlParams
  * @return string
  */
 public function getUrl($controller, $action, array $urlParams = NULL)
 {
     $link = '';
     $url = SITE_PATH . '/?m=' . $controller . '&p=' . $action;
     if (Config::get('rewriteURL')) {
         $url = SITE_PATH . '/' . $controller . '/' . $action . '/';
     }
     $link .= $url;
     if (is_array($urlParams)) {
         $carr = Config::get('criptedGetParamns');
         if (is_array($carr)) {
             foreach ($carr as $param) {
                 foreach ($urlParams as $key => $value) {
                     if (is_int($key) && $param === $key + 1) {
                         $urlParams[$key] = Cript::cript($value);
                         continue;
                     } elseif ($param === $key) {
                         $urlParams[$key] = Cript::cript($value);
                     }
                 }
             }
         }
         if (Config::get('rewriteURL')) {
             foreach ($urlParams as $key => $value) {
                 if (is_int($key)) {
                     $link .= $value . '/';
                 } else {
                     $link .= $key . ':' . $value . '/';
                 }
                 unset($urlParams[$key]);
             }
         }
         foreach ($urlParams as $key => $value) {
             if (is_int($key)) {
                 $urlParams['arg' . ++$key] = $value;
             }
         }
         if (Config::get('rewriteURL') && count($urlParams)) {
             $link .= '?';
         }
         if (count($urlParams)) {
             $params = '&' . http_build_query($urlParams);
             $link .= $params;
         }
     }
     return str_replace('//', '/', $link);
 }
 public function uncriptGetParams()
 {
     $carr = Config::get('criptedGetParamns');
     if (is_array($carr)) {
         foreach ($carr as $value) {
             if (isset($_GET[$value])) {
                 $_GET[$value] = Cript::decript($_GET[$value]);
             }
         }
     }
 }