예제 #1
0
 function website_modules($menu_type = VERTICAL_MENU)
 {
     import('modules/modules_discovery_service');
     $modules_menu = new LinksMenu('PHPBoost', '/', '', $menu_type);
     $modules_discovery_service = new ModulesDiscoveryService();
     $modules = $modules_discovery_service->get_all_modules();
     $sorted_modules = array();
     foreach ($modules as $module) {
         $sorted_modules[$module->get_name()] = $module;
     }
     ksort($sorted_modules);
     foreach ($sorted_modules as $module) {
         $infos = $module->get_infos();
         if (!empty($infos['infos']) && !empty($infos['infos']['starteable_page'])) {
             $img = '';
             $img_url = PATH_TO_ROOT . '/' . $module->get_id() . '/' . $module->get_id();
             import('io/filesystem/file');
             foreach (array('_mini.png', '_mini.gif', '_mini.jpg') as $extension) {
                 $file = new File($img_url . $extension);
                 if ($file->exists()) {
                     $img = '/' . $module->get_id() . '/' . $file->get_name();
                     break;
                 }
             }
             $modules_menu->add(new LinksMenuLink($module->get_name(), '/' . $module->get_id() . '/' . $infos['infos']['starteable_page'], $img));
         }
     }
     return $modules_menu;
 }