Esempio n. 1
0
 public function cadastro($created)
 {
     /**
      * criar uma pessoa
      */
     $modelPessoa = new Pessoa();
     $pessoasId = $modelPessoa->genericInsert(array('tipo_pessoa' => 1, 'created' => $created));
     /**
      * criar uma pessoa fisica
      */
     $ModelPF = new Fisica();
     $ModelPF->genericInsert(array('pessoas_id' => $pessoasId, 'cpf' => '00000000000', 'nome' => $this->getNome()));
     /**
      * criar um contato
      */
     $modelContato = new Contato();
     $contatoId = $modelContato->genericInsert(array('telefone' => Utils::returnNumeric($this->getPhone()), 'tipo' => 1));
     $modelContato->inserirContato($pessoasId, $contatoId);
     /**
      * criar um email
      */
     $modelEmail = new Email();
     $modelEmail->inserirEmailPessoa($pessoasId, $this->getEmail());
     /**
      * criar um usuario
      */
     $modelUsuario = new Usuario();
     $usuarioId = $modelUsuario->genericInsert(array('roles_id' => 1, 'pessoas_id' => $pessoasId, 'status' => 1, 'perfil_teste' => 0, 'created' => $created, 'email' => $this->getEmail(), 'login' => $this->getEmail(), 'senha' => Authentication::password($this->getPhone()), 'chave' => Authentication::uuid(), 'facebook_id' => $this->getFacebookId()));
     $modelCliente = new Cliente();
     $modelCliente->genericInsert(array('pessoas_id' => $pessoasId, 'status' => 1, 'sexo' => 0));
     return $modelCliente->recuperaCliente($this->getNome(), $this->getPhone());
 }
 public function login()
 {
     try {
         $this->User->validate = $this->User->validate_login;
         $_POST = Utils::sanitazeArray($_POST);
         $this->User->data = $_POST[$this->User->name];
         if ($this->User->validates()) {
             $this->User->data['senha'] = Authentication::password($this->User->data['senha']);
             /**
              * toda a minha validação de status da conta, usuario ou empresa está na procedure.
              * referencia MODEL/USUARIOS.PHP
              * metodo LOGAR
              */
             $usuario[$this->User->name] = $this->User->logar($this->User->data['email'], $this->User->data['senha']);
             if (count($usuario[$this->User->name]) > 0 && $usuario[$this->User->name]['status'] == true) {
                 echo json_encode(array('erro' => false, 'usuario' => array_shift($usuario)));
             } else {
                 throw new Exception('Não foi possivel logar, verifique usuário e senha, ou verifique seu e-mail para ativar sua conta!');
             }
         } else {
             echo json_encode(array('erro' => true, 'erros' => $this->User->validateErros));
         }
     } catch (Exception $ex) {
         echo json_encode(array('erro' => true, 'mensagem' => utf8_decode($ex->getMessage())));
     }
 }
 public function add()
 {
     try {
         $pessoaId = 0;
         $telefones = $_POST['Contato'];
         $created = date('Y-m-d H:i:s');
         $_POST[$this->Fisica->name]['cpf'] = Utils::returnNumeric($_POST[$this->Fisica->name]['cpf']);
         $_POST[$this->Endereco->name]['cep'] = Utils::returnNumeric($_POST[$this->Endereco->name]['cep']);
         $_POST = Utils::sanitazeArray($_POST);
         $this->Funcionario->data = array_merge($this->Funcionario->data, $_POST['Endereco']);
         $this->Funcionario->data = array_merge($this->Funcionario->data, $_POST['Fisica']);
         $this->Funcionario->data = array_merge($this->Funcionario->data, $_POST['Usuario']);
         $this->Funcionario->data = array_merge($this->Funcionario->data, $_POST['Email']);
         //            Utils::pre($_POST);
         if ($this->Funcionario->validates()) {
             /**
              * Pessoa
              */
             $this->Pessoa->useTable = 'pessoas';
             $pessoaId = $this->Pessoa->genericInsert(array('created' => $created, 'tipo_pessoa' => 1));
             /**
              * INSERIR PESSOA FISICA
              */
             $this->Fisica->genericInsert(array('pessoas_id' => $pessoaId, 'nome' => $_POST[$this->Fisica->name]['nome'], 'cpf' => $_POST[$this->Fisica->name]['cpf'], 'rg' => $_POST[$this->Fisica->name]['rg']));
             /**
              * Funcionario
              */
             $this->Funcionario->useTable = 'funcionarios';
             $this->Funcionario->genericInsert(array('pessoas_id' => $pessoaId, 'empresas_id' => $this->empresas_id));
             /**
              * INSERIR USUARIO
              */
             $userKey = Authentication::uuid();
             $this->Usuario->genericInsert(array('pessoas_id' => $pessoaId, 'roles_id' => $_POST[$this->Usuario->name]['roles_id'], 'perfil_teste' => 0, 'status' => 1, 'email' => $_POST['Email']['email'], 'login' => $_POST[$this->Usuario->name]['login'], 'senha' => Authentication::password($_POST[$this->Usuario->name]['senha']), 'chave' => $userKey, 'created' => $created));
             /**
              * Endereco
              */
             $this->Endereco->inserirEnderecosPessoa($pessoaId, $_POST['Endereco']);
             /**
              * INSERIR CONTATO
              */
             $this->Contato->inserirContatosPessoa($pessoaId, $telefones);
             /**
              * INSERIR EMAIL
              */
             $this->Email->inserirEmailPessoa($pessoaId, $_POST['Email']['email']);
             if ($pessoaId > 0) {
                 $url = Router::url(array('Funcionarios', 'index'));
                 echo json_encode(array('funcao' => "sucessoForm( 'Seu cadastro foi efetuado com sucesso', '#FuncionarioAddForm' );" . "redirect('{$url}');"));
             } else {
                 #caso de erro fazer esse procedimento
             }
         } else {
             echo json_encode(array('erros' => $this->Funcionario->validateErros, 'form' => $this->Funcionario->name . 'AddForm'));
         }
     } catch (SystemException $ex) {
         echo $ex->getErrorJson('#FuncionarioAddForm');
     } catch (Exception $ex) {
         echo $ex->getMessage();
     }
 }
 public function cadastroSite()
 {
     try {
         $_POST = Utils::sanitazeArray($_POST);
         $created = date('Y-m-d h:i:s');
         $token = Authentication::uuid();
         $pessoaId = 0;
         $pessoaFidicaId = 0;
         $usuarioId = 0;
         $this->Pessoa->validate = $this->Pessoa->validate_site;
         $this->Pessoa->data = $_POST[$this->Pessoa->name];
         if ($this->Pessoa->validates()) {
             /**
              * criar uma pessoa 
              */
             $pessoaId = $this->Pessoa->genericInsert(array('created' => $created, 'tipo_pessoa' => 1));
             $this->Pessoa->data['pessoas_id'] = $pessoaId;
             /**
              * criar contato do usuario
              */
             $contatoId = $this->Contato->genericInsert(array('telefone' => $this->Pessoa->data['ddd'] . $this->Pessoa->data['telefone'], 'tipo' => 1));
             /**
              * Atrelando um contato a uma pessoa
              */
             $this->Contato->inserirContato($pessoaId, $contatoId);
             /**
              * inserindo um email a pessoa
              */
             $this->Email->inserirEmailPessoa($pessoaId, $this->Pessoa->data['email']);
             /**
              * criar uma Pessoa Fisica
              */
             $pessoaFidicaId = $this->Fisica->genericInsert(array('pessoas_id' => $pessoaId, 'cpf' => str_pad('00', 11, '0', STR_PAD_RIGHT), 'nome' => $this->Pessoa->data['nome']));
             $this->Pessoa->data['pessoaFisica_id'] = $pessoaFidicaId;
             /**
              * cria um usuario
              */
             $usuarioId = $this->Usuario->genericInsert(array('roles_id' => 4, 'pessoas_id' => $pessoaId, 'status' => 0, 'perfil_teste' => 1, 'created' => $created, 'email' => $this->Pessoa->data['email'], 'login' => $this->Pessoa->data['login'], 'senha' => Authentication::password($this->Pessoa->data['senha']), 'chave' => $token));
             $this->Pessoa->data['usuarios_id'] = $usuarioId;
             $this->Pessoa->data['token'] = $token;
             $_SESSION[$this->Pessoa->name] = $this->Pessoa->data;
             $url = Router::url(array('pages', 'cadastro-estabelecimento'));
             echo json_encode(array('erro' => false, 'mensagem' => '', 'funcao' => "msg_sucesso( 'Cadastro realizado com sucesso, aguarde um momento!' , '#CadastroFrom');redirect('{$url}');"));
         } else {
             echo json_encode(array('erro' => true, 'funcao' => "msg_erro( '{$this->Pessoa->refactoryError()}' , '#CadastroFrom');hideLoaderForm('#CadastroFrom');"));
         }
     } catch (Exception $ex) {
         echo json_encode($ex->getTrace());
     }
 }
 /**
  * @author FreelaPHP schuindt
  * @version 1.0
  * @todo metodo que reseta a senha do usuario no banco de dados
  *
  * 
  * */
 public function resetarSenha()
 {
     try {
         $verificacao = $this->User->verificaHash($_GET['param']);
         if (isset($_GET['param']) && $verificacao[0]['count'] > 0) {
             if (isset($_POST['senha']) && isset($_POST['confSenha'])) {
                 if ($_POST['senha'] === $_POST['confSenha']) {
                     $this->User->alterarSenha(Authentication::password($_POST['senha']), $_GET['param']);
                     header('Location: ' . Router::url('Pages/login'));
                 } else {
                     $this->set('mensagem', 'As senhas não conferem!');
                 }
             }
         } else {
             header('Location: ' . Router::url('Pages/login'));
         }
         $this->render();
     } catch (Exception $ex) {
         throw $ex;
     }
 }
