• Resolved woozdigital

    (@woozdigital)


    Olá,

    Eu cadastrei a parcela mínima de R$250 e quando compro produtos com valor inferior a este, ao invés de aparecer 1x de R$100, por exemplo, n?o aparece nada e o select fica em branco, mesmo sendo obrigatório, o cliente n?o consegue selecionar nenhuma op??o.

    Eu entendo que 1x n?o é parcelamento e a parcela mínima n?o deveria ocultar nestes casos.

    Será que a gente consegue resolver isto?

    Abra?os!

Viewing 9 replies - 1 through 9 (of 9 total)
  • Plugin Contributor Anderson Leonardo

    (@andsnleo)

    oi, @woozdigital!

    conseguimos, sim! será que você poderia nos enviar uma captura de tela como evidência do bug? assim consigo colocar o bug oficialemnte na nossa fila de desenvolvimento para investiga??o e resolu??o ??

    Thread Starter woozdigital

    (@woozdigital)

    Eai Anderson, obrigado pelo retorno.

    Gravei um video mostrando o erro na prática:

    Plugin Contributor Anderson Leonardo

    (@andsnleo)

    massa! consegui replicar aqui o bug também. é isso mesmo, o plugin tá com esse probleminha no caso de parcela mínima com valor mais alto que o total de um produto.

    mas já achei a linha de código e a próxima vers?o já vai ter a corre??o. enquanto essa nova vers?o n?o sai, posso te passar a altera??o pra fazer no seu próprio código, para que isso seja corrigido o mais rápido possível. você tem acesso ao código do plugin, certo?

    Thread Starter woozdigital

    (@woozdigital)

    Show de bola Anderson!

    Quando conseguir isso, me manda por favor!

    Valeu!!

    Plugin Contributor Anderson Leonardo

    (@andsnleo)

    bom dia, @woozdigital!

    bora lá dar um jeito esse bug: você vai precisar substituir as linhas 33-58 do arquivo templates/credit-card/payment-form.php por:

    
        <p class="form-row form-row-wide">
            <label for="iugu-card-installments"><?php _e( 'Installments', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
            <select id="iugu-card-installments" name="iugu_card_installments" style="font-size: 1.5em; padding: 4px; width: 100%;">
                <?php for ( $i= 1; $i <= $installments; $i++ ) :
                $total_to_pay      = $order_total;
                $installment_total = $total_to_pay / $i;
                $interest_text     = __( 'free interest', 'iugu-woocommerce' );
    
                // Set the interest rate.
                if ( $i > $free_interest ) {
                    $total_rate        = isset( $rates[ $i ] ) ? $rates[ $i ] / 100 : 1 / 100;
                    $total_to_pay      = $order_total * ( ( 1 - ( $transaction_rate / 100 ) ) / ( 1 - $total_rate ) );
                    $installment_total = $total_to_pay / $i;
                    $interest_text     = __( 'with interest', 'iugu-woocommerce' );
                }
    
                // Stop when the installment total is less than the smallest installment configure.
                if ( $i > 1 && $installment_total < $smallest_installment ) {
                    break;
                } ?>
                    <option value="<?php echo $i; ?>"><?php echo esc_attr( sprintf( __( '%dx of %s %s (Total: %s)', 'iugu-woocommerce' ), $i, sanitize_text_field( wc_price( $installment_total ) ), $interest_text, sanitize_text_field( wc_price( $total_to_pay ) ) ) ); ?></option>
                <?php endfor; ?>
            </select>
        </p>
    

    isso vai fazer com que o dropdown de parcelamento sempre apare?a e tenha pelo menos a op??o de “parcelamento em 1x”, independentemente do valor total do pedido e do mínima da parcela.

    vale dizer que essa n?o é a melhor solu??o (seria melhor esconder o dropdown de vez em vendas à vista), mas é a mais rápida. eu também n?o tive tempo hábil para escrever testes automatizados para a mudan?a, mas simulei vários cenários manualmente aqui no meu ambiente e a solu??o parece dar conta do que você precisa ??

    me avisa se isso causar algum comportamento estranho? pode me avisar também se der tudo certo! hahaha

    Thread Starter woozdigital

    (@woozdigital)

    Eitaa brother, aí bugou de vez…

    Sumiu o boleto e os dados do cart?o. Ficou assim:

    https://prnt.sc/j18br0

    Eu colei o seguinte código, em templates/credit-card/payment-form.php

    <?php
    /**
     * Credit Card - Checkout form.
     *
     * @author  Iugu
     * @package Iugu_WooCommerce/Templates
     * @version 1.1.0
     */
    
    if ( ! defined( 'ABSPATH' ) ) {
    	exit;
    }
    ?>
    
    <fieldset id="iugu-credit-card-fields">
    	<p class="form-row form-row-first">
    		<label for="iugu-card-number"><?php _e( 'Card number', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
    		<input id="iugu-card-number" class="input-text wc-credit-card-form-card-number" type="text" maxlength="20" autocomplete="off" placeholder="&bull;&bull;&bull;&bull; &bull;&bull;&bull;&bull; &bull;&bull;&bull;&bull; &bull;&bull;&bull;&bull;" style="font-size: 1.5em; padding: 8px;" data-iugu="number" />
    	</p>
    	<p class="form-row form-row-last">
    		<label for="iugu-card-holder-name"><?php _e( 'Name printed on card', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
    		<input id="iugu-card-holder-name" name="iugu_card_holder_name" class="input-text" type="text" autocomplete="off" style="font-size: 1.5em; padding: 8px;" data-iugu="full_name" />
    	</p>
    	<div class="clear"></div>
    	<p class="form-row form-row-first">
    		<label for="iugu-card-expiry"><?php _e( 'Expiry date (MM/YYYY)', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
    		<input id="iugu-card-expiry" class="input-text wc-credit-card-form-card-expiry" type="text" autocomplete="off" placeholder="<?php _e( 'MM / YYYY', 'iugu-woocommerce' ); ?>" style="font-size: 1.5em; padding: 8px;" data-iugu="expiration" />
    	</p>
    	<p class="form-row form-row-last">
    		<label for="iugu-card-cvc"><?php _e( 'Security code', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
    		<input id="iugu-card-cvc" class="input-text wc-credit-card-form-card-cvc" type="text" autocomplete="off" placeholder="<?php _e( 'CVC', 'iugu-woocommerce' ); ?>" style="font-size: 1.5em; padding: 8px;" data-iugu="verification_value" />
    	</p>
    	 <p class="form-row form-row-wide">
            <label for="iugu-card-installments"><?php _e( 'Installments', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
            <select id="iugu-card-installments" name="iugu_card_installments" style="font-size: 1.5em; padding: 4px; width: 100%;">
                <?php for ( $i= 1; $i <= $installments; $i++ ) :
                $total_to_pay      = $order_total;
                $installment_total = $total_to_pay / $i;
                $interest_text     = __( 'free interest', 'iugu-woocommerce' );
    
                // Set the interest rate.
                if ( $i > $free_interest ) {
                    $total_rate        = isset( $rates[ $i ] ) ? $rates[ $i ] / 100 : 1 / 100;
                    $total_to_pay      = $order_total * ( ( 1 - ( $transaction_rate / 100 ) ) / ( 1 - $total_rate ) );
                    $installment_total = $total_to_pay / $i;
                    $interest_text     = __( 'with interest', 'iugu-woocommerce' );
                }
    
                // Stop when the installment total is less than the smallest installment configure.
                if ( $i > 1 && $installment_total < $smallest_installment ) {
                    break;
                } ?>
                    <option value="<?php echo $i; ?>"><?php echo esc_attr( sprintf( __( '%dx of %s %s (Total: %s)', 'iugu-woocommerce' ), $i, sanitize_text_field( wc_price( $installment_total ) ), $interest_text, sanitize_text_field( wc_price( $total_to_pay ) ) ) ); ?></option>
                <?php endfor; ?>
            </select>
        </p>
    	<?php endif; ?>
    	<div class="clear"></div>
    </fieldset>
    
    Plugin Contributor Anderson Leonardo

    (@andsnleo)

    eita. eu acho que é por causa desse <?php endif; ?> no final, considerando que tiramos um if lá de cima. t? te passando o arquivo inteiro, vê se rola:

    
    <?php
    /**
     * Credit Card - Checkout form.
     *
     * @author  Iugu
     * @package Iugu_WooCommerce/Templates
     * @version 1.1.0
     */
    
    if ( ! defined( 'ABSPATH' ) ) {
        exit;
    }
    ?>
    
    <fieldset id="iugu-credit-card-fields">
        <p class="form-row form-row-first">
            <label for="iugu-card-number"><?php _e( 'Card number', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
            <input id="iugu-card-number" class="input-text wc-credit-card-form-card-number" type="text" maxlength="20" autocomplete="off" placeholder="&bull;&bull;&bull;&bull; &bull;&bull;&bull;&bull; &bull;&bull;&bull;&bull; &bull;&bull;&bull;&bull;" style="font-size: 1.5em; padding: 8px;" data-iugu="number" />
        </p>
        <p class="form-row form-row-last">
            <label for="iugu-card-holder-name"><?php _e( 'Name printed on card', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
            <input id="iugu-card-holder-name" name="iugu_card_holder_name" class="input-text" type="text" autocomplete="off" style="font-size: 1.5em; padding: 8px;" data-iugu="full_name" />
        </p>
        <div class="clear"></div>
        <p class="form-row form-row-first">
            <label for="iugu-card-expiry"><?php _e( 'Expiry date (MM/YYYY)', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
            <input id="iugu-card-expiry" class="input-text wc-credit-card-form-card-expiry" type="text" autocomplete="off" placeholder="<?php _e( 'MM / YYYY', 'iugu-woocommerce' ); ?>" style="font-size: 1.5em; padding: 8px;" data-iugu="expiration" />
        </p>
        <p class="form-row form-row-last">
            <label for="iugu-card-cvc"><?php _e( 'Security code', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
            <input id="iugu-card-cvc" class="input-text wc-credit-card-form-card-cvc" type="text" autocomplete="off" placeholder="<?php _e( 'CVC', 'iugu-woocommerce' ); ?>" style="font-size: 1.5em; padding: 8px;" data-iugu="verification_value" />
        </p>
            <p class="form-row form-row-wide">
                <label for="iugu-card-installments"><?php _e( 'Installments', 'iugu-woocommerce' ); ?> <span class="required">*</span></label>
                <select id="iugu-card-installments" name="iugu_card_installments" style="font-size: 1.5em; padding: 4px; width: 100%;">
                    <?php for ( $i= 1; $i <= $installments; $i++ ) :
                    $total_to_pay      = $order_total;
                    $installment_total = $total_to_pay / $i;
                    $interest_text     = __( 'free interest', 'iugu-woocommerce' );
    
                    // Set the interest rate.
                    if ( $i > $free_interest ) {
                        $total_rate        = isset( $rates[ $i ] ) ? $rates[ $i ] / 100 : 1 / 100;
                        $total_to_pay      = $order_total * ( ( 1 - ( $transaction_rate / 100 ) ) / ( 1 - $total_rate ) );
                        $installment_total = $total_to_pay / $i;
                        $interest_text     = __( 'with interest', 'iugu-woocommerce' );
                    }
    
                    // Stop when the installment total is less than the smallest installment configure.
                    if ( $i > 1 && $installment_total < $smallest_installment ) {
                        break;
                    } ?>
                        <option value="<?php echo $i; ?>"><?php echo esc_attr( sprintf( __( '%dx of %s %s (Total: %s)', 'iugu-woocommerce' ), $i, sanitize_text_field( wc_price( $installment_total ) ), $interest_text, sanitize_text_field( wc_price( $total_to_pay ) ) ) ); ?></option>
                    <?php endfor; ?>
                </select>
            </p>
        <div class="clear"></div>
    </fieldset>
    
    Thread Starter woozdigital

    (@woozdigital)

    Acertou Miserávi…
    Hahhaa

    Funcionando perfeitamente!

    Muito obrigado brother!

    Excelente trabalho!

    Plugin Contributor Anderson Leonardo

    (@andsnleo)

    hahaha foi nada! que bom que deu certo ??

    qualquer coisa, só falar!

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Bug no parcelamento’ is closed to new replies.