Как проверить, является ли пользователь isSignedIn в Liferay, вне контекста портлета и темы? - PullRequest
3 голосов
/ 11 января 2012

Мы пытаемся добавить функцию на сайт Liferay, чтобы вошедшие в систему пользователи могли очистить текущую страницу из кэша лака одним простым щелчком мыши.

Итак, мыдобавить добавить кнопку в admin_navigation.vm «очистить кэш», защищенную с помощью

#if ($themeDisplay.isSignedIn())

для передачи URL-адреса purge_me.jsp? url = page-to-purge

Мы хотимразрешить только зарегистрированным пользователям использовать функцию очистки внутри этого JSP.Мы включили инициализацию портала и попробуем проверить:

<%@ include file="/html/portal/init.jsp" %>

<c:if test="<%= themeDisplay.isSignedIn() %>">

Но это не работает.Как получить эту работу простым JSP-способом?Без необходимости в собственных классах, например

Ответы [ 2 ]

2 голосов
/ 11 января 2012

Вы сделали следующий бит кода:

<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %>
<liferay-theme:defineObjects />

Это позволит вам получить доступ к объекту ThemeAdmin в качестве переменной themeAdmin.

0 голосов
/ 11 января 2012

использовать переменную скорости $ is_signed_in вместо $ themeDisplay.isSignedIn (). Вы можете сделать следующее в admin_navigation.vm

#if($is_signed_in)

 then show button for "clear cache"
#else

...stuff....

#end
...