Drupal 8.0.0 beta 12. More info: https://www.drupal.org/node/2514176
This commit is contained in:
commit
9921556621
13277 changed files with 1459781 additions and 0 deletions
core/misc
46
core/misc/batch.js
Normal file
46
core/misc/batch.js
Normal file
|
@ -0,0 +1,46 @@
|
|||
/**
|
||||
* @file
|
||||
* Drupal's batch API.
|
||||
*/
|
||||
|
||||
(function ($, Drupal) {
|
||||
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Attaches the batch behavior to progress bars.
|
||||
*
|
||||
* @type {Drupal~behavior}
|
||||
*/
|
||||
Drupal.behaviors.batch = {
|
||||
attach: function (context, settings) {
|
||||
var batch = settings.batch;
|
||||
var $progress = $('[data-drupal-progress]').once('batch');
|
||||
var 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);
|
Reference in a new issue