/** * Copyright (c) 2009-2014 Câmara dos Deputados. Todos os direitos reservados. * * e-Democracia é um software livre; você pode redistribuí-lo e/ou modificá-lo dentro * dos termos da Licença Pública Geral Menor GNU como publicada pela Fundação do * Software Livre (FSF); na versão 2.1 da Licença, ou (na sua opinião) qualquer versão. * * Este programa é distribuído na esperança de que possa ser útil, mas SEM NENHUMA GARANTIA; * sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. * Veja a Licença Pública Geral Menor GNU para maiores detalhes. */ package br.gov.camara.edemocracia.portlets; import java.io.IOException; import java.util.LinkedHashMap; import java.util.List; import javax.portlet.PortletException; import javax.portlet.RenderRequest; import javax.portlet.RenderResponse; import com.liferay.portal.kernel.log.Log; import com.liferay.portal.kernel.log.LogFactoryUtil; import com.liferay.portal.kernel.util.WebKeys; import com.liferay.portal.model.Group; import com.liferay.portal.model.GroupConstants; import com.liferay.portal.model.Layout; import com.liferay.portal.model.LayoutSet; import com.liferay.portal.service.GroupLocalServiceUtil; import com.liferay.portal.service.LayoutLocalServiceUtil; import com.liferay.portal.theme.ThemeDisplay; import com.liferay.portal.util.PortalUtil; import com.liferay.util.bridges.mvc.MVCPortlet; /** * @author P_7339 * */ public class RodapePaginaPortlet extends MVCPortlet { private static final Log LOG = LogFactoryUtil.getLog(RodapePaginaPortlet.class); @Override public void doView(RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { // Busca as páginas da comunidade "guest" ThemeDisplay td = (ThemeDisplay) renderRequest .getAttribute(WebKeys.THEME_DISPLAY); LinkedHashMap<String, String> links = new LinkedHashMap<String, String>(); try { Group grupo = GroupLocalServiceUtil.getGroup(td.getCompanyId(), GroupConstants.GUEST); LayoutSet paginas = grupo.getPublicLayoutSet(); if (paginas.getPageCount() > 0) { List<Layout> layouts = LayoutLocalServiceUtil.getLayouts( grupo.getGroupId(), false, GroupConstants.DEFAULT_PARENT_GROUP_ID); for (Layout layout : layouts) { String url = PortalUtil.getLayoutFullURL(layout, td); links.put(layout.getName(td.getLocale()), url); } } } catch (Exception e) { LOG.error("Erro ao recuperar páginas da comunidade guest", e); } renderRequest.setAttribute("links", links); super.doView(renderRequest, renderResponse); } }