Jump to content

Pagamento contrassegno con tetto limite - cashondeliverywithfee modificato


lucamax

Recommended Posts

Salve a tutti,

il mio corriere accetta i pagamenti in contrassegno solo fino a 500 euro.

 

Ho quindi, in modo molto rozzo e poco sofisticato, modificato il codice del file validation.php del modulo cashondeliverywithfee rilasciato da cyber che trovate in questo thread: http://www.prestasho...giungere-costo/ .

 

Non sono in grado con le mie conoscenze di modificare il modulo per mettere nel form del BO del modulo il tetto massimo quindi mi rimetto alla voglia e disponibilità degli utenti più esperti.

 

In allegato il file modificato , il limite impostato è appunto 500 euro

 

P.S. Non riesco in nessun modo a mettere la parte del codice modificata in questo post.

Se utilizzo il tag

  quando faccio l'anteprima o inserisco il post mi butta su prestashop.com, idem se metto il codice senza tag Code[/b]

 

 

cavolo !

Mi sà che ho sbagliato sezione , dovevo postare in Moduli , sorry ....

validation.php

validation.php

Edited by lucamax (see edit history)
Link to comment
Share on other sites

  • 3 weeks later...

si tratta di inserire questo script in validation

 

 

<p>{assign var='current_step' value='payment'}

{include file=$tpl_dir./order-steps.tpl}

{if $total>500}

Attenzione non e' possibile usare questa modalita' di pagamento per importi superiori a 500 euro</p>

 

cambiate le destinazioni dell'order steps se è necessario

Edited by cyber (see edit history)
Link to comment
Share on other sites

si tratta di inserire questo script in validation

 

 

<p>{assign var='current_step' value='payment'}

{include file=$tpl_dir./order-steps.tpl}

{if $total>500}

Attenzione non e' possibile usare questa modalita' di pagamento per importi superiori a 500 euro</p>

 

cambiate le destinazioni dell'order steps se è necessario

Ciao cyber,

ho provato ma non funziona, parlo della 1.5.0.17 , forse sbaglio io qualcosa.

Mentre più grezzamente questo funziona :

 

$this->context->cart->getOrderTotal(true, Cart::BOTH)>500)

 

messo qui:

 

/**
* @since 1.5.0
*/
class CashondeliveryValidationModuleFrontController extends ModuleFrontController
{
public $display_column_left = false;
public $ssl = true;
public function postProcess()
{
 if ($this->context->cart->id_customer == 0 || $this->context->cart->id_address_delivery == 0 || $this->context->cart->id_address_invoice == 0 || !$this->module->active|| $this->context->cart->getOrderTotal(true, Cart::BOTH)>500)
/* modifica || $this->context->cart->getOrderTotal(true, Cart::BOTH)>500) */

Edited by lucamax (see edit history)
Link to comment
Share on other sites

  • 1 month later...

 

$this->context->cart->getOrderTotal(true, Cart::BOTH)>500)

 

 

In effetti questo metodo funziona... però per il cliente è spiazzante ritrovarsi su un'altra pagina senza avere nessun messaggio di avviso. Non sarebbe possibile far comparire qualcosa prima o dopo il redirect per informarlo dell'impossibilita di elaborare quel pagamento?

 

Oppure, meglio ancora, sarebbe possibile evitare di mostrare il modulo del COD in caso il totale fosse superiore all'importo massimo??

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...