1.20.x installer.module | installer_menu() |
Implements hook_menu().
File
- modules/
installer/ installer.module, line 23 - Handles installation and updates of contributed projects.
Code
function installer_menu() {
$items = array();
// Add the tabs for installing modules, themes, and layout templates.
$paths = array(
'module' => 'admin/modules',
'theme' => 'admin/appearance',
'layout' => 'admin/structure/layouts',
'driver' => 'admin/config/drivers',
);
foreach ($paths as $context => $path) {
$items[$path . '/install'] = array(
'page callback' => 'installer_browser_page',
'page arguments' => array($context),
'access callback' => 'installer_install_access',
'weight' => 4,
'type' => MENU_LOCAL_TASK,
'file' => 'installer.pages.inc',
);
// @deprecated: Remove these backwards-compatibility redirects in 2.0.
$items[$path . '/update'] = array(
'page callback' => 'system_redirect_deprecated_page',
'page arguments' => array('admin/config/system/updates'),
'access arguments' => array('installer_update_access'),
'type' => MENU_CALLBACK,
);
}
// Add menu titles with += for the translation extractor.
$items['admin/modules/install'] += array('title' => 'Install new modules');
$items['admin/appearance/install'] += array('title' => 'Install new themes');
$items['admin/structure/layouts/install'] += array('title' => 'Install new layouts');
$items['admin/config/system/updates'] = array(
'title' => 'System updates',
'description' => 'Review and install updates for Backdrop core, modules, themes, and layouts..',
'page callback' => 'backdrop_get_form',
'page arguments' => array('installer_manager_update_form'),
'access callback' => 'installer_update_access',
'file' => 'installer.manager.inc',
);
$items['admin/config/drivers/install'] += array('title' => 'Install new drivers');
$items['admin/config/drivers/update'] += array('title' => 'Update drivers');
$items['admin/installer/manual'] = array(
'page callback' => 'backdrop_get_form',
'page arguments' => array('installer_manager_install_form'),
'access callback' => 'installer_install_access',
'access arguments' => array(),
'weight' => 25,
'type' => MENU_CALLBACK,
'file' => 'installer.manager.inc',
);
$items['admin/update/ready'] = array(
'title' => 'Ready to update',
'page callback' => 'backdrop_get_form',
'page arguments' => array('installer_manager_update_ready_form'),
'access callback' => 'installer_install_access',
'access arguments' => array(),
'type' => MENU_CALLBACK,
'file' => 'installer.manager.inc',
);
$items['admin/installer/bulk/%'] = array(
'title' => 'Install by names',
'description' => 'Install multiple projects by listing machine names.',
'page callback' => 'backdrop_get_form',
'page arguments' => array('installer_browser_bulk_install_form', 3),
'access callback' => 'installer_install_access',
'file' => 'installer.pages.inc',
'type' => MENU_CALLBACK,
);
$items['admin/installer/project/%'] = array(
'title' => 'Project details',
'description' => 'Project details',
'page callback' => 'installer_browser_project_display',
'page arguments' => array(3),
'access callback' => 'installer_install_access',
'file' => 'installer.pages.inc',
'type' => MENU_CALLBACK,
);
$items['admin/installer/reset/%/%'] = array(
'title' => 'Reset',
'description' => 'Reset installer project list.',
'page callback' => 'installer_browser_installation_reset',
'page arguments' => array(3, 4),
'access callback' => 'installer_install_access',
'file' => 'installer.pages.inc',
'type' => MENU_CALLBACK,
);
$items['admin/installer/install/%'] = array(
'title' => 'Install',
'page callback' => 'installer_browser_installation_page',
'page arguments' => array(3),
'access callback' => 'installer_install_access',
'type' => MENU_NORMAL_ITEM,
'file' => 'installer.pages.inc',
);
$items['admin/installer/queue/%/%/%'] = array(
'page callback' => 'installer_browser_install_queue_callback',
'page arguments' => array(3, 4, 5),
'access callback' => 'installer_install_access',
'type' => MENU_CALLBACK,
'file' => 'installer.pages.inc',
);
return $items;
}