예제 #1
0
 /**
  * @brief Function update
  *      seleciona todos os campos do Banco de dados e retorna os valores das colunas ja descriptografado.
  * @param id_adm do usuario logado
  * @param url da imagem
  * @return mensagem indicador de erro ou sucesso
  */
 public function update($id_adm, $url = 1)
 {
     $this->id_adm = $id_adm;
     $this->name = Dbcommand::post("name_service");
     $this->about = Dbcommand::post("about_service");
     for ($i = 0; $i < $this->album->size; $i++) {
         $this->album->photo[$i]->update($this->id_adm, $url);
     }
     if (!ValidationData::text($this->name)) {
         return "erro_campo";
     } else {
         $this->name = Criptography::BASE64($this->name, 1);
         $this->about = Criptography::BASE64($this->about, 1);
         $this->log = Criptography::BASE64(date("Y-m-d H:i:s"), 1);
         Dbcommand::update('tb_servicos', array('SER_ID_ADM' => $this->id_adm, 'SER_LOG' => $this->log, 'SER_NOME' => $this->name, 'SER_SOBRE' => $this->about), array('SER_ID' => $this->id));
         return "sucesso_alterar_dados";
     }
 }
예제 #2
0
 /**
  * @brief Function update
  *      seleciona todos os campos do Banco de dados e retorna os valores das colunas ja descriptografado, aceita nome da foto vazio.
  * @param  id_adm do usuario logado
  * @param url da imagem
  * @return mensagem indicador de erro ou sucesso
  */
 public function update($id_adm, $url = '')
 {
     $this->id_adm = $id_adm;
     $this->name = Dbcommand::post("name_photo");
     if ($url != '') {
         $this->url = $url;
     }
     if (!empty($this->name) && !ValidationData::text($this->name)) {
         return "erro_campo";
     } else {
         $this->name = Criptography::BASE64($this->name, 1);
         $this->url = Criptography::BASE64($this->url, 1);
         $this->albumName = Criptography::BASE64($this->albumName, 1);
         $this->log = Criptography::BASE64(date("Y-m-d H:i:s"), 1);
         Dbcommand::update('tb_fotos', array('FOTO_ID_ADM' => $this->id_adm, 'FOTO_LOG' => $this->log, 'FOTO_NOME' => $this->name, 'FOTO_NOME_ALBUM' => $this->albumName, 'FOTO_URL' => $this->url), array('FOTO_ID' => $this->id));
         return "sucesso_alterar_dados";
     }
 }
예제 #3
0
<?php

