我正在为我的 liferay 6.2 构建一个 freemarker 主题,当我试图在没有所需权限的情况下访问页面时,我正在努力获取登录 portlet 的窗口状态。在这种情况下,liferay“拦截”请求并在我的主页布局模板顶部以最大化窗口状态呈现登录portlet(这是一个很好的行为)。
我的问题是我的家庭布局看起来与其他布局模板不同。因此,Portlet 以错误的外观呈现。
有没有办法检查登录 portlet 是否已呈现,以及是否获取视图模式来检查我是否要呈现我的主布局?
到目前为止,这是我用于家庭布局检查的代码。Todo-Comment 是我苦苦挣扎的地方。
<#-- Check whether layout template of current page is home layout. -->
<#assign isHomeLayout = false />
<#if themeDisplay.getLayout().getTypeSettingsProperty("layout-template-id") == "novofleet-home-layout">
<#-- TODO: CHECK FOR LOGIN PORTLET AND WINDOW STATE AND RETURN FALSE IF PORTLET IS RENDERED AS MAXIMIZED -->
<#assign isHomeLayout = true />
</#if>