You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.7KB

  1. function Пульт(события, имяОшибки, имяПерезапуска, имяОтдельно, имяСсылки)
  2. {
  3. this.создать = function()
  4. {
  5. var ошибка = document.getElementById(имяОшибки);
  6. мир.назначитьКнопкамСобытия(
  7. события,
  8. [
  9. [имяПерезапуска, "перезапустить"],
  10. [имяОтдельно, "запустить отдельно"],
  11. [имяСсылки, "скопировать ссылку"],
  12. ]
  13. );
  14. события.подписать(this);
  15. };
  16. this.обработатьСобытие = function(событие)
  17. {
  18. if (событие == "код корректен")
  19. {
  20. this.показатьОшибку(false);
  21. }
  22. else if (событие == "код некорректен")
  23. {
  24. this.показатьОшибку(true);
  25. }
  26. else if (событие == "скопировать ссылку")
  27. {
  28. navigator.clipboard.writeText(window.location)
  29. .then(() => {
  30. UIkit.notification("Скопировали ссылку", { status: "success", timeout: 1000 });
  31. })
  32. .catch(err => {
  33. UIkit.notification("Не удалось скопировать ссылку :(", { status: "danger", timeout: 5000 });
  34. });
  35. }
  36. };
  37. this.показатьОшибку = function(показать)
  38. {
  39. ошибка.innerHTML = показать ? "<span uk-icon=\"icon: warning\"></span>" : "&nbsp;";
  40. };
  41. // Конструктор.
  42. this.создать();
  43. }