diff options
-rw-r--r-- | app/assets/javascripts/pages/projects/edit/index.js | 2 | ||||
-rw-r--r-- | app/assets/javascripts/pages/projects/edit/init_merge_options_checkbox_sync.js | 18 |
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(); + } + }); + } +}; |