/**
  * Main
  */
 public static function main()
 {
     // Get menu table
     MenuAdmin::$menu = new Table('menu');
     // Get pages table
     $pages = new Table('pages');
     // Create target array
     $menu_item_target_array = array('' => '', '_blank' => '_blank', '_parent' => '_parent', '_top' => '_top');
     // Create order array
     $menu_item_order_array = range(0, 40);
     // Check for get actions
     // ---------------------------------------------
     if (Request::get('action')) {
         // Switch actions
         // -----------------------------------------
         switch (Request::get('action')) {
             // Edit menu item
             // -----------------------------------------
             case "edit":
                 // Select item
                 $item = MenuAdmin::$menu->select('[id="' . Request::get('item_id') . '"]', null);
                 $menu_item_name = $item['name'];
                 $menu_item_link = $item['link'];
                 $menu_item_category = $item['category'];
                 $menu_item_target = $item['target'];
                 $menu_item_order = $item['order'];
                 $errors = array();
                 // Edit current menu item
                 if (Request::post('menu_add_item')) {
                     if (Security::check(Request::post('csrf'))) {
                         if (trim(Request::post('menu_item_name')) == '') {
                             if (Request::post('menu_item_name')) {
                                 $menu_item_name = Request::post('menu_item_name');
                             } else {
                                 $menu_item_name = $item['name'];
                             }
                             if (Request::post('menu_item_link')) {
                                 $menu_item_link = Request::post('menu_item_link');
                             } else {
                                 $menu_item_link = $item['link'];
                             }
                             if (Request::post('menu_item_category')) {
                                 $menu_item_category = Request::post('menu_item_category');
                             } else {
                                 $menu_item_category = $item['category'];
                             }
                             if (Request::post('menu_item_target')) {
                                 $menu_item_target = Request::post('menu_item_target');
                             } else {
                                 $menu_item_target = $item['target'];
                             }
                             if (Request::post('menu_item_order')) {
                                 $menu_item_order = Request::post('menu_item_order');
                             } else {
                                 $menu_item_order = $item['order'];
                             }
                             $errors['menu_item_name_empty'] = __('Required field', 'menu');
                         }
                         // Update menu item
                         if (count($errors) == 0) {
                             MenuAdmin::$menu->update(Request::get('item_id'), array('name' => Request::post('menu_item_name'), 'link' => Request::post('menu_item_link'), 'category' => Security::safeName(Request::post('menu_item_category'), '-', true), 'target' => Request::post('menu_item_target'), 'order' => Request::post('menu_item_order')));
                             Request::redirect('index.php?id=menu');
                         }
                     } else {
                         die('Request was denied because it contained an invalid security token. Please refresh the page and try again.');
                     }
                 }
                 // Display view
                 View::factory('box/menu/views/backend/edit')->assign('menu_item_name', $menu_item_name)->assign('menu_item_link', $menu_item_link)->assign('menu_item_category', $menu_item_category)->assign('menu_item_target', $menu_item_target)->assign('menu_item_order', $menu_item_order)->assign('menu_item_target_array', $menu_item_target_array)->assign('menu_item_order_array', $menu_item_order_array)->assign('errors', $errors)->assign('categories', MenuAdmin::getCategories())->assign('pages_list', MenuAdmin::getPages())->assign('components_list', MenuAdmin::getComponents())->display();
                 break;
                 // Add menu item
                 // -----------------------------------------
             // Add menu item
             // -----------------------------------------
             case "add":
                 $menu_item_name = '';
                 $menu_item_link = '';
                 $menu_item_category = '';
                 $menu_item_target = '';
                 $menu_item_order = '';
                 $errors = array();
                 // Get current category
                 $menu_item_category = $current_category = Request::get('category') ? Request::get('category') : '';
                 // Add new menu item
                 if (Request::post('menu_add_item')) {
                     if (Security::check(Request::post('csrf'))) {
                         if (trim(Request::post('menu_item_name')) == '') {
                             if (Request::post('menu_item_name')) {
                                 $menu_item_name = Request::post('menu_item_name');
                             } else {
                                 $menu_item_name = '';
                             }
                             if (Request::post('menu_item_link')) {
                                 $menu_item_link = Request::post('menu_item_link');
                             } else {
                                 $menu_item_link = '';
                             }
                             if (Request::post('menu_item_category')) {
                                 $menu_item_category = Request::post('menu_item_category');
                             } else {
                                 $menu_item_category = $current_category;
                             }
                             if (Request::post('menu_item_target')) {
                                 $menu_item_target = Request::post('menu_item_target');
                             } else {
                                 $menu_item_target = '';
                             }
                             if (Request::post('menu_item_order')) {
                                 $menu_item_order = Request::post('menu_item_order');
                             } else {
                                 $menu_item_order = '';
                             }
                             $errors['menu_item_name_empty'] = __('Required field', 'menu');
                         }
                         // Insert new menu item
                         if (count($errors) == 0) {
                             MenuAdmin::$menu->insert(array('name' => Request::post('menu_item_name'), 'link' => Request::post('menu_item_link'), 'category' => Security::safeName(Request::post('menu_item_category'), '-', true), 'target' => Request::post('menu_item_target'), 'order' => Request::post('menu_item_order')));
                             Request::redirect('index.php?id=menu');
                         }
                     } else {
                         die('Request was denied because it contained an invalid security token. Please refresh the page and try again.');
                     }
                 }
                 // Display view
                 View::factory('box/menu/views/backend/add')->assign('menu_item_name', $menu_item_name)->assign('menu_item_link', $menu_item_link)->assign('menu_item_category', $menu_item_category)->assign('menu_item_target', $menu_item_target)->assign('menu_item_order', $menu_item_order)->assign('menu_item_target_array', $menu_item_target_array)->assign('menu_item_order_array', $menu_item_order_array)->assign('errors', $errors)->assign('categories', MenuAdmin::getCategories())->assign('pages_list', MenuAdmin::getPages())->assign('components_list', MenuAdmin::getComponents())->display();
                 break;
         }
     } else {
         // Delete menu item
         if (Request::get('delete_item')) {
             MenuAdmin::$menu->delete((int) Request::get('delete_item'));
         }
         // Display view
         View::factory('box/menu/views/backend/index')->assign('categories', MenuAdmin::getCategories())->assign('menu', MenuAdmin::$menu)->display();
     }
 }
