Antes dessa alteração, o sistema apresentava problemas ao identificar as bandeiras de cartão de crédito, deixando bandeiras incorretas ativas e entrando em um loop quando não havia uma identificação clara. Essa PR corrige esses problemas, melhorando os regex de identificação, removendo bandeiras não utilizadas e adicionando tratamento de erro na requisição, proporcionando uma experiência mais consistente e sem erros para os usuários durante o processo de pagamento.
O que mudou
Foram realizadas alterações nos arquivos credit.js, wc_yapay_intermediador_cc_form.php e class-wc-yapay_intermediador-creditcard-gateway.php:
Em credit.js, foram feitas melhorias nos regex da função getBrands() para uma melhor identificação das bandeiras, evitando conflitos com outros regex. Além disso, foi aprimorada a requisição, que agora possui um bloco catch, e alterada a forma como a classe da bandeira digitada pelo usuário é removida na função setCardBrand(), incluindo a adição de um break e o uso do forEach.
Em wc_yapay_intermediador_cc_form.php, foi adicionada uma nova <div> para exibir uma mensagem de erro caso a bandeira do cartão não seja aceita pela plataforma.
Por fim, em class-wc-yapay_intermediador-creditcard-gateway.php, as bandeiras que não serão mais utilizadas pelo sistema foram removidas e houve uma alteração na leitura.
Motivação
Melhorar a identificação da bandeira utilizada pelo usuário.
Evitar conflitos nos regex de identificação da bandeira.
Remover as bandeiras não aceitas pelo sistema.
Prevenir um loop quando o número do cartão do usuário é adicionado.
Solução proposta
Melhorias nos regex.
Adição do bloco catch na requisição.
Remoção das bandeiras não utilizadas pelo sistema.
Como testar
Acesse a página de checkout.
Adicione o número do cartão desejado.
Verifique se a bandeira foi ativada corretamente e se apenas uma bandeira está ativa.
Caso a bandeira não seja identificada, observe a aparição de uma mensagem de erro abaixo do parcelamento.
Descrição do problema e solução
Antes dessa alteração, o sistema apresentava problemas ao identificar as bandeiras de cartão de crédito, deixando bandeiras incorretas ativas e entrando em um loop quando não havia uma identificação clara. Essa PR corrige esses problemas, melhorando os regex de identificação, removendo bandeiras não utilizadas e adicionando tratamento de erro na requisição, proporcionando uma experiência mais consistente e sem erros para os usuários durante o processo de pagamento.
O que mudou
Foram realizadas alterações nos arquivos
credit.js
,wc_yapay_intermediador_cc_form.php
eclass-wc-yapay_intermediador-creditcard-gateway.php
:credit.js
, foram feitas melhorias nos regex da funçãogetBrands()
para uma melhor identificação das bandeiras, evitando conflitos com outros regex. Além disso, foi aprimorada a requisição, que agora possui um blococatch
, e alterada a forma como a classe da bandeira digitada pelo usuário é removida na funçãosetCardBrand()
, incluindo a adição de umbreak
e o uso doforEach
.wc_yapay_intermediador_cc_form.php
, foi adicionada uma nova<div>
para exibir uma mensagem de erro caso a bandeira do cartão não seja aceita pela plataforma.class-wc-yapay_intermediador-creditcard-gateway.php
, as bandeiras que não serão mais utilizadas pelo sistema foram removidas e houve uma alteração na leitura.Motivação
Solução proposta
catch
na requisição.Como testar