diff --git a/app/assets/javascripts/experiments/dropdown_actions.js b/app/assets/javascripts/experiments/dropdown_actions.js index 3a53f036b..eb093b18a 100644 --- a/app/assets/javascripts/experiments/dropdown_actions.js +++ b/app/assets/javascripts/experiments/dropdown_actions.js @@ -17,6 +17,7 @@ }); validateMoveModal(id); clearModal($(id)); + validateExperimentForm($(id)); }) .on("ajax:error", function() { animateSpinner(null, false); @@ -73,6 +74,36 @@ .clearFormErrors(); } } + // Reload after successfully updated experiment + function validateExperimentForm(element){ + if ( element ) { + var form = element.find("form"); + form + .on('ajax:success' , function(){ + animateSpinner(form, true); + location.reload(); + }) + .on('ajax:error', function(e, error){ + var msg = JSON.parse(error.responseText); + if ( 'name' in msg ) { + renderFormError(e, + element.find("#experiment-name"), + msg.name.toString(), + true); + } else if ( 'description' in msg ) { + renderFormError(e, + element.find("#experiment-description"), + msg.description.toString(), + true); + } else { + renderFormError(e, + element.find("#experiment-name"), + error.statusText, + true); + } + }); + } + } // Initialize no description edit link function initEditNoDescription(){ var modal = "#edit-experiment-modal-";