Exemple #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 edit()
 {
     $idReserva = NULL;
     $_POST[$this->Reserva->name]['id'] = $_SESSION['Form']['reservas_id'];
     /**
      * recupero o id do meu cliente
      */
     $cliente = $this->Cliente->find('first', array('md5(id)' => $_POST[$this->Reserva->name]['clientes_id']));
     $_POST[$this->Reserva->name]['clientes_id'] = $cliente[0]['Cliente']['id'];
     $_POST[$this->Reserva->name]['title'] = $cliente[0]['Cliente']['nome'];
     $_POST[$this->Reserva->name]['status'] = 1;
     $_POST[$this->Reserva->name]['token'] = Authentication::uuid();
     /**
      * trabalho com as datas para ficar no padrão do fullcalendar 
      */
     $dataCallendar = Utils::convertDataSemHora(trim($_POST[$this->Reserva->name]['data'])) . ' ' . $_POST[$this->Reserva->name]['hora'];
     $_POST[$this->Reserva->name]['start'] = $dataCallendar;
     $_POST[$this->Reserva->name]['end'] = Utils::adicionaHora(1, $dataCallendar);
     /**
      * retiro as mesas do node central
      */
     $mesas = $_POST[$this->Reserva->name]['mesas_id'];
     unset($_POST[$this->Reserva->name]['mesas_id']);
     /**
      * retiro os ambientes
      */
     $ambientes = $_POST[$this->Reserva->name]['ambientes_id'];
     unset($_POST[$this->Reserva->name]['ambientes_id']);
     $_POST[$this->Reserva->name]['empresas_id'] = $this->empresas_id;
     $_POST[$this->Reserva->name]['pessoas_id'] = $this->pessoas_id;
     //unset($_POST['Reserva']);
     $this->Reserva->data = $_POST[$this->Reserva->name];
     unset($_POST[$this->Reserva->name]['data']);
     unset($_POST[$this->Reserva->name]['hora']);
     //Utils::pre($_POST); exit;
     try {
         /**
          * validacoes do formulario
          */
         if ($this->Reserva->validates()) {
             $modelMesa = new Mesa();
             $modelMesa->mesasAmbientesVerify($_POST[$this->Reserva->name]['id'], $_POST[$this->Reserva->name]['start'], $mesas);
             $this->Reserva->genericUpdate($_POST[$this->Reserva->name]);
             $idReserva = $_SESSION['Form']['reservas_id'];
             unset($_SESSION['Form']['reservas_id']);
             /**
              * gravar mesas
              * a regra na edição é deletar todas a mesas da reserva e depois inserir novamente
              */
             $this->Reserva->deletaMesas($idReserva);
             $this->Reserva->mesasReservas($mesas, $idReserva, $_POST[$this->Reserva->name]['start']);
             $this->Reserva->deletaAmbientes($idReserva);
             $this->Reserva->AmbientesReservas($ambientes, $idReserva);
             echo json_encode(array('funcao' => "sucessoForm( 'Sua alteração efetuada com sucesso!', '#ReservaAddForm' ); " . "filtrarReservas( '' , '{$_POST[$this->Reserva->name]['start']}', '' ); " . "disponibilidadeDeMesas( '{$_POST[$this->Reserva->name]['start']}' );" . "\$('#ModalFormulario').modal('hide');" . "\$('#loading').fadeOut(500);"));
         } else {
             echo json_encode(array('erros' => $this->Reserva->validateErros, 'form' => 'ReservaAddForm'));
         }
     } catch (SystemException $ex) {
         echo $ex->getErrorJson('#ReservaAddForm');
     } catch (Exception $e) {
         $json = json_encode(array('message' => $e->getMessage(), "style" => 'warning', 'time' => 5000, 'size' => 'md', 'callback' => NULL, 'before' => "\$('#loading').fadeOut(200);", 'icon' => 'check', 'title' => 'Atenção leia as instruções!'));
         echo json_encode(array('funcao' => "bootsAlert( {$json} );"));
     }
 }
 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 cadastroEstabelecimento()
 {
     try {
         $_POST = Utils::sanitazeArray($_POST);
         $created = date('Y-m-d h:i:s');
         $token = Authentication::uuid();
         $empresaId = 0;
         $contaEmpresa = 0;
         $pessoaJuridica_id = 0;
         $this->Empresa->data = array_merge($this->Empresa->data, $_POST['Empresa']);
         $this->Empresa->data = array_merge($this->Empresa->data, $_POST['Endereco']);
         $this->Empresa->validate = $this->Empresa->validate_site;
         if ($this->Empresa->validates()) {
             $pessoaJuridica_id = $this->Juridica->genericInsert(array('pessoas_id' => $_SESSION['Pessoa']['pessoas_id'], 'cnpj' => str_pad('00', 14, '0', STR_PAD_RIGHT), 'razao' => $_POST[$this->Empresa->name]['nome_fantasia'], 'nome_fantasia' => $_POST[$this->Empresa->name]['nome_fantasia']));
             /**
              * Criar uma empresa
              */
             $empresaId = $this->Empresa->genericInsert(array('pessoas_id' => $_SESSION['Pessoa']['pessoas_id'], 'pessoaJuridica_id' => $pessoaJuridica_id, 'situacao_empresas_id' => 1, 'created' => $created));
             /**
              * criar uma conta para empresa
              */
             $contaEmpresa = $this->ContaEmpresa->inserirContaEmpresa($empresaId, $_SESSION['Produto']['id']);
             /**
              * criar um endereco para a empresa
              */
             $this->Endereco->inserirEnderecosEmpresa($empresaId, $_POST['Endereco']);
             /**
              * inserir telefone empresa
              */
             $contatoId = $this->Contato->genericInsert(array('telefone' => $_POST['Pessoa']['ddd'] . $_POST['Pessoa']['telefone'], 'tipo' => 1));
             $this->Contato->inserirContatoEmpresa($empresaId, $contatoId);
             $_SESSION['Empresa'] = $_POST['Empresa'];
             $_SESSION['Empresa']['pessoaJuridica_id'] = $pessoaJuridica_id;
             $_SESSION['Empresa']['empresas_id'] = $empresaId;
             $_SESSION['Endereco'] = $_POST['Endereco'];
             $url = Router::url(array('pages', 'primeiras-configuracoes'));
             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->Empresa->refactoryError()}' , '#CadastroFrom'); hideLoaderForm('#CadastroFrom');"));
         }
     } catch (Exception $ex) {
         echo json_encode($ex->getMessage());
     }
 }
 /**
  * @todo metodo que persiste os dados no banco e envia as imagens
  */
 public function edit()
 {
     try {
         $token = Authentication::uuid();
         $_POST['Evento']['token'] = $token;
         $_POST['Evento']['empresas_id'] = $this->empresas_id;
         $_POST['Evento']['pessoas_id'] = $this->pessoas_id;
         $_POST['Evento']['data'] = Utils::convertDataSemHora(trim($_POST['Evento']['data']));
         $_POST['Evento']['id'] = Session::read('Form.eventos_id');
         $this->Evento->data = $_POST['Evento'];
         if ($this->Evento->validates()) {
             /**
              * Envio o banner para o servidor
              */
             $this->Evento->uploadBanner($_FILES, $this->Evento->data);
             if ($this->Evento->genericUpdate($this->Evento->data)) {
                 $url = Router::url('Eventos', 'index');
                 $json = json_encode(array('message' => 'Cadastro realizado com sucesso', "style" => 'success', 'time' => 5000, 'size' => 'md', 'callback' => "\$('#ModalFormulario').modal('hide');redirect('{$url}');", 'before' => "\$('#loading').fadeOut(500);", 'icon' => 'check', 'title' => 'Success!'));
             } else {
                 $json = json_encode(array('message' => 'Não foi possivel realizar o cadastro', "style" => 'warning', 'time' => 5000, 'size' => 'md', 'callback' => NULL, 'before' => "\$('#loading').fadeOut(500);", 'icon' => 'check', 'title' => 'Warning!'));
             }
         } else {
             $json = json_encode(array('message' => $this->Evento->refactoryError(), "style" => 'warning', 'time' => 5000, 'size' => 'md', 'callback' => NULL, 'before' => "\$('#loading').fadeOut(500);", 'icon' => 'check', 'title' => 'Warning!'));
         }
         echo json_encode(array('funcao' => "bootsAlert( {$json} )"));
     } catch (Exception $ex) {
         $json = json_encode(array('message' => $ex->getMessage(), "style" => 'danger', 'time' => 5000, 'size' => 'md', 'callback' => NULL, 'before' => "\$('#loading').fadeOut(500);", 'icon' => 'check', 'title' => 'Danger!'));
         echo json_encode(array('funcao' => "bootsAlert( {$json} )"));
     }
 }
 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 realiza a recuperação de senha do usuario no banco de dados
  *
  * 
  * */
 public function recuperaSenha()
 {
     try {
         if (isset($_POST['email'])) {
             if (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
                 $hash = Authentication::uuid();
                 if ($this->User->alteraHashSenha($_POST['email'], $hash)) {
                     $email = new Email();
                     $email->useTable = 'emails_sistema';
                     $registro = $email->find('first', array('tag' => 'recuperar_senha'));
                     #faço a troca de siglas para personalizar o email
                     $array = array('__EMAIL_REMETENTE__' => $_POST['email'], '__DATE__' => date('d/m/Y h:i:s'), '__URL__' => Router::url(array('Usuarios', 'resetarSenha', $hash)));
                     #envio o email de confirmação para o meu cliente cadastrado
                     $objeto = new MailPHPMailer();
                     $objeto->setAssunto('Reserva - Recuperar Senha!');
                     $objeto->setRemetente();
                     $objeto->setDestinatario($_POST['email'], 'Recuperar Senha');
                     $objeto->setBody(str_replace(array_keys($array), array_values($array), $registro[0]['Email']['corpo_mail']));
                     $objeto->sendMail();
                     $this->set('mensagem', 'Para alterar a senha clique no link enviado ao seu email');
                 } else {
                     $this->set('mensagem', 'Ocorreu algum erro no processo, tente novamente.');
                 }
             } else {
                 $this->set('mensagem', 'Email inválido');
             }
         }
         $this->set('title_layout', 'Esqueci minha senha');
         $this->render();
     } catch (Exception $ex) {
         echo $ex->getMessage();
     }
 }