You are here

function _menu_minipanels_enable_menus in Menu Minipanels 7

Same name and namespace in other branches
  1. 6 menu_minipanels.install \_menu_minipanels_enable_menus()
  2. 7.2 menu_minipanels.install \_menu_minipanels_enable_menus()

Allow each menu to be menu_minipanel-ized, with some exceptions.

3 calls to _menu_minipanels_enable_menus()
menu_minipanels_install in ./menu_minipanels.install
Implements hook_install().
menu_minipanels_update_7102 in ./menu_minipanels.install
Change the menu configurations to the new structure.
menu_minipanels_update_7105 in ./menu_minipanels.install
Ensure that the menus are correctly enabled.

File

./menu_minipanels.install, line 123
Installation and update scripts for Menu_MiniPanels.

Code

function _menu_minipanels_enable_menus() {

  // Ignore the Navigation, Admin Menu and Devel menus, those have to be
  // manually enabled.
  $ignore_menus = array(
    'navigation',
    'admin_menu',
    'devel',
  );
  foreach ($ignore_menus as $menu) {
    variable_set('menu_minipanels_' . $menu . '_enabled', FALSE);
  }

  // Enable all of the custom menus that isn't already disabled. Only work with
  // the custom menus, don't look at the shortcut sets.
  $result = db_query("SELECT menu_name FROM {menu_custom} ORDER BY title", array(), array(
    'fetch' => PDO::FETCH_ASSOC,
  ));
  foreach ($result as $menu) {
    if (!in_array($menu['menu_name'], $ignore_menus)) {
      variable_set('menu_minipanels_' . $menu['menu_name'] . '_enabled', TRUE);
    }
  }
}