$no_need_login = true;
$no_visible_elements = true;
include "../header.php";
@session_destroy();
if (@$_POST) {
    if (Dbcommand::post("password1_rec") && Dbcommand::post("password2_rec")) {
        if (Dbcommand::post("password1_rec") == Dbcommand::post("password2_rec")) {
            $pass = Criptografia::Bcrypt(Dbcommand::post("password1_rec"));
            $email = Dbcommand::post("email");
            Dbcommand::update('tb_administradores', array('ADM_SENHA' => $pass), array('ADM_EMAIL' => $email));
            header("Location: ../login.php?msg=5");
        } else {
            /*
            $chave = $_GET['confirmacao'];
            $email = $_GET['utilizador'];
            header("Location: recuperar.php?utilizador=$email&confirmacao=$chave&msg=9");
            */
            die('<a href="./" class="btn btn-primary">Voltar</a>
	        	<p>Senhas diferem uma da outra. Volte e digite seu email novamente para reiniciar a recuperação de senha.</p>');
        }
    }
}
if (empty($_GET['utilizador']) || empty($_GET['confirmacao'])) {
    echo die('<a href="./" class="btn btn-primary">Voltar</a>
		<p>Não é possível alterar a password: dados em falta</p>');
    //header("Location: ./");
}
@($user = $_GET['utilizador']);
@($hash = $_GET['confirmacao']);
예제 #4
0
 /**
  * @brief Function setName
  *      armazena o nome da empresa.
  * @param void
  * @return void
  */
 public function setName()
 {
     $this->name = Dbcommand::post('name_corporation');
     $this->name = Criptography::BASE64($this->name, 1);
     Dbcommand::insert('tb_empresa', array('EMP_NOME'), array($this->name));
     return $this;
 }
예제 #5
0
 /**
  * @brief Function setRecovery
  *      verifica se é possivel recuperar a senha, verificando se ja foi feito o pedido e se o email ja esta cadastrado; assim depois realiza a recuperação.
  * @param void
  * @return mensagem indicador de erro ou sucesso
  */
 public function setRecovery()
 {
     $this->mail_job = Dbcommand::post("email");
     if (!ValidationData::mail($this->mail_job)) {
         return "erro_campo";
     } else {
         $this->mail_job = Criptography::BASE64($this->mail_job, 1);
         $results = Dbcommand::select("tb_administradores", array('ADM_EMAIL' => $this->mail_job));
         if (Dbcommand::count_rows($results) == 1) {
             /*  Verifica se o email esta cadastrado	 */
             $chave = sha1(uniqid(mt_rand(), true));
             /* Guardar este par de valores na tabela para confirmar mais tarde  */
             $check = Dbcommand::select("tb_recuperacao", array('REC_ADM' => $this->mail_job));
             if (Dbcommand::count_rows($check) > 0) {
                 /*  Verifica se o email ja solicitou a recuperacao  */
                 Dbcommand::update("tb_recuperacao", array('REC_CONFIRMACAO' => $chave), array('REC_ADM' => $this->mail_job));
             } else {
                 Dbcommand::insert("tb_recuperacao", array('REC_ADM', 'REC_CONFIRMACAO'), array($this->mail_job, $chave));
             }
             /* 	  ====      Setando valores 	====	 */
             $link = $_SERVER['HTTP_HOST'] . "/ej-admin/recuperar/recuperar.php?utilizador={$this->mail_job}&confirmacao={$chave}";
             $this->mail_job = Criptography::BASE64($this->mail_job, 0);
             $this->title = "Recuperação de senha";
             $this->message = 'Olá ' . $this->mail_job . ', visite este link para recuperar a senha: ' . $link . '<br><br><br>
                                 Solicitação: ' . date("d/m/Y H:i:s", strtotime(date("Y-m-d H:i:s")));
             /*  	==========	    ==========	 */
             $mail = new PHPMailer();
             /* Classe para enviar emails   */
             $mail->IsSMTP();
             /* Define que a mensagem sera SMTP     */
             /*  Define o remetente   */
             $mail->From = $this->from;
             // Seu e-mail
             $mail->Sender = $this->from;
             // Seu e-mail
             $mail->FromName = $this->fromName;
             // Seu nome
             /* Define os destinatario(s)    */
             $mail->AddAddress($this->mail_job);
             /* Sera para o solicitante */
             $mail->IsHTML(true);
             // Define que o e-mail sera enviado como HTML
             $mail->CharSet = 'utf-8';
             // Charset da mensagem
             // Define a mensagem (Texto e Assunto)
             $mail->Subject = $this->title;
             $mail->Body = $this->message;
             $sended = $mail->Send();
             // Envia o e-mail
             $mail->ClearAllRecipients();
             // Limpa os destinatarios e os anexos
             if ($sended) {
                 return "sucesso_recuperacao";
             } else {
                 return "erro_recuperacao";
             }
         } else {
             return "erro_email";
         }
     }
 }
예제 #6
0
파일: index.php 프로젝트: cassiod/SisAdm
<?php

$no_need_login = true;
$no_visible_elements = true;
include "../header.php";
@session_destroy();
if (Dbcommand::post("email")) {
    $mail = new Mail();
    header("Location: index.php?msg=" . $mail->setRecovery());
}
?>
		<div class="container">
		    <div class="row">
		        <div class="col-xs-12 col-sm-10">
	                        	<div class="jumbotron">
            			   <a href="../"><h1>Recuperar Senha</h1></a>
		                <br/>
		                <?php 
echo Message::get();
?>

		                <form action="#" method="post">
		                    <fieldset>
		                        <div>Email profissional:
		                            <input type='email' name='email' class="form-control" placeholder="Digite seu email" required/>
		                        </div>
		                        <br/>
		                        <button type="submit" class="btn btn-primary pull-right" >Recuperar Senha</button>
		                        <a href="../" class="btn btn-primary">Voltar</a>
		                        <br/>
		                    </fieldset>
예제 #7
0
 /**
  * @brief Function login
  *      verifica os dados de entrada e valida caso o usuario esteja cadastrado e ativo.
  *      Assim recebe do banco os dados cadastrado e criptografados do usuario. Ao validar o acesso, é criado uma sessão com 1800s.
  * @param void
  * @return mensagem indicador de erro ou sucesso
  */
 public function login()
 {
     $this->login = Dbcommand::post("username_user");
     $this->password = Dbcommand::post("password_user");
     if (!empty($this->login) && !empty($this->password)) {
         $this->login = Criptography::BASE64($this->login, 1);
         $result = Dbcommand::select('tb_administradores', array('ADM_LOGIN' => $this->login));
         if (Dbcommand::count_rows($result) > 0) {
             $results = Dbcommand::rows($result);
             if (Criptography::CheckBcrypt($this->password, $results['ADM_SENHA']) == FALSE) {
                 return "erro_senha";
             } else {
                 $this->id = $results['ADM_ID'];
                 $this->status = $results['ADM_STATUS'];
                 if ($this->status != 2) {
                     return "usuario_inativo";
                 } else {
                     if (!isset($_SESSION)) {
                         session_start();
                         // seta configurações fuso horario e tempo limite de inatividade em segundos
                         date_default_timezone_set("Brazil/Recife");
                         $tempolimite = 1800;
                         // (s)
                         /*fim das configurações de fuso horario e limite de inatividade
                           aqui ta o seu script de autenticação no momento em que ele for validado você seta as configurações abaixo.
                           seta as configurações de tempo permitido para inatividade*/
                         $_SESSION['registro'] = time();
                         // armazena o momento em que autenticado
                         $_SESSION['limite'] = $tempolimite;
                         // armazena o tempo limite sem atividade
                         // fim das configurações de tempo inativo
                     }
                     $_SESSION['usuario_logado'] = $this->id;
                     $this->log = Criptography::BASE64(date("Y-m-d H:i:s"), 1);
                     Dbcommand::update('tb_administradores', array('ADM_LOG' => $this->log), array('ADM_ID' => $this->id));
                     return "usuario_logado";
                 }
             }
         } else {
             return "erro_entrada_usuario";
         }
     } else {
         return "erro_entrada_usuario";
     }
 }