/**
  * Verifica o login do cliente no sistema
  */
 public function login()
 {
     /**
      * Cria a sessão para a navegação segura do cliente,
      * incluindo a sessão atual de 'visitante'
      */
     $cliente = new Cliente();
     $cliente->setEmail($_REQUEST['email']);
     $cliente->setSenha($_REQUEST['senha']);
     $this->modelo('ClienteDAO');
     $objCliente = $this->ClienteDAO->login($cliente);
     $_SESSION['cliente'] = serialize($objCliente);
     if (isset($_REQUEST['finalizar_compra'])) {
         $carrinho = new Carrinho();
         $carrinho->setSession($_SESSION['visitante']);
         /**
          * Carrega os dados do modelo
          */
         $this->modelo('CarrinhoDAO');
         $objCarrinho = array();
         $objCarrinho = $this->CarrinhoDAO->show($carrinho);
         $this->visao->bind('objCarrinho', $objCarrinho);
         $this->visao->render('finalizar_compra/index');
     } else {
         $this->visao->render('pedido/index');
     }
 }
 public function fecharCompra()
 {
     /**
      * Grava o pedido
      */
     $this->modelo('PedidoDAO');
     $pedido = new Pedido();
     $pedido->setIdcliente($_REQUEST['id_cliente']);
     $pedido->setDataPedido(date('Y-m-d'));
     $idPedido = $this->PedidoDAO->novo($pedido);
     /**
      * Grava os produtos pedidos
      */
     $this->modelo('ProdutosPedidosDAO');
     foreach ($_SESSION['produtos_compra'] as $valor) {
         $p = new ProdutosPedidos();
         $p->setIdPedido($idPedido);
         $p->setIdProduto($valor['id_produto']);
         $p->setQuantidade($valor['qtd_produto']);
         $p->setValorUnitario($valor['valor']);
         $objProdutos = $this->ProdutosPedidosDAO->novo($p);
     }
     /**
      * Grava a venda
      */
     $total_venda = $_SESSION['frete'] + $_SESSION['produtos_total'];
     $this->modelo('VendaDAO');
     $venda = new Venda();
     $venda->setIdPedido($idPedido);
     $venda->setIdEnderecoEnvio(4);
     $venda->setValor($total_venda);
     $venda->setPago(0);
     $venda->setIdFormaPagamento(1);
     $venda->setEnviado(0);
     $venda->setIdFormaEnvio(1);
     $objVenda = $this->VendaDAO->fechaVenda($venda);
     /**
      * Remove os itens do carrinho
      */
     $this->modelo('CarrinhoDAO');
     $carrinho = new Carrinho();
     $carrinho->setSession($_SESSION['visitante']);
     $objCarrinho = $this->CarrinhoDAO->limpaVenda($carrinho);
     /**
      * Limpa as sessões
      */
     $_SESSION['frete'] = null;
     unset($_SESSION['frete']);
     $_SESSION['produtos_total'] = null;
     unset($_SESSION['produtos_total']);
     /**
      * Redireciona para a página de pedidos realizados do cliente
      */
     $this->visao->render('cliente/index');
 }
 /**
  * Remove um intem selecionado no carrinho
  */
 public function remover()
 {
     $carrinho = new Carrinho();
     $carrinho->setIdCarrinho($_REQUEST['remover']);
     $carrinho->setSession($_SESSION['visitante']);
     /**
      * Realiza a exclusão
      */
     $this->modelo('CarrinhoDAO');
     $objCarrinho = $this->CarrinhoDAO->excluir($carrinho);
     /**
      * Executa o método que atualiza o carrinho
      */
     $this->show();
 }