summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Friend <nathan@gitlab.com>2019-05-24 09:50:56 -0300
committerNathan Friend <nathan@gitlab.com>2019-05-24 14:37:30 -0300
commit6fac652b90ef64f31dc6286fa4dd6991ffb8be4b (patch)
tree1a875b1b8865c40e8ccfce72d96aefa54ca8b76d
parentd6df4fb20a4d6f622865c2c70e17caeba70c1027 (diff)
downloadgitlab-ce-ce-9186-add-merge-train-setting.tar.gz
Add "Allow merge trains" setting (CE)ce-9186-add-merge-train-setting
This commit adds the "Allow merge trains" options to the project merge request settings page. This option is only visible in EE. This option is also hidden behind the "merge_trains" feature flag.
-rw-r--r--app/assets/javascripts/pages/projects/edit/index.js2
-rw-r--r--app/assets/javascripts/pages/projects/edit/init_merge_options_checkbox_sync.js18
2 files changed, 20 insertions, 0 deletions
diff --git a/app/assets/javascripts/pages/projects/edit/index.js b/app/assets/javascripts/pages/projects/edit/index.js
index 92ed6a652d7..ecf38d87aac 100644
--- a/app/assets/javascripts/pages/projects/edit/index.js
+++ b/app/assets/javascripts/pages/projects/edit/index.js
@@ -7,6 +7,7 @@ import dirtySubmitFactory from '~/dirty_submit/dirty_submit_factory';
import initAvatarPicker from '~/avatar_picker';
import initProjectLoadingSpinner from '../shared/save_project_loader';
import initProjectPermissionsSettings from '../shared/permissions';
+import initMergeOptionsCheckboxSync from './init_merge_options_checkbox_sync';
document.addEventListener('DOMContentLoaded', () => {
initAvatarPicker();
@@ -17,6 +18,7 @@ document.addEventListener('DOMContentLoaded', () => {
initProjectLoadingSpinner();
initProjectPermissionsSettings();
setupProjectEdit();
+ initMergeOptionsCheckboxSync();
dirtySubmitFactory(
document.querySelectorAll(
diff --git a/app/assets/javascripts/pages/projects/edit/init_merge_options_checkbox_sync.js b/app/assets/javascripts/pages/projects/edit/init_merge_options_checkbox_sync.js
new file mode 100644
index 00000000000..19fbf10bbf6
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/edit/init_merge_options_checkbox_sync.js
@@ -0,0 +1,18 @@
+export default () => {
+ const mergePipelinesCheckbox = document.querySelector('.js-merge-options-merge-pipelines');
+ const mergeTrainsCheckbox = document.querySelector('.js-merge-options-merge-trains');
+
+ if (mergePipelinesCheckbox && mergeTrainsCheckbox) {
+ mergePipelinesCheckbox.addEventListener('change', event => {
+ if (!event.target.checked && mergeTrainsCheckbox.checked) {
+ mergeTrainsCheckbox.click();
+ }
+ });
+
+ mergeTrainsCheckbox.addEventListener('change', event => {
+ if (event.target.checked && !mergePipelinesCheckbox.checked) {
+ mergePipelinesCheckbox.click();
+ }
+ });
+ }
+};