示例#2
0
<?php

require_once __DIR__ . '/../sys/MenuAdmin.class.php';
require_once __DIR__ . '/../sys/ModulesAdmin.class.php';
$amenu = new MenuAdmin($db, $sys_menu);
$amods = new ModulesAdmin($db);
//Load data for lists
$opts = $amenu->make_SelectOptStr();
$menuSelect = $opts['main_menu'];
$subSelect = $opts['sub_menu'];
switch ($getset->header(FORM_ACTION)) {
    case FORM_ACTION_SAVE:
        $amods->set_Input("menu_id", $getset->header("menu_id"));
        $amods->set_Input("package_folder", $getset->header("package"));
        $amods->set_Input("module_folder", $getset->header("module"));
        $amods->set_Input("module_index", $getset->header("index"));
        $amods->set_Input("module_name", $getset->header("name"));
        //$amods->make_Module($getset->header("menu_id"), $getset->header("package"), $getset->header("module"), $getset->header("index"),$getset->header("name"));
        $amods->make_Module();
        break;
    case FORM_ACTION_DELETE:
        $amods->delete_Module($getset->header("delete_id"));
        break;
    default:
        //Do nothing
        break;
}
//Include the varius option forms
require_once 'create.php';
require_once 'delete.php';
示例#3
0
<?php

require_once __DIR__ . '/../sys/MenuAdmin.class.php';
$amenu = new MenuAdmin($db, $sys_menu);
//Sets a standard value for sub_id if none is provided by form
$getset->setStandardValue("sub_id", "0");
switch ($getset->header(FORM_ACTION)) {
    //Create new menu
    case FORM_ACTION_SAVE:
        $amenu->set_Input("sub_id", $getset->header("sub_id"));
        $amenu->set_Input("name", $getset->header("menu_name"));
        $amenu->set_Input("level", $getset->header("level"));
        $amenu->make_Menu();
        break;
        //Delete menu
    //Delete menu
    case FORM_ACTION_DELETE:
        $amenu->delete($getset->header("delete_id"));
        break;
    case FORM_ACTION_UPDATE:
        $amenu->set_Input("name", $getset->header("menu_name"));
        $amenu->set_Input("level", $getset->header("level"));
        $amenu->update_Menu($getset->header("id"));
        break;
    default:
        //Do nothing
        break;
}
///////////////////////////////////
$levels = "";
//TODO
示例#4
0
<?php

// no direct access
defined('PARENT_FILE') or die('Restricted access');
$menu = $this->registry->db->getResult('item_id, menu_type, item', 'menu_items', $this->registry->core . 'menu_types', array('where' => "item='" . $params['menu'] . "'"), false);
if ($menu) {
    $params['menu_category_id'] = $menu->item_id;
    // Start Navibar class.
    $navibar = new MenuAdmin($this->registry, $params);
    $module = $navibar->getMenu($menu->item_id, $menu->item, $menu->menu_type);
    $this->module_wrap->appendChild($module);
    unset($navibar);
}