protected function getCategoryData()
 {
     $categories = array();
     $modules = Module::getModuleObjects();
     foreach ($modules as $module) {
         $moduleSubMenuItems = MenuUtil::getAccessibleConfigureSubMenuByCurrentUser(get_class($module));
         if ($module->isEnabled() && count($moduleSubMenuItems) > 0) {
             foreach ($moduleSubMenuItems as $subMenuItem) {
                 if (!empty($subMenuItem['category']) && $subMenuItem['category'] == ZurmoModule::ADMINISTRATION_CATEGORY_PLUGINS) {
                     assert('isset($subMenuItem["titleLabel"])');
                     assert('isset($subMenuItem["descriptionLabel"])');
                     assert('isset($subMenuItem["route"])');
                     $categories[$subMenuItem['category']][] = $subMenuItem;
                 }
             }
         }
     }
     return $categories;
 }
 protected function getCategoryData()
 {
     $categories = array();
     $module = new EmailMessagesModule('EmailMessagesModule', false);
     $moduleSubMenuItems = MenuUtil::getAccessibleConfigureSubMenuByCurrentUser('EmailMessagesModule');
     if ($module->isEnabled() && count($moduleSubMenuItems) > 0) {
         foreach ($moduleSubMenuItems as $subMenuItem) {
             if (!empty($subMenuItem['category'])) {
                 assert('isset($subMenuItem["titleLabel"])');
                 assert('isset($subMenuItem["descriptionLabel"])');
                 assert('isset($subMenuItem["route"])');
                 $categories[$subMenuItem['category']][] = $subMenuItem;
             } else {
                 throw new NotSupportedException();
             }
         }
     }
     return $categories;
 }