Mercurial > hg > isophonics-drupal-site
view core/misc/batch.es6.js @ 13:5fb285c0d0e3
Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've
been lucky to get away with this so far, as we don't support self-registration
which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5
was vulnerable to.
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:33:26 +0100 |
parents | 4c8ae668cc8c |
children | 129ea1e6d783 |
line wrap: on
line source
/** * @file * Drupal's batch API. */ (function ($, Drupal) { /** * Attaches the batch behavior to progress bars. * * @type {Drupal~behavior} */ Drupal.behaviors.batch = { attach(context, settings) { const batch = settings.batch; const $progress = $('[data-drupal-progress]').once('batch'); let progressBar; // Success: redirect to the summary. function updateCallback(progress, status, pb) { if (progress === '100') { pb.stopMonitoring(); window.location = `${batch.uri}&op=finished`; } } function errorCallback(pb) { $progress.prepend($('<p class="error"></p>').html(batch.errorMessage)); $('#wait').hide(); } if ($progress.length) { progressBar = new Drupal.ProgressBar('updateprogress', updateCallback, 'POST', errorCallback); progressBar.setProgress(-1, batch.initMessage); progressBar.startMonitoring(`${batch.uri}&op=do`, 10); // Remove HTML from no-js progress bar. $progress.empty(); // Append the JS progressbar element. $progress.append(progressBar.element); } }, }; }(jQuery, Drupal));