theme_install_page($variables)Generate a themed installation page.
Note: this function is not themeable.
$variables An associative array containing:
includes/theme.maintenance.inc, line 129
<?php
function theme_install_page($variables) {
drupal_add_http_header('Content-Type', 'text/html; charset=utf-8');
// Delay setting the message variable so it can be processed below.
$variables['show_messages'] = FALSE;
// Variable processors invoked manually since this function and theme_update_page()
// are exceptions in how it works within the theme system.
template_preprocess($variables, 'install_page');
template_preprocess_maintenance_page($variables);
template_process($variables, 'install_page');
template_process_maintenance_page($variables);
// Special handling of error messages
$messages = drupal_set_message();
if (isset($messages['error'])) {
$title = count($messages['error']) > 1 ? st('The following errors must be resolved before you can continue the installation process') : st('The following error must be resolved before you can continue the installation process');
$variables['messages'] .= '<h3>' . $title . ':</h3>';
$variables['messages'] .= theme('status_messages', array('display' => 'error'));
$variables['content'] .= '<p>' . st('Check the error messages and <a href="!url">try again</a>.', array('!url' => check_url(request_uri()))) . '</p>';
}
// Special handling of warning messages
if (isset($messages['warning'])) {
$title = count($messages['warning']) > 1 ? st('The following installation warnings should be carefully reviewed') : st('The following installation warning should be carefully reviewed');
$variables['messages'] .= '<h4>' . $title . ':</h4>';
$variables['messages'] .= theme('status_messages', array('display' => 'warning'));
}
// Special handling of status messages
if (isset($messages['status'])) {
$title = count($messages['status']) > 1 ? st('The following installation warnings should be carefully reviewed, but in most cases may be safely ignored') : st('The following installation warning should be carefully reviewed, but in most cases may be safely ignored');
$variables['messages'] .= '<h4>' . $title . ':</h4>';
$variables['messages'] .= theme('status_messages', array('display' => 'status'));
}
// This was called as a theme hook (not template), so we need to fix
// path_to_theme() for the template, to point at the actual theme rather than
// system module as owner of the hook. Additionally, figure out the
// maintenance page template to use.
global $theme_path, $theme_info, $base_theme_info;
$theme_path = dirname($theme_info->uri);
$base_themes = $base_theme_info;
// Make sure a maintenance-page.tpl.php is always found.
$base_themes[] = 'modules/system';
while (!file_exists($theme_path . '/maintenance-page.tpl.php') && $base_theme = array_shift($base_themes)) {
$theme_path = dirname($base_theme->uri);
}
return theme_render_template($theme_path . '/maintenance-page.tpl.php', $variables);
}
?>