예제 #1
0
 /**
  * Save menu
  * @param array $items
  */
 public function save_menu($items)
 {
     if (!isset($menu_items)) {
         $menu_items = array();
     }
     if (!isset($external_menu_items)) {
         $external_menu_items = array();
     }
     if (!isset($items)) {
         $items = array();
     }
     $before_dashboard = true;
     $i = 0;
     foreach ($items['menu_name'] as $item) {
         if ($items['menu_name'][$i] != '') {
             $menu_items[$i]['name'] = $items['menu_name'][$i];
             $menu_items[$i]['icon_name'] = $items['menu_icon'][$i];
             $menu_items[$i]['url'] = $items['menu_url'][$i];
             $menu_items[$i]['m'] = $items['menu_module'][$i] != '' ? $items['menu_module'][$i] : "webnpro_menu_module_" . module_webnpro_menu_editor::slug($menu_item['name']);
             $menu_items[$i]['p'] = $items['menu_page'][$i];
             if ($menu_items[$i]['m'] == 'dashboard') {
                 $before_dashboard = false;
             }
             if ($before_dashboard) {
                 $menu_items[$i]['order'] = $i - 9999;
             } else {
                 $menu_items[$i]['order'] = $i;
             }
             if ($menu_items[$i]['url'] != '' && $menu_items[$i]['m'] != 'dashboard') {
                 $external_menu_items[] = $menu_items[$i];
             }
             // Save menu order
             module_config::save_config('_menu_order_' . $menu_items[$i]['m'], $i);
             $i++;
         }
     }
     // Create new custom menu modules
     if (count($external_menu_items)) {
         module_webnpro_menu_editor::create_menu_plugins($external_menu_items);
         header('Location: ' . $_SERVER['REQUEST_URI']);
     }
     /* END public function save_menu($items) */
 }