Esempio n. 1
0
 /**
  * @depends testGetAccessibleShortcutsCreateMenuByCurrentUser
  */
 public function testGetAccessibleConfigureMenuByCurrentUser()
 {
     Yii::app()->user->userModel = User::getByUsername('super');
     $menu = MenuUtil::getAccessibleConfigureMenuByCurrentUser('GroupsModule');
     $this->assertEquals(1, count($menu));
     Yii::app()->user->userModel = User::getByUsername('billy');
     $menu = MenuUtil::getAccessibleConfigureMenuByCurrentUser('GroupsModule');
     $this->assertEquals(0, count($menu));
     $bill = User::getByUsername('billy');
     $bill->setRight('GroupsModule', GroupsModule::RIGHT_ACCESS_GROUPS);
     $saved = $bill->save();
     $this->assertTrue($saved);
     $menu = MenuUtil::getAccessibleConfigureMenuByCurrentUser('GroupsModule');
     $this->assertEquals(1, count($menu));
 }
 protected function getCategoryData()
 {
     $categories = array();
     $modules = Module::getModuleObjects();
     foreach ($modules as $module) {
         $moduleMenuItems = MenuUtil::getAccessibleConfigureMenuByCurrentUser(get_class($module));
         if ($module->isEnabled() && count($moduleMenuItems) > 0) {
             foreach ($moduleMenuItems as $menuItem) {
                 if (!empty($menuItem['category'])) {
                     assert('isset($menuItem["titleLabel"])');
                     assert('isset($menuItem["descriptionLabel"])');
                     assert('isset($menuItem["route"])');
                     $categories[$menuItem['category']][] = $menuItem;
                 } else {
                     throw new NotSupportedException();
                 }
             }
         }
     }
     return $categories;
 }