Se pueden ver los avisos funcionando en la aplicación FundeWeb Showcase, en la página de plantilla de cookies.
Modificaciones para añadir un aviso de cookies sencillo o un aviso de privacidad en una aplicación FundeWeb. Se entiende que solamente se pondrá uno de ellos, normalmente el de cookies pero en esta guía vamos a añadir los dos a la aplicación con posibilidad de configurarlos a través de una propiedad en los filtros. No es necesario hacer las modificaciones de los dos.
Añadir el aviso en aplicación generada con arquetipo 0.0.28 o posterior
En el arquetipo 0.0.28 ya está por defecto el aviso de cookies básico.
Si tenemos cookies opcionales y queremos gestionarlas, tendremos que cambiar en el template.xhtml el <ui:include src="avisoCookies.xhtml" /> por <ui:include src="avisoCookiesGestion.xhtml" />
Si queremos cambiarlo por el aviso de privacidad tendremos que cambiar las propiedades notificar.cookies y notificar.politica.privacidad en los ficheros filtro-???.properties, de todos los entornos.
Añadir el aviso en aplicación generada con arquetipo arquetipo
template.xhtml
A continuación se muestran las modificaciones necesarias para el archivo template.xhtml, el código de ejemplo es para una aplicación FundeWeb 2, pero se podría adaptar para otras aplicaciones.
Añadir un nuevo fichero js: cookies.js, con la funcionalidad para detectar si ya se han aceptado la notificación.
<h:outputScript library="js" name="cookies.js" />
Ejemplo para añadir un enlace en el pie de las páginas a la política de cookies o privacidad después del enlace de la declaración de accesibilidad.
<c:if test="${notificar.cookies}"> <span class="separator">|</span> <span> <p:commandLink action="#{menuManagerBean.clickAndKillLastConversation('/paginas/politicaCookies.xhtml')}" ajax="false" styleClass="bloqueoFundeweb"> <h:outputText value="#{messages['menu.components.politica.cookies']}" /> </p:commandLink> </span> </c:if>
<span> <c:choose> <c:when test="${notificar.politica.privacidad}"> <p:commandLink action="#{menuManagerBean.clickAndKillLastConversation('/paginas/politicaPrivacidad.xhtml')}" ajax="false" styleClass="bloqueoFundeweb"> <h:outputText value="#{messages['application.foot.lopd']}" /> </p:commandLink> </c:when> <c:otherwise> <p:link id="linkLopd" onclick="PF('_widgetDialogLopd').show();return false;" title="#{messages['application.foot.lopd.title']}" pt:role="button"> <h:outputText value="#{messages['application.foot.lopd']}" /> </p:link> </c:otherwise> </c:choose> </span>
Añadir los avisos de cookies, cookies con gestión o privacidad, justo después del div de messagesGlobal, al final del template.
<ui:insert name="notifications"> <c:if test="${notificar.cookies}"> <ui:include src="avisoCookies.xhtml" /> </c:if> </ui:insert>
<ui:insert name="notifications"> <c:if test="${notificar.cookies}"> <ui:include src="avisoCookiesGestion.xhtml" /> </c:if> </ui:insert>
<ui:insert name="notifications"> <c:if test="${notificar.politica.privacidad}"> <ui:include src="avisoPrivacidad.xhtml" /> </c:if> </ui:insert>
Se pueden ver las modificaciones en el archivo template.xhtml
filtro-????.properties
Nueva propiedades (hay que poner solamente una de ellas):
notificar.cookies=true
notificar.politica.privacidad=true
Nueva página de política de cookies y privacidad
Archivo politicaCookies.xhtml
Archivo politicaPrivacidad.xhtml
Codigo xhtml del aviso incluido en el template
Archivo avisoCookies.xhtml
Archivo avisoCookiesGestion.xhtml
Archivo avisoPrivacidad.xhtml
messages_??.properties
Nuevas propiedades con el texto del aviso.
cookies.link=Pol\u00EDtica de cookies cookies.summary=S\u00F3lo usamos cookies esenciales cookies.message=Esta aplicaci\u00F3n web \u00FAnicamente utiliza cookies t\u00E9cnicas propias con la finalidad de permitir la navegaci\u00F3n por el sitio web, de manera que no se recabar\u00E1n ni ceder\u00E1n datos de car\u00E1cter personal de los usuarios sin su conocimiento.
cookies.gestion.message.pre=Esta aplicaci\u00F3n web \u00FAnicamente utiliza cookies t\u00E9cnicas propias con la finalidad de permitir la navegaci\u00F3n por el sitio web, de manera que no se recabar\u00E1n ni ceder\u00E1n datos de car\u00E1cter personal de los usuarios sin su conocimiento. Para mas informaci\u00F3n puede ver nuestra cookies.gestion.message.link=pol\u00EDtica de cookies cookies.gestion.message.post=. cookies.value.settings=Configurar cookies.value.save=Guardar configuraci\u00F3n cookies.value.acceptAll=Aceptar todas cookies.value.conf.ok=De acuerdo cookies.value.conf.choose=D\u00E9jame elegir cookies.dialog.title=Configuraci\u00F3n de cookies
privacy.link=Pol\u00EDtica de privacidad privacy.summary=C\u00F3mo tratamos sus datos privacy.message=Sus datos personales ser\u00E1n tratados con la finalidad de realizar los procedimientos iniciados por el usuario. Puede ejercer sus derechos de acceso, rectificaci\u00F3n, cancelaci\u00F3n, limitaci\u00F3n y oposici\u00F3n al tratamiento de sus datos personales a trav\u00E9s del procedimiento establecido a tal efecto en el Registro Electrónico o mediante la presentaci\u00F3n de una solicitud en el Registro General de la Universidad de Murcia.
Javascript necesario
Nuevo archivo cookies.js con la funcionalidad para saber si ya se aceptó el aviso de cookies.
Actualización de los estilos
Estos estilos han sido añadidos al estilo corporativo así que no es necesario el uso de un css adicional en aplicaciones FundeWeb.
Hay disponible un archivo cookies.css con los estilos, este archivo no depende del estilo corporativo así que puede ser usado en aplicaciones no FundeWeb.