Cogido de: http://felicianoborrego.com/formulario-de-contacto-cumpla-la-lopd-en-prestashop/
Para el caso del formulario de registro, Prestashop ya viene con un módulo incluido, que solo tendremos que instalar, activar y configurar. Se trata del módulo “Bloque de privacidad de datos del cliente” (“Customer Privacy“).
1- Para el formulario de contacto, vamos a usar ese mismo módulo para hacer que aparezca el mensaje en dicho formulario, para ello insertamos el hook, la linea submit no hay que tocarla:
Editamos el archivo /themes/default-bootstrap/contact-form.tpl
{$HOOK_CREATE_ACCOUNT_FORM}
<div class=»submit»>
2- Ahora necesitamos sobreescribir el hook para mostrar la información y el hook para validar que la casilla esté marcada. Usaremos el mecanismo llamado “override”, para sobreescribir estos dos métodos del controlador “ContactController“. El código es el siguiente:
Tenemos que crear unas carpetas y dentro un archivo en /override/controllers/front/ContactController.php con el siguiente texto:
<?php class ContactController extends ContactControllerCore { public function initContent() { $this->context->smarty->assign(array( 'HOOK_CREATE_ACCOUNT_FORM' => Hook::exec('createAccountForm'), 'privacy_message' => Configuration::get('CUSTPRIV_MESSAGE', $this->context->language->id) ));parent::initContent(); } public function postProcess() { if (Tools::isSubmit('submitMessage')) Hook::exec('actionBeforeSubmitAccount'); parent::postProcess(); } }
3- Como precaución, borramos de la caché el fichero “class_index.php”, y probamos que al darle a enviar, se muestra el mensaje indicando que es obligatorio la aceptación de la política de privacidad..