diff --git a/api/src/Page/Process.php b/api/src/Page/Process.php index b41cb22d9..317c0b19d 100644 --- a/api/src/Page/Process.php +++ b/api/src/Page/Process.php @@ -383,7 +383,7 @@ function _enqueue() ); $this->_send_zocalo_message($rabbitmq_zocalo_vhost, $message); - $this->_output(new \stdClass); + $this->_output('Job successfully submitted'); } function _enqueue_downstream() @@ -413,7 +413,7 @@ function _enqueue_downstream() $this->_submit_zocalo_recipe($this->arg('RECIPE'), $parameters); - $this->_output(new \stdClass); + $this->_output('Job successfully submitted'); } /* diff --git a/client/src/js/modules/dc/views/downstreamreprocess.js b/client/src/js/modules/dc/views/downstreamreprocess.js index 4154a2c68..9a028eebb 100644 --- a/client/src/js/modules/dc/views/downstreamreprocess.js +++ b/client/src/js/modules/dc/views/downstreamreprocess.js @@ -134,13 +134,23 @@ define(['backbone', 'marionette', 'views/dialog', submit: function(e) { e.preventDefault() - + this._disableIntegrateButton() + this._enqueue({ RECIPE: this.model.get('PIPELINE'), DATACOLLECTIONID: this.model.get('ID'), SCALINGID: this.scalingid }) app.message({ message: 'Downstream processing job successfully submitted'}) }, + _disableIntegrateButton: function() { + var btn = $('.ui-dialog-buttonpane button:contains("Submit")') + btn.button('disable').button('option', 'label', 'Submitted!') + setTimeout(function() { + btn.button('enable').button('option', 'label', 'Submit') + }, 5000) + }, + + _enqueue: function(options) { Backbone.ajax({ url: app.apiurl+'/process/enqueue/downstream', diff --git a/client/src/js/modules/dc/views/reprocess2.js b/client/src/js/modules/dc/views/reprocess2.js index 5ebd0f8dd..0aa8346b9 100644 --- a/client/src/js/modules/dc/views/reprocess2.js +++ b/client/src/js/modules/dc/views/reprocess2.js @@ -306,10 +306,11 @@ define(['backbone', 'marionette', 'views/dialog', integrate: function(e) { e.preventDefault() + this._disableIntegrateButton() var s = this.collection.where({ selected: true }) if (!s.length) { - app.alert({ message: 'Please selected some data sets to integrate' }) + app.alert({ message: 'Please select some data sets to integrate' }) return } @@ -403,10 +404,10 @@ define(['backbone', 'marionette', 'views/dialog', }, this) $.when.apply($, reqs).done(function() { - app.message({ message: jobs+' reprocessing job(s) successfully submitted'}) _.each(rps, function(rp) { self._enqueue({ PROCESSINGJOBID: rp.get('PROCESSINGJOBID') }) }) + app.message({ message: jobs+' reprocessing job(s) successfully submitted'}) }) @@ -495,8 +496,8 @@ define(['backbone', 'marionette', 'views/dialog', reqs.push(reprocessingsweeps.save()) $.when.apply($, reqs).done(function() { - app.message({ message: '1 reprocessing job successfully submitted'}) self._enqueue({ PROCESSINGJOBID: reprocessing.get('PROCESSINGJOBID') }) + app.message({ message: '1 reprocessing job successfully submitted'}) }) }, @@ -509,6 +510,15 @@ define(['backbone', 'marionette', 'views/dialog', }, + _disableIntegrateButton: function() { + var btn = $('.ui-dialog-buttonpane button:contains("Integrate")') + btn.button('disable').button('option', 'label', 'Submitted!') + setTimeout(function() { + btn.button('enable').button('option', 'label', 'Integrate') + }, 5000) + }, + + _enqueue: function(options) { Backbone.ajax({ url: app.apiurl+'/process/enqueue', diff --git a/client/src/js/modules/mc/views/datacollections.js b/client/src/js/modules/mc/views/datacollections.js index f354ed010..23fae3cf4 100644 --- a/client/src/js/modules/mc/views/datacollections.js +++ b/client/src/js/modules/mc/views/datacollections.js @@ -60,7 +60,7 @@ define(['backbone', 'marionette', events: { 'click .integrate': 'integrate', - 'click a.opt': 'toggleOpts', + 'click button.opt': 'toggleOpts', 'change @ui.pipeline': 'updatePipeline', }, @@ -106,11 +106,12 @@ define(['backbone', 'marionette', integrate: function(e) { e.preventDefault() + this._disableIntegrateButton() var s = this.collection.where({ selected: true }) if (!s.length) { - utils.confirm({ title: 'No data collections selected', content: 'Please selected some data sets to integrate' }) + utils.confirm({ title: 'No data collections selected', content: 'Please select some data sets to integrate', buttons: {'Ok': 'closeDialog'}}) return } @@ -193,8 +194,8 @@ define(['backbone', 'marionette', var reprocessingsweeps = new ReprocessingImageSweeps(sweeps) reprocessingsweeps.save() - app.message({ message: '1 reprocessing job successfully submitted'}) self._enqueue({ PROCESSINGJOBID: reprocessing.get('PROCESSINGJOBID') }) + app.message({ message: 'Reprocessing job successfully submitted'}) }, error: function() { @@ -205,6 +206,16 @@ define(['backbone', 'marionette', }, + _disableIntegrateButton: function() { + var btn = $('button.integrate') + var btnHtml = btn.html() + btn.prop('disabled', true).html(' Submitted!'); + setTimeout(function() { + btn.prop('disabled', false).html(btnHtml); + }, 5000) + }, + + _enqueue: function(options) { Backbone.ajax({ url: app.apiurl+'/process/enqueue', diff --git a/client/src/js/templates/mc/datacollections.html b/client/src/js/templates/mc/datacollections.html index 7fa8058c3..9017dd579 100644 --- a/client/src/js/templates/mc/datacollections.html +++ b/client/src/js/templates/mc/datacollections.html @@ -32,8 +32,8 @@

Data Collections for <%-VISIT%>

- Integrate - Xia2 Options + +
diff --git a/client/src/js/utils.js b/client/src/js/utils.js index aea8e7fda..a469e020f 100644 --- a/client/src/js/utils.js +++ b/client/src/js/utils.js @@ -81,10 +81,10 @@ define(['backbone', }, events: { - 'click a.dismiss': 'disimss', + 'click a.dismiss': 'dismiss', }, - disimss: function(e) { + dismiss: function(e) { e.preventDefault() this.destroy() }, @@ -118,13 +118,15 @@ define(['backbone', var ConfirmDialog = DialogView.extend({ title: options.title, template: _.template(options.content), - buttons: { + buttons: options.buttons || { 'Ok': 'onOK', 'Cancel': 'closeDialog', }, onOK: function() { - options.callback() + if (typeof options.callback === 'function') { + options.callback(); + } this.closeDialog() }, }) @@ -236,4 +238,4 @@ define(['backbone', return utils -}) \ No newline at end of file +})