Vi que alguns estão com dificuldades para utilizar a busca automática de CEP nas novas versões do opencart.
Vou disponibilizar o novo código, qualquer dúvida, perguntem.
No controller (\catalog\controller\account\register.php) inclua no final da classe o método: "cepautomatico":
Código: Selecionar todos
Na view (\catalog\view\theme\(seu tema)\template\account\register.tpl) coloque o JavaScript referente à requisição do Webservice:// Início - WebService - Cep Automático
public function cepautomatico(){
if (isset($this->request->get['cep'])){
$output = @file_get_contents('http://republicavirtual.com.br/web_cep.php?cep='.urlencode($this->request->get['cep']).'&formato=xml');
$this->response->setOutput($output, $this->config->get('config_compression'));
}
}
// Fim - WebService - Cep automáticoOU
Na view (\catalog\view\theme\default\template\account\register.tpl) coloque o JavaScript referente à requisição do Webservice:
Código: Selecionar todos
Espero ter ajudado.$('input[name="postcode"]').blur(function(){
var cep = $.trim($('input[name="postcode"]').val().replace('-', ''));
$.get('index.php?route=account/register/cepautomatico',{cep: cep},function(xml){
var uf = $(xml).find("uf").text();
var bairro = $(xml).find("bairro").text();
var cidade = $(xml).find("cidade").text();
var endereco = $(xml).find("tipo_logradouro").text()+' '+$(xml).find("logradouro").text();
var res = $(xml).find("resultado").text();
if(res){
$('input[name="address_1"]').val(endereco); // preenche o campo endereço 1 com o endereço
$('input[name="city"]').val(cidade); // preenche o campo cidade
$('input[name="address_2"]').val(bairro); // preenche o campo emdereço 2 com o bairro
}
});
}); Abraços.





