e965 / block-runet-2018

[RU] Волшебный скрипт, блокирующий Ваш сайт. По крайней мере, изумлённый пользователь будет так думать.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Описание

Волшебный скрипт, блокирующий Ваш сайт. По крайней мере, изумлённый пользователь будет так думать.
Надо всего-лишь добавить к себе перед окончанием блока <head> одним из следующих способов:

<!-- Используя CDN от jsDelivr -->
<script src="https://cdn.jsdelivr.net/npm/runet/dist/runet.min.js" async></script>

<!-- ...или же от unpkg. -->
<script src="https://unpkg.com/runet/dist/runet.min.js" data-cdn="https://unpkg.com/runet/dist/" async></script>

Прошу сразу обратить внимание на несколько вещей:

  • Во втором случае у тега <script> присутствует аттрибут data-cdn, в котором указан путь до директории скрипта на unpkg. Это необходимо, чтобы ресурсы подгружались не с jsDelivr.
  • В указанных выше случаях грузится строго самая свежая версия, доступная на npm. Я, конечно, стараюсь оттестировать версию перед загрузкой по-максимуму, но человеческий фактор никто не отменял. В любом случае, Вы всегда можете подставить в URL в часть /runet/ строго нужную Вам версию (например: /runet@0.0.5/). Также, ссылку c залоченной версией нужно будет указать в аттрибуте data-cdn независимо от того, с unpkg всё грузится, или же с jsDelivr.
  • В случае, если на вашем сайте включен Content Security Policy, обязательно убедитесь, что нужная CDN есть в script-src и style-src, а img-src разрешает вставлять картинки через data:.

Также, Вам никто не мешает скачать скачать всё себе и залить на свой сайт вручную. В таком случае, от всего проекта вам понадобится только папка dist/, а к тегу <script> необходимо будет добавить аттрибут data-is-self-hosted (обязательно без значения!).
В результате должно получиться что-то вот такое:

<script src="path/to/dist/runet.min.js" data-is-self-hosted async></script>

Посмотреть, как всё выглядит, можно здесь.

Кастомизация

Её мало, но есть у меня. Пока что можно воздействовать только на следущие вещи:

  • Отключение заглушки

Достигается добавлением аттрибута data-disabled (обязательно без значения).

<script src="..." data-disabled async></script>
  • Показ IP-адреса пользователя

Достигается добавлением этого-самого IP-адреса значением аттрибута data-user-ip средствами сервера. Иначе, просто-напросто ничего не покажется.

<script src="..." data-user-ip="127.0.0.1" async></script>
  • Смена времени у таймера, показывающего футер с "разгадкой"

По-умолчанию равно 8 секундам, но с помощью аттрибута data-timer возможно указать другое значение (в миллисекундах).

<script src="..." data-timer="3000" async></script>
<!-- футер покажется через 3 секунды -->
  • Смена названия ресурса

По-умолчанию выводится hostname ресурса, но с помощью аттрибута data-site-title можно указать что-то своё.

<script src="..." data-site-title="Tested Test Inc." async></script>

Лицензирование

Весь код доступен под лицензией MIT, но лого РКН принадлежит, собственно, РКН.

About

[RU] Волшебный скрипт, блокирующий Ваш сайт. По крайней мере, изумлённый пользователь будет так думать.

License:MIT License


Languages

Language:JavaScript 67.9%Language:CSS 32.1%