miércoles, 10 de junio de 2015

Liferay "Mi Perfil (My Account)" desde template en velocity

Normalmente no se necesita, pero en algunos casos se puede necesitar crear una entrada al portlet de Mi Perfil (My Account) de Liferay desde algún template en velocity, ya sea desde un custom theme,  template de contenido, template de listas dinámicas, template de asset publisher, etc.

Liferay en su dockbar hace esta liga desde un jsp y es bastante diferente hacerlo en velocity.

Dejo aquí un ejemplo de como llamar el portlet de Mi Perfil (My Account) desde velocity. El código es bastante corto y sencillo, ya que esta URL se encuentra en la variable de Liferay de theme_display!

## Liferay pop up link to display the account editing page of a user (Velocity)
#set ($my_account_url = $theme_display.getURLMyAccount() + "&controlPanelCategory=my")

Creamos la URL para el portlet de Mi Perfil (My Account), luego hay que cargarla en un popup (para hacerlo como lo hace Liferay en el dockbar).
Liferay tiene una utilería de javascript para crear los popups que utiliza, así que la usamos.

<a href="javascript:Liferay.Util.openWindow({dialog: {destroyOnHide: true}, title: 'My Account', uri: '$my_account_url'});">
     Edit Profile
</a>

Listo! así de fácil.

No hay comentarios:

Publicar un comentario