function panelizer_menu in Panelizer 6
Same name and namespace in other branches
- 7.3 panelizer.module \panelizer_menu()
- 7 panelizer.module \panelizer_menu()
- 7.2 panelizer.module \panelizer_menu()
Implementation of hook_menu().
File
- ./
panelizer.module, line 37 - panelizer.module
Code
function panelizer_menu() {
// Safety: go away if CTools is not at an appropriate version.
if (!defined('PANELS_REQUIRED_CTOOLS_API') || !module_invoke('ctools', 'api_version', PANELS_REQUIRED_CTOOLS_API)) {
return array();
}
// Configure settings pages.
$settings_base = array(
'access arguments' => array(
'administer panelizer',
),
'file' => 'includes/admin.inc',
);
$items['admin/settings/panelizer'] = array(
'title' => 'Panelizer',
'description' => 'Configure panelizer availability and defaults',
'page callback' => 'drupal_get_form',
'page arguments' => array(
'panelizer_settings_page_form',
),
'type' => MENU_NORMAL_ITEM,
) + $settings_base;
$items['admin/settings/panelizer/%/%'] = array(
'title callback' => 'panelizer_default_title_callback',
'title arguments' => array(
3,
4,
),
'page callback' => 'panelizer_allowed_content_page',
'page arguments' => array(
3,
4,
),
'type' => MENU_CALLBACK,
) + $settings_base;
$items['admin/settings/panelizer/%/%/allowed'] = array(
'title' => 'Available content',
'page callback' => 'panelizer_allowed_content_page',
'page arguments' => array(
3,
4,
),
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => -10,
) + $settings_base;
$items['admin/settings/panelizer/%/%/list'] = array(
'title' => 'List defaults',
'access callback' => 'panelizer_has_choice_callback',
'access arguments' => array(
3,
4,
'',
),
'page callback' => 'panelizer_default_list_page',
'page arguments' => array(
3,
4,
),
'type' => MENU_LOCAL_TASK,
'weight' => -6,
) + $settings_base;
$tabs_base = array(
'access callback' => 'panelizer_has_no_choice_callback',
'access arguments' => array(
3,
4,
),
'page arguments' => array(
3,
4,
'default',
),
'type' => MENU_LOCAL_TASK,
'file' => 'includes/admin.inc',
);
$items['admin/settings/panelizer/%/%/settings'] = array(
'title' => 'Settings',
'page callback' => 'panelizer_default_settings_page',
'weight' => -5,
) + $tabs_base;
$items['admin/settings/panelizer/%/%/context'] = array(
'title' => 'Contexts',
'page callback' => 'panelizer_default_context_page',
'weight' => -4,
) + $tabs_base;
$items['admin/settings/panelizer/%/%/layout'] = array(
'title' => 'Layout',
'page callback' => 'panelizer_default_layout_page',
'weight' => -3,
) + $tabs_base;
$items['admin/settings/panelizer/%/%/content'] = array(
'title' => 'Content',
'page callback' => 'panelizer_default_content_page',
'weight' => -2,
) + $tabs_base;
$subtabs_base = array(
'access callback' => 'panelizer_has_choice_callback',
'access arguments' => array(
3,
4,
5,
),
'page arguments' => array(
3,
4,
5,
),
'type' => MENU_LOCAL_TASK,
'file' => 'includes/admin.inc',
);
$items['admin/settings/panelizer/%/%/%'] = array(
'title' => 'Settings',
'page callback' => 'panelizer_default_settings_page',
'title callback' => 'panelizer_default_name_title_callback',
'type' => MENU_CALLBACK,
) + $subtabs_base;
$items['admin/settings/panelizer/%/%/%/settings'] = array(
'title' => 'Settings',
'page callback' => 'panelizer_default_settings_page',
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => -5,
) + $subtabs_base;
$items['admin/settings/panelizer/%/%/%/context'] = array(
'title' => 'Contexts',
'page callback' => 'panelizer_default_context_page',
'weight' => -4,
) + $subtabs_base;
$items['admin/settings/panelizer/%/%/%/layout'] = array(
'title' => 'Layout',
'page callback' => 'panelizer_default_layout_page',
'weight' => -3,
) + $subtabs_base;
$items['admin/settings/panelizer/%/%/%/content'] = array(
'title' => 'Content',
'page callback' => 'panelizer_default_content_page',
'weight' => -2,
) + $subtabs_base;
// Configure node editing pages
$base = array(
'access callback' => 'panelizer_edit_node_callback',
'access arguments' => array(
1,
),
'page arguments' => array(
1,
),
'type' => MENU_LOCAL_TASK,
'file' => 'includes/node.inc',
);
$items['node/%node/panelizer'] = array(
'title' => 'Panelizer',
// make sure this is accessible to panelize nodes with no defaults.
'access arguments' => array(
1,
FALSE,
),
'page callback' => 'panelizer_edit_node_settings_page',
'weight' => 11,
) + $base;
$items['node/%node/panelizer/settings'] = array(
'title' => 'Settings',
'page callback' => 'panelizer_edit_node_settings_page',
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => 11,
) + $base;
$items['node/%node/panelizer/context'] = array(
'title' => 'Context',
'page callback' => 'panelizer_edit_node_context_page',
'weight' => 12,
) + $base;
$items['node/%node/panelizer/layout'] = array(
'title' => 'Layout',
'page callback' => 'panelizer_edit_node_layout_page',
'weight' => 13,
) + $base;
$items['node/%node/panelizer/content'] = array(
'title' => 'Content',
'page callback' => 'panelizer_edit_node_content_page',
'weight' => 14,
) + $base;
return $items;
}