diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-07-20 12:55:51 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-07-20 12:55:51 +0300 |
commit | e8d2c2579383897a1dd7f9debd359abe8ae8373d (patch) | |
tree | c42be41678c2586d49a75cabce89322082698334 /app/assets/javascripts/service_ping_consent.js | |
parent | fc845b37ec3a90aaa719975f607740c22ba6a113 (diff) |
Add latest changes from gitlab-org/gitlab@14-1-stable-eev14.1.0-rc42
Diffstat (limited to 'app/assets/javascripts/service_ping_consent.js')
-rw-r--r-- | app/assets/javascripts/service_ping_consent.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/app/assets/javascripts/service_ping_consent.js b/app/assets/javascripts/service_ping_consent.js new file mode 100644 index 00000000000..f145a1b30db --- /dev/null +++ b/app/assets/javascripts/service_ping_consent.js @@ -0,0 +1,35 @@ +import $ from 'jquery'; +import createFlash, { hideFlash } from './flash'; +import axios from './lib/utils/axios_utils'; +import { parseBoolean } from './lib/utils/common_utils'; +import { __ } from './locale'; + +export default () => { + $('body').on('click', '.js-service-ping-consent-action', (e) => { + e.preventDefault(); + e.stopImmediatePropagation(); // overwrite rails listener + + const { url, checkEnabled, servicePingEnabled } = e.target.dataset; + const data = { + application_setting: { + version_check_enabled: parseBoolean(checkEnabled), + service_ping_enabled: parseBoolean(servicePingEnabled), + }, + }; + + const hideConsentMessage = () => + hideFlash(document.querySelector('.service-ping-consent-message')); + + axios + .put(url, data) + .then(() => { + hideConsentMessage(); + }) + .catch(() => { + hideConsentMessage(); + createFlash({ + message: __('Something went wrong. Try again later.'), + }); + }); + }); +}; |