Запрет выделения текста и действий правой кнопкой мыши

Я уже пытался найти способы запретить правый клик и выделение текста мышью. В Discourse такая функция есть, но я попробовал и несколько других подходов. Пока не нашел идеального решения. Мне нужен готовый код. И я обнаружил этот метод.

Добавьте это в CSS

body * {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  button, .menu-item {
    pointer-events: auto !important;
  }

А также добавьте JavaScript в секцию head

<script type="text/discourse-plugin" version="0.8">
  if (settings.prevent_right_click) {
    document.addEventListener('contextmenu', function(e) {
      e.preventDefault(); // Отменяем действие правого клика

      // Проверяем, включено ли отображение предупреждения
      if (settings.alert_enabled) {
        alert(settings.alert_message);
      } else {
        // Проверяем, включена ли защита от выделения текста
        if (settings.prevent_text_selection) {
          
        }
      }
    });
  }
</script>

Я попробовал это на своём форуме. На уровне пользователей аномалий не обнаружено. Однако я всё ещё не уверен, нет ли у этого метода каких-либо скрытых негативных последствий.
Для тестирования я создал компонент темы.
Если мой метод неверен или вы знаете лучший, пожалуйста, сообщите.

Зачем вам это нужно? Если вы пытаетесь защитить текст от копирования, существует миллион других способов его скопировать, так что вы на самом деле ничего не защищаете, а лишь раздражаете легитимных пользователей.

Спасибо за ваш ответ.
Они копируют и вставляют текст так, будто это обычная практика на моём форуме сообщества. Поэтому я думаю, что это усложнит им задачу по дублированию. Писатели моего сообщества настоятельно попросили меня сохранять их работы, чтобы они могли публиковать их на форуме. Несмотря на то, что я объяснил, что полностью заблокировать это невозможно. По крайней мере, следует сообщить писателям, что их работы сохраняются.
Что касается неудобств, с которыми пользователи сталкиваются при использовании форумов, я считаю, что ещё есть куда расти. Кроме того, я не уверен, что мои идеи полностью верны. Если есть что-то лучшее, я готов это попробовать.

Можно усилить активную модерацию и фильтрацию.

С развитием генеративного ИИ ситуация будет только ухудшаться.

Всего пару часов назад я использовал ИИ, чтобы скопировать и вставить фрагмент текста, когда администратор был заблокирован, нажав правой кнопкой мыши. Это было гораздо более простое решение по сравнению с традиционными методами, по крайней мере, на iPad.

Так что…

Вы также можете просто скопировать текст напрямую из исходного кода страницы, если кто-то захочет, либо существуют расширения, которые принудительно переопределяют отключённое выделение текста (и контекстное меню).

Возможно, ваши изменения убедят людей, которые генерируют текст, и это заставит их поверить, что вы пытаетесь помочь, но вот два очень простых способа получить текст, полностью обходя JavaScript.

https://meta.discourse.org/raw/311289/3 и https://meta.discourse.org/t/prevent-text-selection-and-right-click-actions/311289/3.json

Вы посмотрели на Add copyright protection to tagged topics и GitHub - VaperinaDEV/copyrighted-topic · GitHub?