Pessoal, estou com um módulo para cartão Visa para ser utilizado com a Locaweb.
Estou com um problema, depois de finalizar a compra, ele vai para o Redirect e então abre um pop up, mas ele é bloqueado pelo anti pop up.
Agora a Visa não quer homologar por causa disso.
O arquivo é esse:
<?php
class Campoy_Visanet_Block_Standard_Redirect extends Mage_Core_Block_Abstract { protected function _construct() { $this->setTemplate('visanet/standard/redirect.phtml'); parent::_construct(); }
protected function _toHtml() { $html = '<html>'; $html .= '<head>'; $html .= '<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />'; $html .= $this->getScriptCode(); $html .= '</head>'; $html .= '<body>'; $html .= '<p align="center">' . $this->__('Você será redirecionado para a Visanet em alguns instantes. Se isso não acontecer, clique no botão abaixo.') . '</p>'; $html .= '<p align="center">' . $this->getFormCode() . '</p>'; $html .= '<script type="text/javascript">document.getElementById("visanet_standard_checkout").submit();</script>';
$html .= '</body></html>';
return $html; }
private function getFormCode() { $standard = Mage::getModel('visanet/standard'); $formFields = $standard->getStandardCheckoutFormFields();
Ao efetuarmos os testes em sua loja virtual, identificamos que o ambiente da Cielo foi bloqueado, pois não foi implantada a função “anti-bloqueador de pop-up” disponibilizada junto com a solução “Verified by Visa”, conforme script abaixo, isso é obrigatório para o processo de homologação.
<script language="JavaScript"> var retorno; var mpg_popup; window.name="loja"; function fabrewin(){ if(navigator.appName.indexOf("Netscape") != -1) { mpg_popup=window.open("","mpg_popup","toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=0,screenX=0,screenY=0,left=0,top=0,width=800,height=600"); } else { mpg_popup=window.open("","mpg_popup","toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=1,screenX=0,screenY=0,left=0,top=0,width=800,height=600"); } [removed]="redirecionaCBP.asp"; return true; } </script>
Chamar a função JS na submissão do form (exemplo HTML)
<input type=”button” value=”pagar com Visa” onclick=”[removed] fabrewin()” />
Nunca tive problemas como “anti-popup”, para homologar o visa estralho isso ser obrigatório agora.
A única coisa que observei no código foi isso, tente trocar onSubmit="[removed]fabrewin()" para onSubmit="return fabrewin();”
Carlos, nao sei se vc viu os arquivos, mas eh que no code daqui do forum ele remove a palavra javascript.
O removed ai é na verdade [removed]fabewwin
onSubmit="[removed]fabrewin() (assim que ta no arquivo)
Edit:
Nao funcionou nao.
Aqui a Visa nao quer liberar.
E o pior é que a pessoa que paguei pra fazer, fica enrolando e nao me ajuda nisso.
E pelo visto não sou o primeiro a ter problema com programador assim.
Você paga, quer funcionando da forma que a Visa quer.
Se vc nao faz como a Visa quer, nao faz ue.
Por mim ia com popup, mas a visa quer sem popup.
Entao tem que dar um jeito.
Problematico isso.
im, vi os arquivos, onde citei para alterar é no onSubmit do formulário da classe “Campoy_Visanet_Block_Standard_Redirect” onde tem aquele “javascript “ para “return fabrewin()”
Só não entendi uma coisa, à visa pediu para vc colocar a função anti-popup, ae vc colocou e eles mesmo assim não homologaram ou ainda esta com algum erro ?
im, vi os arquivos, onde citei para alterar é no onSubmit do formulário da classe “Campoy_Visanet_Block_Standard_Redirect” onde tem aquele “javascript “ para “return fabrewin()”
Só não entendi uma coisa, à visa pediu para vc colocar a função anti-popup, ae vc colocou e eles mesmo assim não homologaram ou ainda esta com algum erro ?
Entao, alterei para oq vc disse e ainda nao passa pelo popup.
Na verdade não foi eu quem fiz.
Estamos usando o gateway de pagamentos da locaweb.
A pessoa que fez, nao utiliza esse arquivo que a Visa enviou.
Eles disseram para colocar, mas eu ja pedi a pessoa que pagamos (e caro) pra alterar e ja tem quase 8 dias e nada.
Ainda continua dando o popup.
Ta super dificil assim.
Vcs tem alguma outra forma?
CajuCLC, se sabe qual o tipo do seu servidor, que dizer se ele é linux ou windows com apache??!! pois, até onde sei, para homologar direto com servidor da Visa/Master, precisa ter servidor windows.Mesmo pq esse arquivo asp não vai rodar nem a pau no apache!! Então seu desenvolvedor vai ter que “transferir” o que está no arquivo do asp para o php. Pelo menos até onde eu sei, é isto que vai ter que ocorrer.
CajuCLC, se sabe qual o tipo do seu servidor, que dizer se ele é linux ou windows com apache??!! pois, até onde sei, para homologar direto com servidor da Visa/Master, precisa ter servidor windows.Mesmo pq esse arquivo asp não vai rodar nem a pau no apache!! Então seu desenvolvedor vai ter que “transferir” o que está no arquivo do asp para o php. Pelo menos até onde eu sei, é isto que vai ter que ocorrer.
Meu servidor é Linux.
Eu sei que precisa ter windows, mas eh por isso que tem o gateway de pagamento da locaweb, que ja roda em windows.
O que falta é a pagina passar direto.
Por isso criei aqui este topico.
Ja tentei colocar o arquivo em php e mesmo assim nao vai.
Vc sabe como “burlar” o bloqueador de popup?
CajuCLC, faz assim, já que bloqueador pop up está bloqueando a janela que abre, pede para seu desenvolvedor optar por uma opção pouco conhecida entre os desenvolvedores, que é o shadowbox, é bem parecido com o Lightbox, a unica diferença que o shadowbox permite abrir popups, outras paginas de internet e etc, usando o efeito igual do light box, é bem interessante, vc pode ver varios exemplos neste site… http://www.shadowbox-js.com/
Ve se seu desenvolvedor é capaz de utilizar esta solução, não sei se a Visa vai autorizar, ve com eles tambem, pq eu soube que esse sistema de bloquear o bloqueador popup da Visa, está meio furado, tem mita gente reclamando!! Vê se esse javascript a Visa autoriza, se não, vamos partir criar uma solução contra os padrões internacionas, já que burlar o bloqueador é uma medida fora do padroes do WWC, mais faze o que, se temos que fazer isso, vamos fazer, tem coisas que acontecem só no Brasil. Lá fora o servidor pode ser linux, é foda. Mais tenta ai, qualquer coisa posta ai.
CajuCLC, faz assim, já que bloqueador pop up está bloqueando a janela que abre, pede para seu desenvolvedor optar por uma opção pouco conhecida entre os desenvolvedores, que é o shadowbox, é bem parecido com o Lightbox, a unica diferença que o shadowbox permite abrir popups, outras paginas de internet e etc, usando o efeito igual do light box, é bem interessante, vc pode ver varios exemplos neste site… http://www.shadowbox-js.com/
Ve se seu desenvolvedor é capaz de utilizar esta solução, não sei se a Visa vai autorizar, ve com eles tambem, pq eu soube que esse sistema de bloquear o bloqueador popup da Visa, está meio furado, tem mita gente reclamando!! Vê se esse javascript a Visa autoriza, se não, vamos partir criar uma solução contra os padrões internacionas, já que burlar o bloqueador é uma medida fora do padroes do WWC, mais faze o que, se temos que fazer isso, vamos fazer, tem coisas que acontecem só no Brasil. Lá fora o servidor pode ser linux, é foda. Mais tenta ai, qualquer coisa posta ai.
NOSSA! Que ferramenta ABSURDA de boa.
hehehehe
Eu ja mandei o email para a pessoa que fez o módulo, mas ele nao responde, fica dificil assim.
Pois como ja disse, tentei colocar o arquivo em asp (so mudei o final pra .php hehehe), mas mesmo assim nao passa pelo bloqueador.
Ainda procurando medidas alternativas para esse problema.
O mais engraçado que no módulo do amex, tenho a opção de abrir na mesma pagina, mas nao nessa do visa.
Eu na verdade queria isso, abrir na mesma pagina.
CajuCLC, passei os meus contatos do Gtalk e Skype para vc por PM. Se precisar de mais ajuda me chama amanha durante o dia, ai tento te ajudar no que poder. Sobre o shadowbox, eu ja tive um trabalho que integrei ele no magento, no qual o meu cliente queria que quando ele colocasse um link do you tube lá no admin, abrisse o video na mesma pagina do produto no frontend. ficou legal...mais infelizmente tomei um calote deles, por enquanto...hehe fazer oque ...bola pra frente, daqui a pouco meto eles na justiça, mais por etica não vou comentar nomes...mas faz assim...fala com a Visa, fala que está dando problema, e que vc achou uma alternatica ao bloqueador do popup, se eles derem o ok, blz, se não, vamos partir para fazer algo ai para burlar o bloqueador. Agora vo indo nessa, t+
CajuCLC, passei os meus contatos do Gtalk e Skype para vc por PM. Se precisar de mais ajuda me chama amanha durante o dia, ai tento te ajudar no que poder. Sobre o shadowbox, eu ja tive um trabalho que integrei ele no magento, no qual o meu cliente queria que quando ele colocasse um link do you tube lá no admin, abrisse o video na mesma pagina do produto no frontend. ficou legal...mais infelizmente tomei um calote deles, por enquanto...hehe fazer oque ...bola pra frente, daqui a pouco meto eles na justiça, mais por etica não vou comentar nomes...mas faz assim...fala com a Visa, fala que está dando problema, e que vc achou uma alternatica ao bloqueador do popup, se eles derem o ok, blz, se não, vamos partir para fazer algo ai para burlar o bloqueador. Agora vo indo nessa, t+
Horrivel mesmo nao pagarem.
Tinha um professor meu que dizia, etica é falar mal, sem dizer nomes. hehehehe
Vou esperar uma resposta amanha deles pra ver se tem como usar isso.
Se bem que acho que o Visa nao vai liberar, mas quem sabe ne?
im, vi os arquivos, onde citei para alterar é no onSubmit do formulário da classe “Campoy_Visanet_Block_Standard_Redirect” onde tem aquele “javascript “ para “return fabrewin()”
Só não entendi uma coisa, à visa pediu para vc colocar a função anti-popup, ae vc colocou e eles mesmo assim não homologaram ou ainda esta com algum erro ?
Opa, eu alterei tb e nada cara.
Parece ser um problema da Visa isso, como segue aqui no forum da locaweb:
http://forum.locaweb.com.br/showthread.php?p=26630
A pessoa que fez o módulo disse que entrou em contato com a Visa e que a mesma teria passado uma solução em PHP.
Mas mesmo assim não funcionou.
Mandei um email para a Visa tb pra ver isso ai, ta complicado.
Recentemente precisei homologar o visa para um cliente agora com a “Cielo” que estão bem mais exigentes na homologação, tive um problema semelhante ao seu, resolvi da seguinte forma nos dados q são passados para locaweb existe um parâmetro chamado “visa_antipopup” que quando habilitado nao abre um um popup no load da pagina é necessário clicar no logo da visa, sendo assim não é bloqueado.
Recentemente precisei homologar o visa para um cliente agora com a “Cielo” que estão bem mais exigentes na homologação, tive um problema semelhante ao seu, resolvi da seguinte forma nos dados q são passados para locaweb existe um parâmetro chamado “visa_antipopup” que quando habilitado nao abre um um popup no load da pagina é necessário clicar no logo da visa, sendo assim não é bloqueado.
Então, eles disseram que eu estava errando em algo.
Pedi um site testes dele e fiz o teste usando o Chrome, que bloqueia tudo, e acabou bloqueando o deles.
Isso eles não responderam, so dizendo que funcionava sim.
O que fiz foi tirar esse automatico e deixei uma opção para o cliente clicar no logo e entao ser direcionado para visa.