Mercurial > defr > drupal > core
comparison misc/batch.js @ 1:c1f4ac30525a 6.0
Drupal 6.0
| author | Franck Deroche <webmaster@defr.org> |
|---|---|
| date | Tue, 23 Dec 2008 14:28:28 +0100 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 0:5a113a1c4740 | 1:c1f4ac30525a |
|---|---|
| 1 // $Id: batch.js,v 1.4 2007/10/21 18:59:01 goba Exp $ | |
| 2 | |
| 3 /** | |
| 4 * Attaches the batch behavior to progress bars. | |
| 5 */ | |
| 6 Drupal.behaviors.batch = function (context) { | |
| 7 // This behavior attaches by ID, so is only valid once on a page. | |
| 8 if ($('#progress.batch-processed').size()) { | |
| 9 return; | |
| 10 } | |
| 11 $('#progress', context).addClass('batch-processed').each(function () { | |
| 12 var holder = this; | |
| 13 var uri = Drupal.settings.batch.uri; | |
| 14 var initMessage = Drupal.settings.batch.initMessage; | |
| 15 var errorMessage = Drupal.settings.batch.errorMessage; | |
| 16 | |
| 17 // Success: redirect to the summary. | |
| 18 var updateCallback = function (progress, status, pb) { | |
| 19 if (progress == 100) { | |
| 20 pb.stopMonitoring(); | |
| 21 window.location = uri+'&op=finished'; | |
| 22 } | |
| 23 }; | |
| 24 | |
| 25 var errorCallback = function (pb) { | |
| 26 var div = document.createElement('p'); | |
| 27 div.className = 'error'; | |
| 28 $(div).html(errorMessage); | |
| 29 $(holder).prepend(div); | |
| 30 $('#wait').hide(); | |
| 31 }; | |
| 32 | |
| 33 var progress = new Drupal.progressBar('updateprogress', updateCallback, "POST", errorCallback); | |
| 34 progress.setProgress(-1, initMessage); | |
| 35 $(holder).append(progress.element); | |
| 36 progress.startMonitoring(uri+'&op=do', 10); | |
| 37 }); | |
| 38 }; |
