update_authorize_run_update

update_authorize_run_update($filetransfer, $projects)

Updates existing projects when invoked by authorize.php.

Callback for system_authorized_init() in update_manager_update_ready_form_submit().

Parameters

$filetransfer: The FileTransfer object created by authorize.php for use during this operation.

$projects: A nested array of projects to install into the live webroot, keyed by project name. Each subarray contains the following keys:

  • project: The canonical project short name.
  • updater_name: The name of the Drupal\Core\Updater\Updater class to use for this project.
  • local_url: The locally installed location of new code to update with.

Return value

\Symfony\Component\HttpFoundation\Response|null The result of processing the batch that updates the projects. If this is an instance of \Symfony\Component\HttpFoundation\Response the calling code should use that response for the current page request.

File

core/modules/update/update.authorize.inc, line 38
Callbacks and related functions invoked by authorize.php to update projects.

Code

function update_authorize_run_update($filetransfer, $projects) {
  $operations = array();
  foreach ($projects as $project_info) {
    $operations[] = array(
      'update_authorize_batch_copy_project',
      array(
        $project_info['project'],
        $project_info['updater_name'],
        $project_info['local_url'],
        $filetransfer,
      ),
    );
  }

  $batch = array(
    'init_message' => t('Preparing to update your site'),
    'operations' => $operations,
    'finished' => 'update_authorize_update_batch_finished',
    'file' => drupal_get_path('module', 'update') . '/update.authorize.inc',
  );
  batch_set($batch);

  // Since authorize.php has its own method for setting the page title, set it
  // manually here rather than passing it in to batch_set() as would normally
  // be done.
  $_SESSION['authorize_page_title'] = t('Installing updates');

  // Invoke the batch via authorize.php.
  return system_authorized_batch_process();
}
doc_Drupal
2016-10-29 09:51:19
Comments
Leave a Comment

Please login to continue.