Example #1
0
 /**
  * Regenerate xe admin default menu
  * @return void
  */
 public function createXeAdminMenu()
 {
     //insert menu
     $args = new stdClass();
     $args->title = $this->adminMenuName;
     $menuSrl = $args->menu_srl = getNextSequence();
     $args->listorder = $args->menu_srl * -1;
     $output = executeQuery('menu.insertMenu', $args);
     Context::set('admin_menu_srl', $menuSrl);
     unset($args);
     // gnb item create
     $gnbList = array('dashboard', 'menu', 'user', 'content', 'configuration', 'advanced');
     foreach ($gnbList as $key => $value) {
         //insert menu item
         $args = new stdClass();
         $args->menu_srl = $menuSrl;
         $args->menu_item_srl = getNextSequence();
         $args->name = '{$lang->menu_gnb[\'' . $value . '\']}';
         if ($value == 'dashboard') {
             $args->url = 'index.php?module=admin';
         } else {
             $args->url = '#';
         }
         $args->listorder = -1 * $args->menu_item_srl;
         $output = executeQuery('menu.insertMenuItem', $args);
     }
     $oMenuAdminModel = getAdminModel('menu');
     $columnList = array('menu_item_srl', 'name');
     $output = $oMenuAdminModel->getMenuItems($menuSrl, 0, $columnList);
     if (is_array($output->data)) {
         foreach ($output->data as $key => $value) {
             preg_match('/\\{\\$lang->menu_gnb\\[(.*?)\\]\\}/i', $value->name, $m);
             $gnbDBList[$m[1]] = $value->menu_item_srl;
         }
     }
     unset($args);
     $gnbModuleList = array(0 => array('module' => 'menu', 'subMenu' => array('siteMap', 'siteDesign')), 1 => array('module' => 'member', 'subMenu' => array('userList', 'userSetting', 'userGroup')), 2 => array('module' => 'document', 'subMenu' => array('document')), 3 => array('module' => 'comment', 'subMenu' => array('comment')), 4 => array('module' => 'file', 'subMenu' => array('file')), 5 => array('module' => 'poll', 'subMenu' => array('poll')), 6 => array('module' => 'rss', 'subMenu' => array('rss')), 7 => array('module' => 'module', 'subMenu' => array('multilingual')), 8 => array('module' => 'importer', 'subMenu' => array('importer')), 9 => array('module' => 'trash', 'subMenu' => array('trash')), 10 => array('module' => 'autoinstall', 'subMenu' => array('easyInstall')), 11 => array('module' => 'layout', 'subMenu' => array('installedLayout')), 12 => array('module' => 'module', 'subMenu' => array('installedModule')), 13 => array('module' => 'widget', 'subMenu' => array('installedWidget')), 14 => array('module' => 'addon', 'subMenu' => array('installedAddon')), 15 => array('module' => 'editor', 'subMenu' => array('editor')), 16 => array('module' => 'spamfilter', 'subMenu' => array('spamFilter')), 17 => array('module' => 'admin', 'subMenu' => array('adminConfigurationGeneral', 'adminConfigurationFtp', 'adminMenuSetup')), 18 => array('module' => 'file', 'subMenu' => array('fileUpload')), 19 => array('module' => 'module', 'subMenu' => array('filebox')), 20 => array('module' => 'point', 'subMenu' => array('point')));
     $oMemberModel = getModel('member');
     $output = $oMemberModel->getAdminGroup(array('group_srl'));
     $adminGroupSrl = $output->group_srl;
     // gnb sub item create
     // common argument setting
     $args = new stdClass();
     $args->menu_srl = $menuSrl;
     $args->open_window = 'N';
     $args->expand = 'N';
     $args->normal_btn = '';
     $args->hover_btn = '';
     $args->active_btn = '';
     $args->group_srls = $adminGroupSrl;
     $oModuleModel = getModel('module');
     foreach ($gnbModuleList as $key => $value) {
         if (is_array($value['subMenu'])) {
             $moduleActionInfo = $oModuleModel->getModuleActionXml($value['module']);
             foreach ($value['subMenu'] as $key2 => $value2) {
                 $gnbKey = "'" . $this->_getGnbKey($value2) . "'";
                 //insert menu item
                 $args->menu_item_srl = getNextSequence();
                 $args->parent_srl = $gnbDBList[$gnbKey];
                 $args->name = '{$lang->menu_gnb_sub[\'' . $value2 . '\']}';
                 $args->url = 'index.php?module=admin&act=' . $moduleActionInfo->menu->{$value2}->index;
                 $args->listorder = -1 * $args->menu_item_srl;
                 $output = executeQuery('menu.insertMenuItem', $args);
             }
         }
     }
     $oMenuAdminConroller = getAdminController('menu');
     $oMenuAdminConroller->makeXmlFile($menuSrl);
     // does not recreate lang cache sometimes
     FileHandler::RemoveFilesInDir('./files/cache/lang');
     FileHandler::RemoveFilesInDir('./files/cache/menu/admin_lang');
 }
