예제 #1
0
 /**
  * Create the main menu.
  *
  * @param  string $currentModule
  * @static
  * @access public
  * @return string
  */
 public static function createMainMenu($currentModule)
 {
     global $app, $lang;
     /* Set current module. */
     if (isset($lang->menuGroups->{$currentModule})) {
         $currentModule = $lang->menuGroups->{$currentModule};
     }
     $string = "<ul class='nav navbar-nav'>\n";
     /* Print all main menus. */
     foreach ($lang->menu as $moduleName => $moduleMenu) {
         if ($moduleName == 'feedback') {
             list($label, $module, $method, $vars) = explode('|', $moduleMenu);
             if (!commonModel::isAvailable('message')) {
                 if (commonModel::isAvailable('forum')) {
                     $moduleMenu = "{$label}|forum|admin|tab=feedback";
                 } else {
                     $dao = new dao();
                     $publics = $dao->select('*')->from(TABLE_WX_PUBLIC)->fetchAll('id');
                     if (!empty($publics)) {
                         $moduleMenu = "{$label}|wechat|message|mode=replied&replied=0";
                     }
                 }
             }
         }
         $class = $moduleName == $currentModule ? " class='active'" : '';
         list($label, $module, $method, $vars) = explode('|', $moduleMenu);
         if ($module != 'user' and $module != 'article' and !commonModel::isAvailable($module)) {
             continue;
         }
         /* Just whether article/blog/page menu should shown. */
         if (!commonModel::isAvailable('article') && $vars == 'type=article') {
             continue;
         }
         if (!commonModel::isAvailable('blog') && $vars == 'type=blog') {
             continue;
         }
         if (!commonModel::isAvailable('page') && $vars == 'type=page') {
             continue;
         }
         if (commonModel::hasPriv($module, $method)) {
             $link = helper::createLink($module, $method, $vars);
             $string .= "<li{$class}><a href='{$link}'>{$label}</a></li>\n";
         }
     }
     $string .= "</ul>\n";
     return $string;
 }