guelu Posted April 3, 2015 Share Posted April 3, 2015 Hola a todos, Por diversas razones que serían muy largas de explicar, he creado un checkbox en el último paso del proceso de compra, donde se elige el método de pago. Dicho checkbox es para que se acepten las condiciones generales de venta, tal y como indica la ley. El problema es que independientemente de que el checkbox esté o no marcado...se puede continuar con el proceso de compra. La idea sería algo así como que : 1.- Si no se marca aparezca un cartelito avisando de que debe marcarse 2.- Los métodos de pago no sean visibles hasta que se marque el checkbox Alguien sabe como hacerlo? Adjunto el código que usé para crear el checkbox en orden-carrier.tpl: {if $conditions AND $cms_id} <p class="carrier_title">{l s='Terms of service'}</p> <p class="checkbox"> <input type="checkbox" name="cgv" id="cgv" value="1" {if $checkedTOS}checked="checked"{/if} /> <label for="cgv">{l s='I agree to the terms of service and will adhere to them unconditionally.'}</label> <a href="{$link_conditions|escape:'html':'UTF-8'}" class="iframe" rel="nofollow">{l s='(Read the Terms of Service)'}</a> </p> {/if} Gracias! Link to comment Share on other sites More sharing options...
guelu Posted April 3, 2015 Author Share Posted April 3, 2015 Hola a todos, sigo investigando sobre este tema y se me ha ocurrido una idea pero no se como plasmarla Lo que intento es ocultar el pago por transferencia bankwire. Dentro de modulos>bankwire>bankwire.php podemos encontrar la función : public function hookPayment. En dicha función podríamos meter un if de manera que si el checkbox no está clicado no aparezca. Lo que ocurre es que no se como hacerlo La idea sería más o menos algo así... public function hookPayment($params) { if (!$this->active) return; if ($params['cgv']->value == 0) return; if (!$this->active) return; A ver si podéis indicarme por donde seguir, la cuestión es que no se como relacionar el checkbox con esta función... Gracias! Link to comment Share on other sites More sharing options...
ventura Posted April 3, 2015 Share Posted April 3, 2015 Sinceramente y sin animo de ofender creo que deberias revisar la documentacion de Prestashop y aclarar conceptos http://doc.prestashop.com/display/PS16/Developer+Guide $cms_id = (int)Configuration::get('PS_CONDITIONS_CMS_ID'); $conditions = (int)Configuration::get('PS_CONDITIONS'); Link to comment Share on other sites More sharing options...
guelu Posted April 3, 2015 Author Share Posted April 3, 2015 Sinceramente y sin animo de ofender creo que deberias revisar la documentacion de Prestashop y aclarar conceptos http://doc.prestashop.com/display/PS16/Developer+Guide $cms_id = (int)Configuration::get('PS_CONDITIONS_CMS_ID'); $conditions = (int)Configuration::get('PS_CONDITIONS'); Hola Ventura, Lo primero, muchas gracias por tu tiempo. Lo segundo, no te preocupes, no me ofendes, yo soy el primero que soy consciente de mi total ignorancia sobre este tema. El problema es que muchos de los que nos metemos a montar una tienda online, no tenemos ( y quizas no debamos tener) ni pajotera idea de programacion smarty, php, etc. El problema muchas veces es que no nos sobra el $$ para contratar a profesionales y tenemos que sacarnos nosotros mismos las castañas del fuego. Por todo eso, la ayuda desinteresada de personas como tu en foros como este es tan apreciada. Muchas gracias Volviendo al codigo... supongo que ese es el codigo que debo meter en el if del bankwire.tpl?! hoy ya es muy tarde, mñn lo probare y os comento. Link to comment Share on other sites More sharing options...
guelu Posted April 6, 2015 Author Share Posted April 6, 2015 Hola a todos los que están siguiendo este hilo, he mirado las dos lineas que ventura dio y la verdad es que no termino de entender donde se ponen. Podría alguien pegar el código? Gracias Link to comment Share on other sites More sharing options...
Recommended Posts