| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- <?php
- public static function printWebMainMenu()
- {
- global $app, $lang;
- ksort($lang->webMenuOrder);
- $currentModule = $app->rawModule;
- $webMainMenus = array();
- foreach($lang->webMenuOrder as $webMainMenuKey)
- {
- list($label, $moduleName, $methodName, $params) = explode('|', $lang->webMainNav->$webMainMenuKey);
- if(!common::hasPriv($moduleName, $methodName)) continue;
- $active = '';
- if($currentModule == $moduleName) $active = '1';
- if(isset($lang->navGroup->$currentModule) and ($lang->navGroup->$currentModule == $moduleName or $lang->navGroup->$currentModule == $webMainMenuKey)) $active = '1';
- if(isset($lang->webMenuGroup[$currentModule]) and $lang->webMenuGroup[$currentModule] == $webMainMenuKey) $active = '1';
- $webMainMenu = new stdclass();
- $webMainMenu->link = helper::createLink($moduleName, $methodName, $params);
- $webMainMenu->active = $active;
- $webMainMenu->title = $label;
- $webMainMenus[$webMainMenuKey] = $webMainMenu;
- }
- $maxBottomMenuCount = common::checkNotCN() ? 6 : 7;
- $i = 0;
- $count = count($webMainMenus);
- foreach($webMainMenus as $webMainMenuKey => $webMainMenu)
- {
- $i++;
- $active = $webMainMenu->active ? 'active' : '';
- if($count <= $maxBottomMenuCount or ($count > ($maxBottomMenuCount) && $i < ($maxBottomMenuCount)))
- {
- echo html::a($webMainMenu->link, "<div class='content'><div class='title'>{$webMainMenu->title}</div></div>", '', "class='item {$active}' data-id='$webMainMenuKey'");
- }
- if($count <= $maxBottomMenuCount) continue;
- if($i == ($maxBottomMenuCount))
- {
- $style = '{"position": "absolute", "top": "auto", "left": "auto", "bottom": 48, "right": 0}';
- echo "<a class='item' data-display='dropdown' data-placement='$style'>";
- echo "<div class='content'>";
- echo "<div class='title'>$lang->more</div>";
- echo "</div>\n</a>";
- echo "<div id='moreApp' class='list dropdown-menu'>";
- }
- if($i >= $maxBottomMenuCount)
- {
- echo "<a class='item text-center $active' href='{$webMainMenu->link}'>";
- echo "<div class='title'>{$webMainMenu->title}</div>";
- echo "</a>\n <div class='divider no-margin'></div>";
- }
- if($i == $count) echo "</div>";
- }
- }
- public static function printWebModuleMenu($moduleName)
- {
- global $app, $lang;
- ksort($lang->$moduleName->webMenuOrder);
- $groupName = isset($lang->webMenuGroup[$moduleName]) ? $lang->webMenuGroup[$moduleName] : '';
- $currentModule = strtolower($app->rawModule);
- $currentMethod = strtolower($app->rawMethod);
- $moduleWebMenus = array();
- foreach($lang->$moduleName->webMenuOrder as $webMenuKey)
- {
- if($groupName)
- {
- $moduleWebMenu = $lang->$groupName->webMenu->$webMenuKey;
- }
- else
- {
- $moduleWebMenu = $lang->$moduleName->webMenu->$webMenuKey;
- }
- $link = is_array($moduleWebMenu) ? $moduleWebMenu['link'] : $moduleWebMenu;
- list($label, $linkModuleName, $linkMethodName, $params) = explode('|', $link);
- if(!common::hasPriv($linkModuleName, $linkMethodName)) continue;
- if(is_string($moduleWebMenu))
- {
- $moduleWebMenu = array();
- $moduleWebMenu['link'] = $link;
- }
- $active = '';
- if($currentModule == $linkModuleName and $currentMethod == strtolower($linkMethodName)) $active = '1';
- if($currentModule == $linkModuleName and isset($moduleWebMenu['alias']) and stripos(",{$moduleWebMenu['alias']},", ",{$currentMethod},") !== false) $active = '1';
- if(isset($moduleWebMenu['subModule']) and strpos(",{$moduleWebMenu['subModule']},", ",{$currentModule},") !== false) $active = '1';
- $moduleWebMenu = new stdclass();
- $moduleWebMenu->link = helper::createLink($linkModuleName, $linkMethodName, $params);
- $moduleWebMenu->active = $active;
- $moduleWebMenu->title = $label;
- $moduleWebMenus[$webMenuKey] = $moduleWebMenu;
- }
- foreach($moduleWebMenus as $webMenuKey => $moduleWebMenu)
- {
- $active = $moduleWebMenu->active ? 'active' : '';
- echo html::a($moduleWebMenu->link, $moduleWebMenu->title, '', "class='$active' data-id='{$webMenuKey}'");
- }
- }
|