Página 1 de 1
Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 19 Nov 2011, 17:01
por Ibraim
Olá Amigos
Hoje eu percebi que quando a compra é finalizada com o PagSeguro, ele abre uma nova janela para o cliente efetuar o pagamento, e ele também é direcionado para o checkout/success da loja. Nessa tela, o carrinho esta vazio, pois o cliente acabou de finalizar a compra, porém, caso ele feche essa tela, e venha realizar uma outra compra em outro dia, ao fazer o login no processo de finalização do pedido, o carrinho resgata o pedido anterior. A questão é, alguém saberia informar como conseguir fazer com que o carrinho seja realmente esvaziado quando o cliente optar por pagar com o PagSeguro? Não sei se ajuda, mas uma dica é que quando o cliente clica em continuar na tela de checkout/success, o carrinho é realmente esvaziado, porém, nem todos clientes, vão clicar nesse botão.
Re: Como esvaziar o carrinho com o PagSeguro
Enviado: 27 Dez 2011, 12:43
por Ibraim
Olá Amigos
Uma forma de resolver o problema, é após o cliente comprar o produto, na Administração da loja, em: vendas/clientes/clientes, no campo entrar na loja, selecione "Padrão" que ele entra com o login da pessoa, ai é só esvaziar o carrinho para não ter problemas futuros. Abraços.
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 27 Dez 2011, 13:21
por Renato Frota
Ibraim, qual versão você usa?
Analisando o catalog/controller/checkout/success.php da versão 1.5.1.3, constatei que o carrinho é esvaziado assim que essa tela é carregada, sem que o usuário precise clicar em Continuar.
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 27 Dez 2011, 14:43
por Ibraim
Renato Frota escreveu:Ibraim, qual versão você usa?
Analisando o catalog/controller/checkout/success.php da versão 1.5.1.3, constatei que o carrinho é esvaziado assim que essa tela é carregada, sem que o usuário precise clicar em Continuar.
Então Renato, estou utilizando a versão 1.5.1.3, mas não sei porque quando finaliza a compra com o Pagseguro ele não esvazia o carrinho, diferente do pagamento digital.
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 27 Dez 2011, 15:05
por Renato Frota
Uma coisa que me deixou curioso é que você disse que está logando como cliente e esvaziando o carrinho "para ele". Entendi errado?
Eu ajudo bastante aqui na comunidade, mas não tenho uma experiência longa de uso com o OC, eu sei um pouco apenas por análise de código e, no que eu vi até agora, o carrinho fica salvo localmente, em sessão ou cookies. Como você pode esvaziar o carrinho para um cliente? Quando você loga com a conta dele, você realmente consegue ver os itens do carrinho dele? Nesse caso, o carrinho de clientes registrados fica em banco de dados. Que sagaz!!! Nem imaginei que o OC fizesse isso, rsrs.
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 27 Dez 2011, 15:47
por Ibraim
Exatamente Renato, na Administração da loja, em: vendas/clientes/clientes, no campo entrar na loja, selecione "Padrão", dá para visualizar o que está no carrinho da pessoa.
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 11 Dez 2012, 10:10
por Psydrak
Bom dia pessoal, estava vendo esse post e como tive o mesmo problema onde o open cart recupera o carrinho salvo do cliente quando o mesmo faz o login estou postando como resolvi.
Na library customer dentro da pasta system devemos comentar o seguinte bloco de codigo :
if ($customer_query->row['cart'] && is_string($customer_query->row['cart'])) {
$cart = unserialize($customer_query->row['cart']);
foreach ($cart as $key => $value) {
if (!array_key_exists($key, $this->session->data['cart'])) {
$this->session->data['cart'][$key] = $value;
} else {
$this->session->data['cart'][$key] += $value;
}
}
}
Esse codigo esta dentro da funcao login() e é ele que recupera o carrinho de compras. Caso desejem desabilitar fica a dica.
Abs
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 03 Jun 2013, 16:19
por Dimmes
Ótima dica... Esta funcionalidade de esvaziar o carrinho sempre que o Cliente fazer logout deveria ser padrão no oc. Isto porque se o Cliente faz uma seleção de produtos e não efetiva a compra e um tempo longo depois ele faz uma compra sem fazer o login antes, quando aparecer o carrinho virá com os itens atuais + os anteriores. Além de dar a ideia para o Cliente de que a loja pode estar com algum problema de funcionamento, se ele percebe que são produtos deixados no carrinho anteriormente, muitas vezes os produtos que ficaram no carrinho pode não existir mais ou ter sofrido alguma alteração e ele pensar que estes produtos estão reservados desde então.
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 21 Jul 2013, 19:26
por 8051br
Perfeito!!
Testei aqui e funcionou
Valeu amigo, muito obrigado pela dica
Re: Como esvaziar o carrinho com o PagSeguro (Resolvido)
Enviado: 25 Jul 2013, 10:54
por CodeMarket
Obrigado pela dica

, realmente atrapalha mesmo, poderia ser sugerido os produtos abandonados, mas não deixados no carrinho.