summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/integrations/integration_settings_form.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/integrations/integration_settings_form.js')
-rw-r--r--app/assets/javascripts/integrations/integration_settings_form.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/app/assets/javascripts/integrations/integration_settings_form.js b/app/assets/javascripts/integrations/integration_settings_form.js
index 5ecab0b11a2..5745475123d 100644
--- a/app/assets/javascripts/integrations/integration_settings_form.js
+++ b/app/assets/javascripts/integrations/integration_settings_form.js
@@ -44,6 +44,9 @@ export default class IntegrationSettingsForm {
this.toggleServiceState($(e.currentTarget).is(':checked'));
}
+ /**
+ * Change Form's validation enforcement based on service status (active/inactive)
+ */
toggleServiceState(serviceActive) {
this.toggleSubmitBtnLabel(serviceActive, this.canTestService);
if (serviceActive) {
@@ -54,7 +57,7 @@ export default class IntegrationSettingsForm {
}
/**
- * Toggle Submit button label based on Integration status
+ * Toggle Submit button label based on Integration status and ability to test service
*/
toggleSubmitBtnLabel(serviceActive, canTestService) {
this.$submitBtnLabel.text(
@@ -76,7 +79,9 @@ export default class IntegrationSettingsForm {
this.$submitBtnLoader.removeClass('hidden');
} else {
this.$submitBtn.enable();
- this.$submitBtnLoader.addClass('hidden');
+ if (!this.$submitBtnLoader.hasClass('hidden')) {
+ this.$submitBtnLoader.addClass('hidden');
+ }
}
}