summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/pages/projects/pages_domains/form.js
blob: ae5368179b12b6e762c6678a3ddc29f1ad10efbc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import setupToggleButtons from '~/toggle_buttons';

function updateVisibility(selector, isVisible) {
  Array.from(document.querySelectorAll(selector)).forEach(el => {
    if (isVisible) {
      el.classList.remove('d-none');
    } else {
      el.classList.add('d-none');
    }
  });
}

export default () => {
  const toggleContainer = document.querySelector('.js-auto-ssl-toggle-container');

  if (toggleContainer) {
    const onToggleButtonClicked = isAutoSslEnabled => {
      updateVisibility('.js-shown-unless-auto-ssl', !isAutoSslEnabled);

      updateVisibility('.js-shown-if-auto-ssl', isAutoSslEnabled);

      Array.from(document.querySelectorAll('.js-enabled-unless-auto-ssl')).forEach(el => {
        if (isAutoSslEnabled) {
          el.setAttribute('disabled', 'disabled');
        } else {
          el.removeAttribute('disabled');
        }
      });
    };

    setupToggleButtons(toggleContainer, onToggleButtonClicked);
  }
};