Esempio n. 6
0
 function login($login, $password, $email)
 {
     self::$login = $login;
     self::$password = $password;
     self::$email = $email;
     self::prepareRegData();
     $query = "SELECT `Password`, `Salt`, `Login`, `User_ID` FROM `users` WHERE `Login`= '{$login}'  and `Activation` = 1 and `Deleted` = 0;";
     $result = self::$mysqli->query($query) or die(self::$mysqli->error);
     $row = $result->fetch_array(MYSQLI_ASSOC);
     $_USER = $row;
     $password_db = $row['Password'];
     $salt_db = $row['Salt'];
     $login_db = $row['Login'];
     $hash = crypt(self::$password, $salt_db);
     $user_id = $row['User_ID'];
     if ($hash == $password_db && ($login = $login_db)) {
         $_SESSION = array_merge($_SESSION, $_USER);
         //Добавляем массив с пользователем к массиву сессии
         $query = "UPDATE `users` SET `SID`='" . SID . "' WHERE `User_ID`='{$user_id}';";
         //примерный запрос для ддълогирования действия аутентификации $query = "INSERT INTO `users_sessions`
         // (`SID`, `UID`, `IP`, `BROWSER`, `Action_ID`, `Date_of_start` ,`Date_of_end`) VALUES
         // ('$sid' , '$uid' ,'$ip', '$browser', 1 , Now() , Now());"; // Action_ID =1 (registration)
         self::$mysqli->query($query) or die(self::$mysqli->error);
         return true;
     } else {
         return false;
     }
 }
Esempio n. 7
0
 public function __construct(HttpTranslator $translator, EventDispatcherInterface $dispatcher, Server $server, Authentication $authentication, int $timeout = 60)
 {
     $this->translator = $translator;
     $this->dispatcher = $dispatcher;
     $this->http = new Client(['base_uri' => (string) $server, 'timeout' => $timeout, 'headers' => ['Authorization' => base64_encode(sprintf('%s:%s', $authentication->user(), $authentication->password()))]]);
 }