Existe una ley en Europa que obliga (aunque nadie lo controle) a todos los sitios web que utilicen cookies (todos) a notificar al visitante. Se pide también que se informe el tipo de cookies (definido en la ley) y que información se está almacenando en ellas. En un solo caso puede cumplirse con el requerimiento mínimo: informar y basta.
Para cumplir con este propósito en un sitio Drupal, agregaremos un block con un texto muy simple y un botón para indicar que se leyó el mensaje.
Si todavía no se utiliza esta librería, se deberá agregar al theme usando por ejemplo el hook template_preprocess_page que se deberá agregar al archivo de nuestro theme (nombredeltheme.info)
codigo
Como de costumbre, ir a /admin/structure/block y agregar un bloque del siguiente modo:
Block description:
EU cookie law compliance
Block body:
<p>Utilizamos cookies propias y de terceros para ofrecerte una mejor experiencia y servicio, de acuerdo a tus hábitos de navegación.</p>
<p>Si continúas navegando, consideramos que aceptas su uso.</p>
<p><button class="btn btn-default btn-sm" type="button">Cerrar</button></p>
CSS class(es):
eu-cookie-law hidden
Y elegir una ubicación en el theme
Seguramente ya tendremos un archivo javascript con las distintas personalizaciones de nuestro sitio.. si no, habría que agregar uno utilizando un hook o directamente en el archivo .info de nuestro theme. El código jQuery podría ser el siguiente:
(function ($) {
// eu cookie
var cookie = "eu-cookie-accept";
$(".eu-cookie-law .btn").click(function(){
$(".region-top").slideUp(
300,
function(){
$(".eu-cookie-law").hide();
// expires
var date = new Date();
var d = 7;
date.setTime(date.getTime() + (d * 3600 * 60 * 1000));
// set cookie
$.cookie(cookie, 1, {expires: date});
}
);
});
if (parseInt($.cookie(cookie)) != 1) {
$(".eu-cookie-law").removeClass("hidden");
}
})(jQuery);
Ajustar la class region-top para que corresponda a la región seleccionada en el punto 2