public function updateAction($id)
 {
     $model = Usuarios::findFirst($id);
     $this->view->form = new UsuarioForm($model, array('edit' => true));
     $this->view->dados = $model;
     if ($this->request->isPost()) {
         $this->save($model);
     }
 }
 public function createAction()
 {
     $user = Usuarios::findFirst("email = '{$this->request->getPost('email')}' and  nivel_id <> 3 ");
     if ($user) {
         if ($this->security->checkHash($this->request->getPost('password'), $user->senha)) {
             $this->session->set("admin_logado", true);
             $this->session->set("admin_id", $user->id);
             $this->session->set("admin_email", $user->email);
             $this->session->set("admin_nome", $user->nome);
             $this->session->set("admin_nivel", $user->nivel_id);
             $this->dispatcher->forward(array('controller' => 'index', 'action' => 'index'));
         } else {
             $this->flashSession->error('Senha inválida');
             $this->dispatcher->forward(array('action' => 'index'));
         }
     } else {
         $this->flashSession->error('Usuário não existe em nossos registros');
         $this->dispatcher->forward(array('action' => 'index'));
     }
 }
Exemplo n.º 3
0
 private static function setDados($post)
 {
     $base = new BaseHelper();
     $pedido = Pedidos::findFirst("id = " . $post['pedido_id'] . "");
     $endereco = Enderecos::findFirst("relacao = 'pedidos' and id_relacao = " . $post['pedido_id']);
     $usuario = Usuarios::findFirst('id = ' . $pedido->usuario_id);
     $cliente = Clientes::findFirst('usuario_id =' . $pedido->usuario_id);
     $fone = explode(')', $cliente->telefone);
     $dados['email'] = self::$email;
     $dados['token'] = self::$token;
     $dados['paymentMode'] = 'default';
     $dados['receiverEmail'] = self::$email;
     $dados['currency'] = self::$currency;
     $dados['reference'] = $post['pedido_id'];
     $dados['notificationURL'] = $base->url_base . 'checkout/notificacao/pagseguro';
     //Itens
     $itens = PedidoItens::find("pedido_id = " . $post['pedido_id']);
     foreach ($itens as $key => $value) {
         $indice = $key + 1;
         $dados["itemId{$indice}"] = $value->produto_id;
         $dados["itemDescription{$indice}"] = Produtos::findById($value->produto_id)->nome;
         if ($post['paymentMethod'] == 'ONLINE_DEBIT' || $post['paymentMethod'] == 'BOLETO') {
             $dados["itemAmount{$indice}"] = $base->setDesconto($value->valor, 10);
         } else {
             $dados["itemAmount{$indice}"] = $value->valor;
         }
         $dados["itemQuantity{$indice}"] = $value->quantidade;
     }
     // Informações do pagamento
     if ($post['creditCardToken'] != '') {
         $dados['paymentMethod'] = 'creditCard';
         $dados['creditCardToken'] = $post['creditCardToken'];
         $dados['installmentQuantity'] = $post['parcelas'];
         $dados['installmentValue'] = number_format($post['installmentValue'], 2, '.', '');
         $dados['creditCardHolderName'] = $post['nome_titular'];
         $dados['creditCardHolderBirthDate'] = $post['data_nascimento'];
         $dados['creditCardHolderCPF'] = $base->limpaString($post['cpf']);
         $dados['creditCardHolderAreaCode'] = str_replace('(', '', $fone[0]);
         $dados['creditCardHolderPhone'] = str_replace('-', '', $fone[1]);
         $dados['billingAddressPostalCode'] = str_replace('-', '', $endereco->cep);
         $dados['billingAddressStreet'] = $endereco->logradouro;
         $dados['billingAddressNumber'] = $endereco->numero;
         $dados['billingAddressComplement'] = $endereco->complemento;
         $dados['billingAddressDistrict'] = $endereco->bairro;
         $dados['billingAddressCity'] = $endereco->Cidade->nome;
         $dados['billingAddressState'] = $endereco->Estado->sigla;
         $dados['billingAddressCountry'] = 'BRA';
     } else {
         if ($post['paymentMethod'] == 'ONLINE_DEBIT') {
             $dados['paymentMethod'] = 'eft';
             $dados['bankName'] = $post['bankName'] == 'BANCO_BRASIL' ? 'bancodobrasil' : strtolower($post['bankName']);
         } else {
             $dados['paymentMethod'] = 'boleto';
         }
     }
     //Hash
     $dados['senderHash'] = $post['hash'];
     //Dados do Comprador
     $dados['extraAmount'] = $pedido->frete;
     $dados['senderEmail'] = self::$producao ? $usuario->email : '*****@*****.**';
     $dados['senderName'] = $usuario->nome;
     if ($cliente->pessoa_juridica) {
         $dados['senderCNPJ'] = $cliente->documento;
     } else {
         $dados['senderCPF'] = $cliente->documento;
     }
     $dados['senderAreaCode'] = str_replace('(', '', $fone[0]);
     $dados['senderPhone'] = str_replace('-', '', $fone[1]);
     // Dados de endereco
     $dados['shippingAddressStreet'] = $endereco->logradouro;
     $dados['shippingAddressNumber'] = $endereco->numero;
     $dados['shippingAddressComplement'] = $endereco->complemento;
     $dados['shippingAddressDistrict'] = $endereco->bairro;
     $dados['shippingAddressPostalCode'] = str_replace('-', '', $endereco->cep);
     $dados['shippingAddressCity'] = $endereco->Cidade->nome;
     $dados['shippingAddressState'] = $endereco->Estado->sigla;
     $dados['shippingAddressCountry'] = 'BRA';
     return $dados;
 }
 public function recuperaAction()
 {
     $base = new BaseHelper();
     $documento = $base->limpaString($this->request->getPost('documento'));
     $senha = $base->geraSenha(6);
     if ($this->request->isPost()) {
         $this->view->disable();
         $cliente = Clientes::findFirst('documento = "' . $documento . '"');
         if (!empty($cliente)) {
             $array = array('email' => $cliente->Usuario->email, 'assunto' => 'Reucuperação senha ' . $this->ecommerce_options->titulo, 'conteudo' => '<h2>Olá <strong>' . $cliente->Usuario->nome . '</strong></h2><br/> Sua nova senha é <strong>' . $senha . '</strong> acesse aréa restrita no link abaixo. <br/><br/> <a href="' . $this->ecommerce_options->url_base . 'user/login">Minha Conta</a>');
             $usuario = Usuarios::findFirst('id =' . $cliente->usuario_id);
             $usuario->senha = $this->security->hash($senha);
             if ($usuario->save()) {
                 $email = new Mailer($this->ecommerce_options, $array);
                 $email->send();
                 $this->response->setContent(json_encode(array('status' => true, 'mensagem' => 'Você receberá um e-mail com as instruções da recuperação da senha')));
             } else {
                 $this->response->setContent(json_encode(array('status' => false, 'mensagem' => 'Não foi possivel alterar a senha')));
             }
         } else {
             $this->response->setContent(json_encode(array('status' => false, 'mensagem' => 'Não encontramos nenhum usuário com CPF informado')));
         }
         return $this->response;
     }
 }