Example #2
0
 /**
  * Regenerate xe admin default menu
  * @return void
  */
 public function createXeAdminMenu()
 {
     //insert menu
     $args = new stdClass();
     $args->title = $this->adminMenuName;
     $menuSrl = $args->menu_srl = getNextSequence();
     $args->listorder = $args->menu_srl * -1;
     $output = executeQuery('menu.insertMenu', $args);
     Context::set('admin_menu_srl', $menuSrl);
     unset($args);
     // gnb item create
     $gnbList = array('dashboard', 'menu', 'user', 'content', 'configuration', 'advanced');
     foreach ($gnbList as $key => $value) {
         //insert menu item
         $args = new stdClass();
         $args->menu_srl = $menuSrl;
         $args->menu_item_srl = getNextSequence();
         $args->name = '{$lang->menu_gnb[\'' . $value . '\']}';
         if ($value == 'dashboard') {
             $args->url = 'index.php?module=admin';
         } else {
             $args->url = '#';
         }
         $args->listorder = -1 * $args->menu_item_srl;
         $output = executeQuery('menu.insertMenuItem', $args);
     }
     $oMenuAdminModel = getAdminModel('menu');
     $columnList = array('menu_item_srl', 'name');
     $output = $oMenuAdminModel->getMenuItems($menuSrl, 0, $columnList);
     if (is_array($output->data)) {
         foreach ($output->data as $key => $value) {
             preg_match('/\\{\\$lang->menu_gnb\\[(.*?)\\]\\}/i', $value->name, $m);
             $gnbDBList[$m[1]] = $value->menu_item_srl;
         }
     }
     unset($args);
     $gnbMenuStructure = array('menu' => array('menu.siteMap', 'menu.siteDesign'), 'user' => array('member.userList', 'member.userSetting', 'member.userGroup', 'point.point'), 'content' => array('board.board', 'document.document', 'comment.comment', 'file.file', 'poll.poll', 'editor.editor', 'importer.importer', 'spamfilter.spamFilter', 'trash.trash'), 'configuration' => array('admin.adminConfigurationGeneral', 'admin.adminConfigurationFtp', 'admin.adminMenuSetup', 'file.fileUpload', 'module.filebox'), 'advanced' => array('autoinstall.easyInstall', 'layout.installedLayout', 'module.installedModule', 'addon.installedAddon', 'widget.installedWidget', 'module.multilingual', 'rss.rss'));
     $oMemberModel = getModel('member');
     $output = $oMemberModel->getAdminGroup(array('group_srl'));
     $adminGroupSrl = $output->group_srl;
     // gnb common argument setting
     $args = new stdClass();
     $args->menu_srl = $menuSrl;
     $args->open_window = 'N';
     $args->expand = 'N';
     $args->normal_btn = '';
     $args->hover_btn = '';
     $args->active_btn = '';
     $args->group_srls = $adminGroupSrl;
     $oModuleModel = getModel('module');
     $moduleActionInfo = array();
     foreach ($gnbMenuStructure as $key => $items) {
         foreach ($items as $item) {
             list($module_name, $menu_name) = explode('.', $item);
             if (!isset($moduleActionInfo[$module_name])) {
                 $moduleActionInfo[$module_name] = $oModuleModel->getModuleActionXml($module_name);
             }
             $args->menu_item_srl = getNextSequence();
             $args->parent_srl = $gnbDBList["'" . $key . "'"];
             $args->name = '{$lang->menu_gnb_sub[\'' . $menu_name . '\']}';
             $args->url = 'index.php?module=admin&act=' . $moduleActionInfo[$module_name]->menu->{$menu_name}->index;
             $args->listorder = -1 * $args->menu_item_srl;
             $output = executeQuery('menu.insertMenuItem', $args);
         }
     }
     $oMenuAdminConroller = getAdminController('menu');
     $oMenuAdminConroller->makeXmlFile($menuSrl);
     // does not recreate lang cache sometimes
     FileHandler::RemoveFilesInDir('./files/cache/lang');
     FileHandler::RemoveFilesInDir('./files/cache/menu/admin_lang');
 }