Página 1 de 1

OneCheckout - retorno da compra finalizada

Enviado: 26 Set 2012, 09:29
por jefbernardino
Bom dia amigos, esstou tendo um problema um tanto quanto chato com o OneCheckout, que adquirimos aqui.

Após a finalização junto ao pagamentodigital, ele me devolve este erro:
Código: Selecionar todos
Warning: sprintf() [function.sprintf]: Too few arguments in /home/httpd/vhosts/(...)/catalog/controller/onecheckout/success.php on line 58
a linha em questão é:
Código: Selecionar todos
$this->data['text_message'] = sprintf($this->language->get('text_customer'), $this->url->link('account/account', '', 'SSL'), $this->url->link('account/order', '', 'SSL'), $this->url->link('account/download', '', 'SSL'), $this->url->link('information/contact'));
Tentei adicionar os textos como os do carrinho no arquivo do onecheckout, por exemplo...
Código: Selecionar todos
$_['text_customer']          = '<p>O pedido <a href="%s">#%s</a> foi cadastrado com sucesso!</p><p>Caso tenha criado uma conta você pode ver o histórico dos seus pedidos acessando <a href="%s">sua conta</a> e clicando em <a href="%s">Histórico de Pedidos</a>.</p><p>Se seu pedido está associado a downloads, acesse os <a href="%s">Meus Downloads</a> para vê-los.</p><p>Por favor, entre em contato conosco caso tenha dúvidas clicando <a href="%s">aqui</a>.</p><p>Obrigado por comprar em nossa loja!</p><br />';

mas sem sucesso no que diz sentido ao retorno: a compra é finalizada com sucesso, mas não são exibidos os textos referente ao sucesso da compra, como o do carrinho comum.

Alguém poderia me auxiliar em como resolver esse problema?

Tenham um bom dia.

Re: OneCheckout - retorno da compra finalizada

Enviado: 26 Set 2012, 10:56
por jefbernardino
Opa, aparentemente consegui uma solução.

Copiei esse trecho do código do controller/checkout/sucess.php
if ($this->customer->isLogged()) {
$this->data['text_message'] = sprintf($this->language->get('text_customer'), $this->url->link('account/order/info&order_id=' . $this->session->data['last_order_id'], '', 'SSL'), $this->session->data['last_order_id'], $this->url->link('account/account', '', 'SSL'), $this->url->link('account/order', '', 'SSL'), $this->url->link('account/download', '', 'SSL'), $this->url->link('information/contact'));
} else {
$this->data['text_message'] = sprintf($this->language->get('text_guest'), $this->session->data['last_order_id'], $this->url->link('information/contact'));
}
e colei no do onecheckout/sucess.php

A mensagem apareceu corretamente.
O único problema foi não retornar o id da compra, o que resultou no erro desde o começo. Bem estranho.