Stiven Gallardo Posted August 14, 2020 Share Posted August 14, 2020 Buena noche comunidad ¿Cómo estan? me pregunta si me podrian ayudar con un problema que tengo bueno al que quiero hacer, busco agregarle un checkbox de mas al formulario de registro para un cliente, pero no encuentro cual es el controlador que se encargar de insertar el registro de un cliente para poder obtener el valor del checkbox, me podrian ayudar por favor Link to comment Share on other sites More sharing options...
Prestafan33 Posted August 14, 2020 Share Posted August 14, 2020 (edited) Puedes hacerlo desde un módulo utilizando los hooks additionalCustomerFormFields y validateCustomerFormFields. Si prefieres editar las plantillas y clases, el formulario de registro está en /themes/nombre-de-tu-tema/templates/customer/_partials/customer-form.tpl. Y el código para la validación de los campos lo tienes en /classes/forms/CustomerForm.php (los controladores que lo usan están en /controllers/AuthController.php y /controllers/IdentityController.php). También tienes la función que crea los formularios de registro en /classes/controllers/FrontController.php. Edited August 14, 2020 by Prestafan33 (see edit history) Link to comment Share on other sites More sharing options...
Stiven Gallardo Posted August 14, 2020 Author Share Posted August 14, 2020 14 hours ago, Prestafan33 said: Puedes hacerlo desde un módulo utilizando los hooks additionalCustomerFormFields y validateCustomerFormFields. Si prefieres editar las plantillas y clases, el formulario de registro está en /themes/nombre-de-tu-tema/templates/customer/_partials/customer-form.tpl. Y el código para la validación de los campos lo tienes en /classes/forms/CustomerForm.php (los controladores que lo usan están en /controllers/AuthController.php y /controllers/IdentityController.php). También tienes la función que crea los formularios de registro en /classes/controllers/FrontController.php. Hola amigo estoy haciendo del modo editando la plantilla y clases, pero no encuentro en donde esta el insert a la tabla customer Link to comment Share on other sites More sharing options...
ventura Posted August 16, 2020 Share Posted August 16, 2020 Será necesario hacer un override de Customer.php para incluir el nuevo campo. eg <?php use PrestaShop\PrestaShop\Adapter\ServiceLocator; use PrestaShop\PrestaShop\Adapter\CoreException; /*** * Class CustomerCore */ class Customer extends CustomerCore { public $nuevocampo; public function __construct($id = null) { self::$definition['fields']['nuevocampo'] = array('type' => self::TYPE_STRING, 'validate' => 'isGenericName'); parent::__construct($id); } } Como te ha indicado @Prestafan33, todo el proceso lo puedes hacer directamente desde un módulo, utilizando los hooks específicos para no tener que editar directamente archivos del core de Prestashop. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now