Example #1
0
function getLastUri($default = 'home')
{
    $ci =& get_instance();
    $last_uri = $ci->session->userdata('last_uri');
    $segment = $last_uri ? $last_uri : $default;
    setLastUri('');
    return $segment;
}
Example #2
0
 function index($produto = 0)
 {
     session_start();
     if ($_SESSION['posted']) {
         redirect('home');
     }
     $_SESSION['posted'] = 1;
     if (!$this->auth->logged()) {
         setLastUri($this->uri->segment(1));
         $this->session->set_userdata(array('produto' => $produto));
         redirect('inicio');
         die;
     }
     $produto = $produto ? $produto : $this->session->userdata('produto');
     // Isso mesmo, o pedido entra bloqueado até que haja uma confirmação de pagamento!
     $dados = array('id_produto' => $produto, 'id_usuario' => $this->user->getUserIdByEmail($this->auth->userMail()), 'pedido_em' => date('Y-m-d H:i:s'), 'status' => 'Bloqueado');
     $pedido = $this->product->geraPedido($dados);
     if ($pedido) {
         $dadosUser = $this->user->getUserDataByEmail($this->auth->userMail());
         $dadosProd = $this->product->getProductById($produto);
         $form_pgs = $this->save(array('nome' => $dadosProd['nome'], 'pedido' => $pedido, 'preco' => $dadosProd['preco'], 'produto' => $produto));
         $dados = array('form_pgs' => $form_pgs[1]);
         $this->product->updatePedido(array('id_pedido' => $pedido), $dados);
         $content = array('user_nome' => $dadosUser['nome'], 'prod_nome' => $dadosProd['nome'], 'prod_preco' => 'R$' . $dadosProd['preco'] . ',00', 'prod_descricao' => $dadosProd['descricao'], 'admin_nome' => $this->config->item('admin_name'), 'admin_email' => $this->config->item('admin_email'), 'url' => base_url() . 'downloads');
         $msgUser = loadTemplate(TEMPLATEPATH . 'views/template_compra.html', $content);
         $content = array('codigo' => $pedido, 'user_nome' => $dadosUser['nome'], 'prod_nome' => $dadosProd['nome'], 'prod_preco' => 'R$' . $dadosProd['preco'] . ',00', 'prod_descricao' => $dadosProd['descricao']);
         $msgEdownloads = loadTemplate(TEMPLATEPATH . 'views/template_pedido.html', $content);
         mandaEmail($this->config->item('admin_email'), $this->auth->userMail(), 'Pedido de download', $msgUser, $this->config->item('admin_nome'));
         mandaEmail($this->config->item('admin_email'), $this->config->item('admin_email'), 'Olá! tem um pedido pra você!', $msgEdownloads, $this->config->item('admin_nome'));
         // seleciona o pagamento pelo n° do pedido
         $pagamento = $this->product->getPedidoById($pedido);
         // se não tiver pagamento, vai para a home
         if (!count($pagamento)) {
             redirect('home');
             die;
         }
         // caso contrário, chama o template de pagamento
         $data = array('logged' => $this->auth->logged(), 'page_title' => 'Pagamento', 'titulo' => 'Efetuar compra', 'description' => 'Efetuar compra', 'form_pgs' => $form_pgs[1]);
         $this->load->view('pagamento', $data);
     }
 }