Example #1
0
/**
 * Check update requirements and report any errors.
 */
function update_check_requirements()
{
    // Check the system module and update.php requirements only.
    $requirements = module_invoke('system', 'requirements', 'update');
    $requirements += update_extra_requirements();
    $severity = drupal_requirements_severity($requirements);
    // If there are issues, report them.
    if ($severity == REQUIREMENT_ERROR) {
        update_task_list('requirements');
        drupal_set_title('Requirements problem');
        $status_report = theme('status_report', $requirements);
        $status_report .= 'Please check the error messages and <a href="' . request_uri() . '">try again</a>.';
        print theme('update_page', $status_report);
        exit;
    }
}
Example #2
0
/**
 * Check update requirements and report any errors.
 */
function update_check_requirements()
{
    // Check requirements of all loaded modules.
    $requirements = module_invoke_all('requirements', 'update');
    $requirements += update_extra_requirements();
    $severity = drupal_requirements_severity($requirements);
    // If there are issues, report them.
    if ($severity == REQUIREMENT_ERROR) {
        update_task_list('requirements');
        drupal_set_title('Requirements problem');
        $status_report = theme('status_report', array('requirements' => $requirements));
        $status_report .= 'Check the error messages and <a href="' . check_url(request_uri()) . '">try again</a>.';
        print theme('update_page', array('content' => $status_report));
        exit;
    }
}
Example #3
0
/**
 * Checks update requirements and reports errors and (optionally) warnings.
 *
 * @param $skip_warnings
 *   (optional) If set to TRUE, requirement warnings will be ignored, and a
 *   report will only be issued if there are requirement errors. Defaults to
 *   FALSE.
 */
function update_check_requirements($skip_warnings = FALSE)
{
    // Check requirements of all loaded modules.
    $requirements = module_invoke_all('requirements', 'update');
    $requirements += update_extra_requirements();
    $severity = drupal_requirements_severity($requirements);
    // If there are errors, always display them. If there are only warnings, skip
    // them if the caller has indicated they should be skipped.
    if ($severity == REQUIREMENT_ERROR || $severity == REQUIREMENT_WARNING && !$skip_warnings) {
        update_task_list('requirements');
        drupal_set_title('Requirements problem');
        $status_report = theme('status_report', array('requirements' => $requirements));
        $status_report .= 'Check the error messages and <a href="' . check_url(drupal_requirements_url($severity)) . '">try again</a>.';
        print theme('update_page', array('content' => $status_report));
        exit;
    }
}
Example #4
0
File: update.php Project: c4rl/6
function update_info_page()
{
    // Change query-strings on css/js files to enforce reload for all users.
    _drupal_flush_css_js();
    // Flush the cache of all data for the update status module.
    if (db_table_exists('cache_update')) {
        cache_clear_all('*', 'cache_update', TRUE);
    }
    update_task_list('info');
    drupal_set_title('Drupal database update');
    $token = drupal_get_token('update');
    $output = '<p>Use this utility to update your database whenever a new release of Drupal or a module is installed.</p><p>For more detailed information, see the <a href="http://drupal.org/upgrade">upgrading handbook</a>. If you are unsure what these terms mean you should probably contact your hosting provider.</p>';
    $output .= "<ol>\n";
    $output .= "<li><strong>Back up your database</strong>. This process will change your database values and in case of emergency you may need to revert to a backup.</li>\n";
    $output .= "<li><strong>Back up your code</strong>. Hint: when backing up module code, do not leave that backup in the 'modules' or 'sites/*/modules' directories as this may confuse Drupal's auto-discovery mechanism.</li>\n";
    $output .= '<li>Put your site into <a href="' . base_path() . '?q=admin/settings/site-maintenance">maintenance mode</a>.</li>' . "\n";
    $output .= "<li>Install your new files in the appropriate location, as described in the handbook.</li>\n";
    $output .= "</ol>\n";
    $output .= "<p>When you have performed the steps above, you may proceed.</p>\n";
    $output .= '<form method="post" action="update.php?op=selection&amp;token=' . $token . '"><p><input type="submit" value="Continue" /></p></form>';
    $output .= "\n";
    return $output;
}
Example #5
0
                $redirect_url = $base_root . drupal_current_script_url(array('op' => 'results'));
                $output = update_batch($request->request->get('start'), $redirect_url, $batch_url);
                break;
            }
        case 'info':
            $regions['sidebar_first'] = update_task_list('info');
            $output = update_info_page();
            break;
        case 'results':
            $regions['sidebar_first'] = update_task_list();
            $output = update_results_page();
            break;
            // Regular batch ops : defer to batch processing API.
        // Regular batch ops : defer to batch processing API.
        default:
            $regions['sidebar_first'] = update_task_list('run');
            $output = _batch_page($request);
            break;
    }
} else {
    $output = update_access_denied_page();
}
if (isset($output) && $output) {
    // Explicitly start a session so that the update.php token will be accepted.
    \Drupal::service('session_manager')->start();
    // We defer the display of messages until all updates are done.
    $progress_page = ($batch = batch_get()) && isset($batch['running']);
    if ($output instanceof Response) {
        $output->send();
    } else {
        drupal_add_http_header('Content-Type', 'text/html; charset=utf-8');