FZ152
Ayuda a los sitios web rusos a cumplir con la Ley Federal 152 sobre protección de datos personales añadiendo casillas de consentimiento a los formularios y proporcionando una página de política de privacidad.
fz152
Instalar
composer require 'drupal/fz152:^2.0'
composer require 'drupal/fz152:8.x-1.10'
Overview
FZ152 es un módulo de Drupal diseñado para ayudar a los sitios web a cumplir con la Ley Federal 152 de Rusia, que regula la recopilación, almacenamiento y procesamiento de datos personales. La ley requiere que los sitios web obtengan el consentimiento explícito del usuario antes de recopilar información personal y que muestren una política de privacidad.
Este módulo proporciona dos características principales: Primero, añade automáticamente una casilla personalizable de 'Acepto el procesamiento de mis datos personales' a cualquier formulario que especifiques, con soporte para comodines en los IDs de formulario. Segundo, crea una página dedicada de política de privacidad en una ruta configurable (por defecto: /privacy-policy) con una plantilla de acuerdo legal preescrita en ruso que puede personalizarse a través de la interfaz de administración.
El módulo incluye un sistema de plugins que permite a otros módulos integrar sus formularios, con un submódulo incluido para el módulo Contact de Drupal. Todas las configuraciones son completamente traducibles, permitiendo diferentes configuraciones por idioma, e incluso puedes desactivar la funcionalidad para idiomas específicos mientras la mantienes habilitada para otros.
Features
- Añade una casilla de 'consentimiento para procesar datos personales' a cualquier formulario de Drupal especificado con texto de etiqueta personalizable que soporta enlaces HTML
- Proporciona una página de política de privacidad configurable en /privacy-policy con una plantilla completa de acuerdo legal en ruso que cumple con FZ152
- Soporta comodines en los IDs de formulario (ej. *_node_form) para apuntar fácilmente a múltiples formularios similares a la vez
- Permite establecer un peso/posición personalizado para la casilla en cada formulario para controlar dónde aparece
- Completamente traducible con la capacidad de habilitar/deshabilitar la funcionalidad por idioma para sitios multilingües
- Incluye un sistema de plugins que permite a otros módulos registrar sus formularios para la integración de casillas de consentimiento
- Submódulo incluido para la integración con el módulo Contact que añade casillas a los formularios de contacto mediante la interfaz
- Opción de mostrar el consentimiento como texto plano en lugar de una casilla cuando sea apropiado
- Ruta de página de política de privacidad personalizable que puede ser diferente por idioma
- La página de política de privacidad puede deshabilitarse si prefieres usar tu propia página
Use Cases
Cumplimiento de sitio de comercio electrónico ruso
Una tienda en línea que opera en Rusia necesita cumplir con FZ152 antes de recopilar cualquier dato de clientes. Instala FZ152, habilítalo para todos los formularios de pago y registro usando comodines como '*_checkout_form' y 'user_register_form', y personaliza la página de política de privacidad con la información específica de tu empresa.
Sitio multilingüe con aplicación selectiva
Un sitio que sirve tanto a audiencias rusas como internacionales puede habilitar FZ152 solo para la versión en idioma ruso. Configura el módulo con 'Habilitar funcionalidad' marcado solo en la traducción al ruso, mientras que otros idiomas no mostrarán la casilla de consentimiento.
Cumplimiento de formulario de contacto
Habilita el submódulo fz152_contact para añadir automáticamente casillas de consentimiento a todos los formularios de contacto de tu sitio. Ve a /admin/config/system/fz152/contact para habilitar/deshabilitar individualmente las casillas por tipo de formulario de contacto.
Integración de formulario personalizado
Para formularios de módulos personalizados, simplemente añade el ID del formulario a la página de configuración de Formularios en /admin/config/system/fz152/forms. Usa el patrón 'mymodule_custom_form|50' para también controlar dónde aparece la casilla en tu formulario.
Formularios de creación de nodos
Añade casillas de consentimiento a todos los formularios de creación/edición de nodos usando el comodín '*_node_form' para coincidir con cualquier formulario de tipo de contenido donde los usuarios puedan ingresar datos personales.
Tips
- Usa comodines como *_form o *_node_form para apuntar a múltiples formularios similares a la vez sin listar cada uno individualmente
- La etiqueta de la casilla soporta HTML - incluye un enlace a tu página de política de privacidad usando <a href="/privacy-policy">texto del enlace</a>
- Puedes establecer diferentes rutas de política de privacidad para diferentes idiomas mediante traducción - útil para sitios multilingües
- Si prefieres usar tu propia página de política de privacidad, simplemente deshabilita la página integrada en Configuración de página y actualiza el enlace de la etiqueta de la casilla correspondientemente
- El texto de política de privacidad en ruso por defecto cumple legalmente y puede usarse tal cual para la mayoría de los sitios web, ahorrándote la necesidad de un abogado para redactar uno
- Al añadir peso a los IDs de formulario (ej. form_id|99), los números más bajos aparecen más arriba en el formulario mientras que los números más altos empujan la casilla hacia abajo
Technical Details
Admin Pages 4
/admin/config/system/fz152
Página de configuración principal del módulo FZ152 donde puedes habilitar/deshabilitar la funcionalidad de casilla de consentimiento y personalizar el texto de la etiqueta de la casilla.
/admin/config/system/fz152/settings
Configura los ajustes de la página de política de privacidad incluyendo la ruta de la página, título y contenido.
/admin/config/system/fz152/forms
Especifica qué formularios de Drupal deben mostrar la casilla de consentimiento. Soporta comodines y configuraciones de peso personalizadas.
/admin/config/system/fz152/contact
Configura qué formularios de Contact deben mostrar la casilla de consentimiento. Solo disponible cuando el submódulo FZ152 — Contact está habilitado.
Permisos 1
Hooks 1
hook_fz152_info_alter
Permite a los módulos alterar las definiciones de plugins de FZ152 antes de que se almacenen en caché.
Troubleshooting 4
Verifica que el ID del formulario esté correctamente ingresado en /admin/config/system/fz152/forms. Comprueba que 'Habilitar funcionalidad' esté marcado en la configuración principal. Para Webform, asegúrate de estar usando el patrón correcto de ID de formulario.
Limpia la caché después de cambiar la ruta de la página. Asegúrate de que 'Habilitar página de política de privacidad' esté marcado en Configuración de página. La ruta puede necesitar reconstruirse - guarda el formulario de Configuración de página nuevamente.
Añade un peso a la entrada del ID del formulario (ej. form_id|50). Pesos más altos empujan el elemento más abajo en el formulario. Ten en cuenta que los pesos no funcionan para Webforms debido a su arquitectura.
Habilita el módulo Configuration Translation. Ve a /admin/config/regional/config-translation y busca las entradas de FZ152 para traducir cada configuración para tus idiomas.
Security Notes 2
- El campo de etiqueta de la casilla acepta HTML - asegúrate de que solo administradores de confianza puedan modificar esta configuración ya que podría usarse para ataques XSS
- El campo de texto de política de privacidad usa el sistema de formato de texto de Drupal - usa un formato apropiado que sanee el contenido basándose en quién lo editará