2014-07-05 23 views
0

我正在寫一個Joomla 3.x組件,我現在搜索從一個用戶(它被分配給多個用戶組)的'ID '來自具有'最高級別'的用戶組。joomla 3:獲得'最高'級別的用戶組ID'

示例: - 用戶是註冊管理員和經理以及其他一些組的成員。

我可以在第一步中得到「全部」分配的用戶組ID:

jimport('joomla.access.access'); 
$groups = JAccess::getGroupsByUser($user->id);

但我怎麼能現在得到的「身份證」從用戶羣與「最高」水平?我在覈心文件中找不到這種方法。

編輯: 我在我的組件中添加了一個後端部件,可以爲每個用戶組定義許多特殊設置。但是我還沒有想到,當用戶是多個組中的成員時,我可以如何在前端獲得正確的設置。在這種情況下,我需要的不是Joomla資產表中的任何「權限」。只有'最重要'組的'ID'。檢查每個組的'父'ID是否有用?或者使用getGroupPath($ groupId)?

+1

這不是ACL的真正作用......它更多地關於權限,即用戶可以做什麼......由於這個問題是關於Joomla的具體實現細節,我會試着問[Joomla Q&A StackExhange網站](http:// joomla.stackexchange.com) – Craig

+0

除非你需要某種嚴格的等級結構,否則沒有最高的東西。有人可以對類別x具有刪除權限,但不能對類別y編輯權限。即使刪除和編輯被認爲是正交的意思,它可以給一個組只能刪除和不編輯。 – Elin

+0

哼。我在我的組件中添加了一個後端部分,可以爲每個用戶組定義許多特殊設置。但是我還沒有想到,當用戶是多個組中的成員時,我可以如何在前端獲得正確的設置。好吧,默認組似乎很容易,但是當它存在其他(新創建的)組時,則不會。 – mikael

回答

0

由於$ groups是一個數組: $ highestLevel = max($ groups); 應該做的伎倆!