22 de julio de 2017

:: Velocity. Notación de referencias silenciosa

Cuando Velocity encuentra una referencia indefinida, el comportamiento por defecto es el de escribir el nombre de la referencia. Por ejemplo:.
<input name="correo" type="text" value="$correo"/>
Cuando el formulario se carga por primera vez la referencia $correo no tiene valor. En este caso quizás preferiríamos que se mostrase un texto en blanco en lugar del literal: "$correo". Usando la notación de referencias silenciosa, se obviará el comportamiento normal de Velocity.

De esta manera, en lugar de utilizar $correo en la plantilla Velocity, utilizaríamos $!correo. Con esta modificación el ejemplo anterior quedaría así:
<input name="correo" type="text" value="$!correo"/>
Ahora cuando el formulario se carga por primera vez y $correo no tenga valor una cadena vacía se escribirá en lugar de "$correo".

Igualmente, la notación formal y la silenciosa pueden ser utilizadas conjuntamente:
<input name="correo" type="text" value="$!{correo}"/>

17 de julio de 2017

:: Liferay. Tipos de página

A la hora de crear páginas en Liferay, las alternativas que este CMS (gestor de contenidos) pone a nuestra disposición son las siguientes:


Página en blanco: como su propio nombre indica, se muestra una página sin contenido en la que es posible insertar -de forma manual- los componentes (portlets) que se necesiten. Al seleccionar esta opción, escogeremos una disposición de página de entre las disponibles.
Una disposición de página determina cómo se ordenarán los portlets que insertemos en la página, como por ejemplo en una sola columna, a dos columnas (50-50, 30-70,70-30), etcétera.

Panel: una página que permite mostrar cualquier número de portlets en ella, pero únicamente uno a la vez. El usuario seleccionará el portlet a mostrar a través de un menú. El portlet seleccionado ocupará la página entera.

Web insertada: muestra contenido de otra página web dentro de nuestro portal. Un administrador puede establecer una URL desde el menú de configuración de páginas, mostrándose esta en el contexto de nuestro portal.

Enlace a URL: una página que simplemente redirecciona a la URL configurada, ya sea una url de nuestro portal o un enlace a una web externa.

Enlace a página de este sitio: permite seleccionar una página dentro de nuestro sitio a la que la página creada redireccionará al usuario. Puede ser útil, por ejemplo, para ubicar una página que se encuentra en un nivel de profundidad mayor en el menú de navegación del sitio de forma que esté más visible, creando una página que la enlace a un nivel más superior de la estructura.

En cualquier caso, en Liferay es posible crear tipos de página personalizados de acuerdo a necesidades concretas.

12 de julio de 2017

:: PHP. Obtener datos sobre la salida y puesta de sol

Aunque existen algunos servicios para obtener esta información, el lenguaje de programación PHP nos lo pone un poco más fácil, al estar disponible la función:

date_sun_info(fecha, latitud, longitud)

Como prueba de concepto recuperaremos la información sobre salida y puesta de sol para una fecha y ubicación determinada:

<?php $sun_info = date_sun_info(strtotime("now"), 43.4222027, -5.8248455);
foreach ($sun_info as $clave => $valor) {
    echo "$clave: " . date("H:i:s", $valor) . "
";
}
?>

3 de julio de 2017

:: Alfresco. Eliminación del contenido de la papelera

Cuando un usuario elimina -en Alfresco- cualquier contenido, este es movido a la papelera de reciclaje y se mantendrá aquí hasta que el propio usuario o el usuario administrador lo elimine definitivamente.

En cualquier caso, es posible programar la eliminación de estos contenidos cada cierto tiempo. De esta manera, para llevar a cabo esta tarea debemos incluir la siguiente línea en el fichero: "alfresco-global.properties":

trashcan-cleaner.cron=0 30 * * * ?

:: Cookies de nuestra página web. ¿Para qué sirve cada una?

A menudo una pregunta que nos hacen es qué cookies se están utilizando en mi página y para qué sirven. Para ver las cookies, podemos selecci...