Closed lucastgama closed 8 months ago
Foi adicionado duas funções auxiliares no arquivo PaymentProcessor para auxiliar na fragmentação da função finish_payment. Essa fragmentação foi necessária devido a uma regra existente no CodeClimate, que limita o tamanho das funções a 25 linhas e 120 caracteres.
A função generate_log_message foi criada para gerar mensagens de log personalizadas com base no status de pagamento de cada fatura.
Já a função update_order_status foi criada para atualizar o status do pedido com base no status de pagamento das faturas. Ela verifica se todas as faturas foram pagas e, caso positivo, atualiza o status do pedido para o status de retorno configurado. Além disso, ela também trata o caso em que o pedido possui um período de teste, ajustando o status e a mensagem de acordo.
Code Climate has analyzed commit b1cd6b26 and detected 0 issues on this pull request.
View more on Code Climate.
Antes de efetuar qualquer pagamento ou compra, o plugin Vindi apresenta erros relacionados à criação de propriedades dinâmicas em várias de suas classes.
Plano de Ação:
PlansController.php
Erro: Variáveis não declaradas. Solução: Foram declaradas as variáveis $logger e $allowed_types. ProductController.php
Erro: Variáveis não declaradas. Solução: Foram declaradas as variáveis $logger e $ignored_types. SubscriptionStatusHandler.php
Erro: Variáveis não declaradas. Solução: Foram declaradas as variáveis $routes. CreditPayment.php
Erro: Variáveis não declaradas. Solução: Foram declaradas as variáveis $smallest_installment, $installments, $verify_method e $enable_interest_rate. Após uma tentativa de pagamento ou compra, o debug.log do sistema apresenta os mesmos erros de criação de propriedades dinâmicas, mas agora em outras classes.
RoutesApi.php
Erro: Variáveis não declaradas. Solução: Foi declarada a variável $current_plan. CreditPayment.php
Erro: Variáveis não declaradas. Solução: Foi adicionada a condição isset($this->is_trial), pois o is_trial poderia não existir. creditcard-checkout.html.php
Erro: Variáveis não declaradas. Solução: Foi adicionada a condição isset($id), pois o $id poderia não existir, evitando erro no do_action('vindi_credit_card_form_start', $id). bankslip-checkout.html.php
Erro: Variáveis não declaradas. Solução: Foi adicionada a condição isset($id), pois o $id poderia não existir, evitando erro no do_action('vindi_bank_slip_form_start', $id). Após efetuar o pagamento, o plugin apresentou problemas com a forma que o id e name estavam sendo chamados pelo arquivo PaymentProcessor.php. Onde estava escrito $order->id, passou a estar $order->get_id() e $order->name para $order->get_name().
Com essas alterações feitas o debug.log não apresentou mais falhas sobre o plugin da Vindi, sendo assim compatível com as versões mais atualizadas do WC, Wordpress e PHP 8.3