1. 程式人生 > 實用技巧 >讓Liferay中dockbar基於許可權顯示

讓Liferay中dockbar基於許可權顯示

參考:http://www.huqiwen.com/2016/06/07/liferay-dockbar-permission/

Liferay是上方的那條我們將他稱為dockbar,在dockbar上可以操作頁面的編輯、portket的新增、站點的跳轉、控制面板的入口等。

有些場景下我們可能不想讓dockbar顯示,或者是想讓他基於許可權顯示。

dockbar的定義是在主題的templates/portal_normal.vm裡面,我們在裡面可以看到如下的程式碼:

#dockbar()

或者

#if ($is_signed_in)
 #dockbar()
#end

前者是dockbar一直顯示,後才表示使用者登入後顯示,如果沒有登入只在右上角一個登入的連結。

如果我們想只有超級管理員顯示,者使用如下程式碼:

#if ($permissionChecker.isOmniadmin())
 #dockbar()
#end

其中的$permissionChecker.isOmniadmin()來判斷是不是超級管理員,如果是則顯示,如果不是則不顯示。

同樣的我們基於permissionChecker可以做更多的許可權判斷。

$permissionChecker.isOrganizationAdmin()是否是組織機構管理員;

$permissionChecker.isGroupAdmin是否是站點管理員;

$permissionChecker.isGroupMember是否是當前站點的成員;

$permissionChecker.isCheckGuest是否是未登入使用者;

通過這些的組合使用,可以根據自己的需要來自由的控制dockbar的顯示。