Ŋun su:Masssly/copy-DagChar.js

A yi zaŋ pa pɔhim zuɣu naai shee a bypaasi a browser tobu neema maa n nya raɣibu nima.

var specialCharacters = ['ɛ', 'ɣ', 'ŋ', 'ɔ', 'ʒ', 'ch', 'gb', 'kp', 'ŋm', 'sh', 'ny'];

mw.loader.using('oojs-ui-core').done(function() {
  $(function() {
    if (mw.config.values.wgPageName.startsWith('Dagbani_language')) {
      var buttonContainer = $('<div id="dag-char-buttons"></div>');
      $('.WikiEditor-ui').append(buttonContainer);

      specialCharacters.forEach(function(char) {
        function dagChar() {
          var successPopup = new OO.ui.PopupWidget({
            $content: $('<p>Copied!</p>'),
            padded: true,
            width: 80,
          });
          $('.WikiEditor-ui').append(successPopup.$element);

          var failPopup = new OO.ui.PopupWidget({
            $content: $('<p>Copied!</p>'),
            padded: true,
            width: 80,
          });
          $('.WikiEditor-ui').append(failPopup.$element);

          navigator.clipboard.writeText(char).then(
            function() {
              successPopup.toggle(true);
              setTimeout(function() { successPopup.toggle(false) }, 1000);
            },
            function() {
              successPopup.toggle(true);
              setTimeout(function() { failPopup.toggle(false) }, 3000);
            }
          );
        }

        var button = new OO.ui.ButtonWidget({
          label: 'Copy ' + char,
        });
        button.on('click', dagChar);

        buttonContainer.append(button.$element);
      });
    }
  });
});