1.20.x installer.pages.inc | installer_browser_installation_select_versions_form_submit($form, &$form_state) |
Submit handler for the select versions form.
File
- modules/
installer/ installer.pages.inc, line 421 - Page callbacks used by the Installer browse pages.
Code
function installer_browser_installation_select_versions_form_submit($form, &$form_state) {
module_load_include('inc', 'installer', 'installer.browser');
// Store maintenance_mode setting so we can restore it when done.
$_SESSION['maintenance_mode'] = state_get('maintenance_mode', FALSE);
if ($form_state['values']['maintenance_mode'] == TRUE) {
state_set('maintenance_mode', TRUE);
}
foreach ($form_state['values']['releases'] as $item) {
// Load the selected release.
if ($release = installer_browser_get_release($item['release_name'], $item['project'])) {
// Add the release to a session variable.
$_SESSION['installer_browser_install_releases_list'][$item['release_name']] = $item['project'];
}
}
// Install the projects with batch.
module_load_include('inc', 'installer', 'installer.manager');
$queued_releases = installer_browser_get_queued_releases();
$operations = array();
foreach ($queued_releases as $release_name => $project) {
$operations[] = array('_installer_browser_batch_install_release', array($release_name, $project));
}
$batch = array(
'operations' => $operations,
'finished' => '_installer_browser_batch_install_releases_finished',
'title' => t('Installing projects'),
'init_message' => t('Installing projects...'),
'progress_message' => t('Installed @current out of @total.'),
'error_message' => t('Installation has encountered an error.'),
'file' => backdrop_get_path('module', 'installer') . '/installer.browser.inc',
);
batch_set($batch);
}