Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte geral sobre problemas técnicos para OpenCart v2.x.
#74673
Olá.

Estou trabalhando num modulo de pagamentos, e ele esta indo bem, exceto quando as verificações acham alguma incoerencia que eu preciso manter o usuario na pagina do checkout e corrigir os problemas .

Por exemplo, se o usuario digitou um digito a menos no numero do cartao de credito, a verificaçao deve retornar o erro apontando o campo, e liberando a pagina pra voltar a ficar digitavel(e clicavel), no entando eu nao consigo tirar a mascara cinza de cima da pagina.

Um resumo do meu codigo:
Código: Selecionar todos
public function send() {
		$this->load->model('checkout/order');
...blablabla
		$json = array();
if (*tudo certo*) { //se deu tudo certo ele faz tudo direitinho e encaminha pra parte do sucesso
			$message = 'ooorray';
			$json['redirect'] = $this->url->link('checkout/success', '', true);
		} else {
			$json['error'] = "erro";
		}
$this->response->addHeader('Content-Type: application/json');
$this->response->setOutput(json_encode($json));
}
Se todas as verificaçoes sao ok, ele redireciona direito pra pagina "success". Se algo da errado, ele da um "alert" com a mensagem "erro", mas aquela mascara que deixa a pagina inoperante nao sai... como faço pra "destravar" a pagina?

PS: opencart 2.3.0.2, tema journal2.

Obrigado
#74685
A validação você faz é no seu módulo de pagamento e não no checkout, em poucas palavras, o arquivo tpl.tpl se comunica com o controller.php que se comunica com model.php; O problema esta na forma que esta tratando e tentando desenvolver o módulo, da uma olhada nesse tópico que irá auxiliar viewtopic.php?f=55&t=16128
#74690
Valeu...
Sim sim, tudo que eu to fazendo é no modulo que estou criando de pagamentos, mas essa parte especifica fica na hora do checkout, de fechar o pedido, o tpl do meu modulo é carregado nessa etapa final :D.

Mas eu consegui, e era realmente algo muito bobo.
Resumindo o que fiz foi colocar um
Código: Selecionar todos
triggerLoadingOff();
depois de alertar o erro, que eu simplesmente tinha esquecido no TPL e por isso ele nao estava "destravando" a pagina depois de informar o erro.

Obrigado!