function update_authorize_run_update

Same name in other branches
  1. 9 core/modules/update/update.authorize.inc \update_authorize_run_update()
  2. 8.9.x core/modules/update/update.authorize.inc \update_authorize_run_update()
  3. 10 core/modules/update/update.authorize.inc \update_authorize_run_update()
  4. 11.x core/modules/update/update.authorize.inc \update_authorize_run_update()

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 Updater class to use for this project.
  • local_url: The locally installed location of new code to update with.
1 call to update_authorize_run_update()
update_manager_update_ready_form_submit in modules/update/update.manager.inc
Form submission handler for update_manager_update_ready_form().
1 string reference to 'update_authorize_run_update'
update_manager_update_ready_form_submit in modules/update/update.manager.inc
Form submission handler for update_manager_update_ready_form().

File

modules/update/update.authorize.inc, line 29

Code

function update_authorize_run_update($filetransfer, $projects) {
    $operations = array();
    foreach ($projects as $project => $project_info) {
        $operations[] = array(
            'update_authorize_batch_copy_project',
            array(
                $project_info['project'],
                $project_info['updater_name'],
                $project_info['local_url'],
                $filetransfer,
            ),
        );
    }
    $batch = array(
        'title' => t('Installing updates'),
        '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);
    // Invoke the batch via authorize.php.
    system_authorized_batch_process();
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.