popup liferay portlet

popup - Mostrar portlet en pop-up Liferay



(1)

Finalmente consigo mostrar el portlet. Creé la url con javascript:

var url; function createRenderURL(portletId) { AUI().ready(''liferay-portlet-url'', function(A) { var renderURL = Liferay.PortletURL.createRenderURL(); renderURL.setName("Banner"); renderURL .setPortletMode("edit"); renderURL .setWindowState("pop_up"); renderURL.setPortletId(portletId); url = renderURL.toString(); }); }

El código para mostrar de pop-up es el mismo, pero paso el portletId como un parámetro y llamo a la función createRenderURL.

var url; function createRenderURL(portletId) { console.log("en el createRender"); AUI().ready(''liferay-portlet-url'', function(A) { var renderURL = Liferay.PortletURL.createRenderURL(); renderURL.setName("Banner"); renderURL .setPortletMode("edit"); renderURL .setWindowState("pop_up"); renderURL.setPortletId(portletId); console.log(renderURL); url = renderURL.toString(); }); }

Espero que esto pueda ser útil para alguien.

Estoy tratando de mostrar un portlet (que previamente he creado) de otro, pero el pop-up está vacío. Primero, creo el renderURL:

<liferay-portlet:renderURL var="testPopupURL" portletName="<%=rule.getBannerPortletId() %>" windowState="<%=LiferayWindowState.POP_UP.toString() %>"></liferay-portlet:renderURL>

y hago el enlace:

<aui:a href="#" onClick="showPopup(''${testPopupURL}'')">View</aui:a>

y esta es la función showPopup:

function showPopup(url){ console.log("En el showPopup "); AUI().ready(''aui-dialog'', ''aui-io'', ''event'', ''event-custom'', function(A) { window.myDialog = new A.Dialog({ title: ''Banner'', width: 640, centered: true }).plug(A.Plugin.DialogIframe, { uri: url.toString(), iframeCssClass: ''dialog-iframe'' }).render(); }); }

Puse en el liferay-portlet.xml (del portlet que quiero abrir en la ventana emergente) esto:

<add-default-resource>true</add-default-resource>

El portlet es instanciable y bannerPortletId es el porletId.

¿Alguna idea?

Gracias