RecentChangesMultiple/ru

RecentChangesMultiple предназначен для одновременного мониторинга нескольких вики, позволяя на одной вики просматривать все изменения. Хотя этот скрипт сделан как можно ближе к стилю стандартных свежих правок, существует много тонких различий (см. Примечания ниже).

Этот инструмент разработан в первую очередь для вики именно на ФЭНДОМЕ, но должен работать и для вики на других хостингах по умолчанию и имеет некоторые настройки для обработки особых случаев для определённых «нефэндомовских» вики (например, «&scriptdir=» ниже). При добавлении вики, не расположенных на ФЭНДОМЕ, важно отметить, что этот скрипт предназначен для вики, работающих на MediaWiki, и требует, чтобы Mediawiki API был включён на вики для корректной работы скрипта.


 * Пример

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

Этот скрипт можно найти на Github, вместе с журналом изменений с версии 1.2.0.

HTTPS
Если этот скрипт запущен на вики с включённым HTTPS, вы не сможете загружать контент с вики, которые используют HTTP. Это функция безопасности, включённая браузером. В настоящее время это может вызвать проблемы при использовании на неанглийских вики, поскольку неанглийские вики в настоящее время не используют протокол HTTPS, а английские вики используют (неанглийские вики используют HTTPS, если у вики уникальный домен, без использования языкового префикса). В настоящее время эту проблему можно решить так: После того, как HTTPS будет включён на всех вики, эта проблема будет исправлена.
 * Запустите этот скрипт на вики, использующей HTTP.

Эта проблема будет по-прежнему влиять на некоторые «нефэндомовские» вики, однако это будет продолжаться и на HTTP. На данный момент эту проблему можно решить упомянутым выше способом, но как только HTTPS будет включён на всех вики, «нефэндомовские» вики больше не смогут загружаться до тех пор, пока не будут обновлены до протокола HTTPS.

Основное предназначение
Всё, что действительно необходимо после установки скрипта, — это div с  « » и списком маркеров со ссылкой на домен вики (div нужно будет добавить через режим исходного кода). Повторы игнорируются. Пример: Не указывайте протокол  или   перед доменом вики.
 * runescape.wikia.com
 * wowwiki.com
 * dev.wikia.com

Основные функции
Хотя они не являются частью Служебная:RecentChanges, некоторые дополнительные функции включены по умолчанию.
 * AjaxRC: На основе скрипта AjaxRC имеется опция «автообновления», которая при активации будет обновлять список каждые 60 секунд. Файл cookie используется для сохранения настройки флажка после клика.
 * После активации вам будет предложено активировать уведомления HTML5 (необязательно), которые будут сообщать вам об обновлениях, когда вы переходите от окна/вкладки. Чтобы отключить их после включения, щёлкните значок шестерёнки в уведомлении.
 * [[File:RecentChangesMultiple AjaxDiff icon.png]] AjaxDiff: На основе скриптов AjaxDiff/LastEdited, вы можете просмотреть «разницу версий» страницы, не переходя на них, нажав значок справа от ссылки «разн».
 * [[File:RecentChangesMultiple AjaxGallery icon.png]] AjaxGallery: Щёлкнув по значку картинки рядом с изменениями файлов (будь то журнала загрузки, правки страницы файла), вы можете просмотреть изображение, с которым оно связано. Для групповых журналов вы можете просмотреть галерею всех изображений в списке.
 * [[File:RecentChangesMultiple AjaxPagePreview icon.png]] AjaxPagePreview: Позволяет просматривать страницу, не выходя из текущей страницы.
 *  Примечание : Эта функция неполноценная. В предпросмотре не запускаются несколько файлов CSS и JS. Таким образом, предпросмотр использует только CSS с текущей вики для отображения страниц. В браузерах, поддерживающих редактирование shadow dom (Chrome на момент написания этого) или облачных стилей (Firefox), применяется пользовательский css с вики (common.css), а также JS (для shadow dom), хотя ещё не все.
 * Обсуждения: На основе скрипта DiscussionsFeed, теперь вы можете видеть Обсуждения в списке правок. См. ниже для получения информации о различных нюансах.
 * Панель ссылок вики: Чтобы облегчить навигацию по определённой вики в списке, нажатие одного из значков в разделе «Загруженные вики» в верхней части скрипта/вдоль левой части скрипта даст вам список ссылок на некоторые общие страницы для этой конкретной вики, а также некоторые статистические данные для этой вики. Если в списке только одна вики, эта панель откроется по умолчанию.
 * Несколько экземпляров: Несколько экземпляров («контейнеры») могут запускаться на одной странице.
 * Сюда входят те, которые находятся в пределах тегов  и.
 * Возможно, что каждый экземпляр загружает только одну вики, что позволяет создать более типичный дизайн RecentChanges, всё ещё просматривая несколько вики на одной странице. Также возможно обновить все экземпляры, используя функцию.
 * Имейте в виду, однако, что некоторые из дополнительных параметров ниже проверяются только в первом экземпляре и влияют на все вики на странице (data-lang, data-hiderail, data-loaddelay, data-timezone).

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

Переменные URL
Это влияет на каждый RCM на странице. В настоящее время единственными принятыми переменными URL являются те, которые используются на стандартной странице RecentChanges. См. больше ниже.

пример:

Данные
Они влияют на каждую вики/скрипт в целом для одного тега.

Показать/скрыть дополнительные параметры (необязательно для большинства участников)

наборы данных идут непосредственно в div, например:  *list of wikis
 * Пример

У элементов списка
Каждый элемент в списке должен начинаться с URL-адреса вики в формате «name.wikia.com» (или lang.name.wikia.com или «wikiname.com» (или другого домена верхнего уровня), если у вики есть домен «wikia»). Не включайте «http://» и всё, что после, или включая первый «/» в корне.

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

У каждого элемента списка могут быть добавлены параметры после него в формате «&paramname=», чтобы добавить дополнительные функции для отображения/загрузки от этой вики.

*fewfre.wikia.com &hideusers=Fewfre,FewBot *wiki.guildwars2.com &favicon=wiki.guildwars2.com/images/thumb/d/df/GW2Logo_new.png/180px-GW2Logo_new.png *pixelmonmod.com &scriptdir=wiki &params=hidemyself:1,limit:5
 * Примеры

Панель параметров
Предлагает способ настройки параметров «data-params =» в режиме реального времени. На панели параметров есть параметр для запоминания параметров, которые вы изменили с помощью localStorage (по умолчанию отключено). Любые параметры, изменённые до включения этой функции, также будут запомнены. Повторное нажатие этой кнопки приведёт к удалению информации из хранилища. Один из вышеуказанных методов следует использовать, если вы хотите, чтобы изменения сохранялись на другом компьютере/без использования localStorage. Панель параметров также позволяет включать/выключать Обсуждения.

Из-за того, что эти параметры изменяют требования к дисплею, все текущие изменения, перечисленные на странице, будут очищены, а затем обновлены.

Параметры СП
Чтобы помочь получать список Служебная:RecentChanges как можно больше, этот скрипт принимает RC-стиль параметров URL (используется, как описано выше, с параметрами «data-params», «&params», URL-переменными или панелью параметров). Существует несколько параметров, как описано ниже. Пожалуйста, не делайте, чтобы каждый эффект каждой вики был индивидуальным (так что ограничение 50 для 4 вики фактически ограничено суммой 200).

Есть 4 способа указать параметры в скрипте. Если указано более одного, они будут «просачиваться», причём более конкретная переписывает менее конкретную (например: «&params» более конкретно, чем «data-params»), но только если они оба изменяют одно и то же (например, «days»). Порядок специфичности таков:
 * 1) [Значения по умолчанию]
 * 2) Переменные URL – такое же, как обычная страница RecentChanges.
 * 3) data-params
 * 4) Панель параметров (параметры времени выполнения)
 * 5) &params (обратите внимание, что «панель параметров» не будет перезаписывать их)

Обратите внимание, что для логических переключателей «true/false» значение «0» равно false, а «1» — true.

Обновить все
Обновить все
 * Если вы используете несколько экземпляров на одной странице, все они могут быть обновлены сразу, предоставив класс «rcm-refresh-all» для элемента на странице. например:

Оформление CSS
Этот скрипт использует как можно больше классов RecentChanges по умолчанию, чтобы позволить стилю быть последовательным. Большинство функций, связанных с RCM, также используют имена классов, которые позволяют настраивать. Некоторые полезные классы:
 * охватывает целую группу ввода/записи, причём $ 1 является URL с точками в виде тире (например: dev-wikia-com). По умолчанию используется стиль «.rcm-tiled-favicon», но его можно использовать для настройки любых данных, отличных от их вики.
 * охватывает всю группу ввода/записи, причём $1 является номером пространства имён (например: 0 для основного пространства, 1 для обсуждений и т.д.).
 * представляет значок слева от каждой записи. Может использоваться для изменения/удаления значка.

До тех пор, пока «data-extraLoadingEnabled» не будет отключено, пользовательские ссылки также имеют атрибуты, добавленные после получения данных. означает, что участник заблокирован на этой вики,  позволяет настраивать имена на основе группы участников (с «$1», являющейся идентификатором uniq для этой группы), и добавляется   для анонимных участников. [ Здесь] вы можете найти общие идентификаторы групп (перечисленные как «group-$1»), и [//dev.wikia.com/api.php?action=query&format=xml&list=&meta=siteinfo&siprop=usergroups здесь] вы можете найти список всех групп (и прав, которые приходят с ними, если интересно); просто измените URL-адрес вики, чтобы увидеть его для вашей целевой вики (если участник имеет какие-либо права). Например:

Существует множество других классов (либо пользовательских, либо классов RecentChanges), которые можно использовать для настройки скрипта. Лучший способ найти их — просто проверить элемент, который вы хотите настроить, и перейти оттуда.

Обсуждения
В конце 2016 года ФЭНДОМ начал внедрять свою систему Обсуждений на новых вики, постепенно вытесняя привычные форумы. Правки в Обсуждениях не отображаются на странице Свежих правок, поэтому они также включены в скрипт. За этим последовало несколько неожиданных результатов: Из-за особенностей работы API правка сообщений не отображается как отдельная правка. Вместо этого сообщение будет просто отображаться выше в списке (если дата создания всё ещё находится в пределах верхних 50). Один из возможных неожиданных побочных эффектов заключается в том, что если кто-то редактирует сообщение на следующий день после его создания, он не будет отображаться оба дня.
 * Обсуждения включаются по умолчанию. Его можно отключить на панели параметров или через атрибут.
 * Не все темы в Обсуждениях имеют названия, поэтому, если заголовок отсутствует, первые 35 символов исходного сообщения используются для его идентификации.
 * Поскольку заголовок темы не включён в информацию от API, возвращённую для конкретного поста, заголовки часто необходимо извлекать отдельно (используя тот же механизм второй загрузки, что и заголовков тем на стене/форуме, так же как и эта, текущая функция может быть отключена с помощью атрибута.
 * Многие настройки не влияют на Обсуждения. Некоторые из них работают: hidemyself, hideusers, onlyshowusers, limit и days (подробности см. ниже).
 * Limit - только до 50. Будет работать лимит менее 50.
 * hidemyself / hideusers - повлияет на максимальное количество тем в Обсуждениях, которые вы видите (поскольку часть тем будет удалена из загруженного списка).
 * Эти изменения в настройках загружаются в дополнение к нормальным изменениям. Если для лимита установлено значение меньше или равно 50, это может удвоить результаты, отображаемые для конкретной вики.
 * Обсуждения проверяются только на вики на ФЭНДОМЕ (так как они существуют исключительно на нём). Тем не менее, первый раз, когда скрипт загружает изменения на вики-проектах, ему необходимо проверить все вики, чтобы узнать, существуют ли Обсуждения там. Если они вернут ошибку 404, попытка загрузить эту конкретную вики не повторится.
 * Поскольку API возвращает аватары и итоги голосования, эта информация также включена. Её можно удалить с помощью пользовательского CSS, используя классы  и   соответственно.
 * Due to how the API works, edits to posts are not shown as a separate change. Instead the post will simply appear higher up on the list (if it's creation date is still within the top 50). One possible unexpected side-effect this has is that if someone edits a post the day after they created it, it won't show up under both days.

Перевод
Этот скрипт переводится двумя разными способами: JS-файл для переводов можно найти на Github; переводы также могут быть опубликованы на странице обсуждения или здесь. Переведите только первый раздел «TEXT», а не «MESSAGES».
 * 1) Текст скрипта ("TEXT" в коде) — обычный способ перевода, также как и перевод любого другого скрипта, который необходимо обновлять вручную.
 * 2) Текст со страницы Свежих Правок ("MESSAGES" в коде) — это делается автоматически, загружая текст, обычно находящийся на странице Служебная:RecentChanges с сервера. Любой язык, поддерживаемый ФЭНДОМОМ, должен поддерживаться этим скриптом для такого типа перевода.

Огромное спасибо членам Языковой Бригады Викия за большое количество переводов, сделанных для этого скрипта!

История изменений
См. журнал изменений для подробных изменений или страницы истории для каждого скрипта (/code.js для V1.0.3 и предыдущих, /code.2.js для V1.1.7 и предыдущих и /core.js для текущего).
 * 14 февраля 2015 – Готова альфа-версия (с последующим перерывом).
 * 22-27 мая 2015 – Готова бета-версия.
 * 28 июня 2015 – Скрипт опубликован.
 * V1.1.0 – 26 июля 2015 – Код переписан для использования API MediaWiki (см. ниже).
 * V1.2.0 – 12 декабря 2015 – Теперь скрипт использует загрузчик для загрузки данный в скрипт.
 * V2.0 - 29 октября 2016 - Скрипт переписан в TypeScript.
 * V2.6 - 28 января 2017 - Обновление теперь только извлекает и добавляет новые элементы вместо того, чтобы извлекать и повторно добавлять все изменения. Это позволит более эффективно использовать ограничения большой выборки.

26 июля 2015 - переписка кода для API MediaWiki – V1.1.0
Показать детали Основными целями этой переписки были:


 * 1) Добавление автоматической поддержки перевода текста Свежих правок.
 * 2) Удаление зависимостей от YQL (информация, полученная непосредственно из вики через API). Это также способствует приводит к более быстрой загрузке.
 * 3) Используя поддержку API, расширена поддержка Служебная:RecentChanges (мелкие изменения отмечены, больше контроля над контентом ("days", "limit", "showbots" и т.д.)).
 * 4) Переписка кода для того, чтобы он был немного более эффективным.


 * Важные заметки:
 * "&subdir" удалён и "&scriptdir" добавлен (может потребоваться для нефэндомовских вики, см. выше). Например:
 * «data-params» теперь предлагает гораздо большую поддержку. "days" и "limit" теперь работают до той же суммы, что и для каждой вики в списке. Таким образом, это должно быть ограничено несколькими днями / нижним пределом, чтобы избежать загрузки потенциально нескольких тысяч изменений. Отдельные вики могут иметь эти ограничения, изменённые с помощью «&params»


 * Изменения:
 * Изменён перевод, чтобы использовать более точную информацию i18n со страницы GitHub на ФЭНДОМЕ для RC_TEXT. Загружает RC_TEXT с сервера на основе вашего языка.
 * Основные темы форума/стены теперь также проверяются [восстановление, удаление, переименование] для «ответов», вместо того, чтобы читать их целиком как одну тему.
 * Все (нормальные) параметры Свежих правок поддерживаются, за исключением « hideenhanced », «from» и просмотра выбранного пространства имён.
 * Теперь правки ботов могут быть показаны (отключено по умолчанию), и отмечены как «малые» правки.
 * Параметр gApp превратился в класс RecentChangesMultiple (чтобы потенциально запускать несколько по какой-либо причине, плюс автор предпочитает «традиционные» структуры класса OO)
 * Таким образом, #rc-content-multiple id теперь должен быть классом .rc-content-multiple, чтобы разрешить несколько экземпляров (хотя использование идентификаторов по-прежнему поддерживается)
 * Дополнительные CSS-классы для страницы Свежих правок.
 * Переписаны параметры в списках СП (чтобы привнести немного больше информации о том, как это выглядит в системе mw)
 * Новый класс «WikiData» для хранения данных, специфичных для вики, более понятным образом, а также предоставление вспомогательных методов

Заметки
(Журнал прав участника) — права будут перечислены с использованием их «id» вместо перевода названия группы участников. Таким образом, это будет похоже на «sysop». Не все вики имеют одинаковые группы, поэтому получение переводов от каждой вики больше связано с чем-то большим.
 * «Красные ссылки» для страниц, которые не существуют, не будут отображаться в большинстве журналов, так как эту информацию нужно будет извлекать отдельно для каждой страницы. По умолчанию они отображаются красным цветом.
 * Патрулирование не поддерживается в настоящее время. Это связано с защитой MediaWiki, которая запрещает доступ к информации о патрулировании, если она не разрешена (строго нарушает работу скрипта, если он пытается получить её без разрешения). Даже если право существует, информация не может быть получена из-за необходимости входа в эту вики, которая недоступна из-за кросс-домена (пересечения адресов разных вики (для безопасности браузера)).
 * Журналы:
 * Журналы могут делать странные вещи в «редких» случаях (например, действия только для сотрудников и редко действия только для расширений). Их поддержка может быть добавлена, но она не включена по умолчанию, поскольку каждый из этих параметров должен быть проверен вручную для каждого типа данных (а иногда и каждого конкретного действия).
 * (Rights log) – the rights will be listed using their "id" instead of a translation of the user group. So it'll be things like "sysop". Not all wikis have same groups, so getting translations from each wiki is more of a burden than it's worth.
 * Этот скрипт извлекает переводы RecentChanges непосредственно с сервера, поскольку такие переводы могут отличаться при использовании на нефэндомовских вики. Если загрузка не удаётся довольно долго, страница просто по умолчанию будет на английском языке.

Разное

 * «http: //» не следует использовать в этом скрипте, чтобы он автоматически не становился ссылкой (это мешает процессу), и появляется на Служебная:LinkSearch как страница с внешней ссылкой (может быть нежелательно).
 * Скрипт предназначен для вики на ФЭНДОМЕ, но должен работать для любой вики (при условии, что её версия движка не слишком устарела).
 * Некоторые нефэндомовские вики просто не работают из-за особенностей настроек (старая версия MediaWiki, отключён API и т.д.)
 * Скрипт должен запускаться с использованием code.2.js. Хотя первая версия больше не поддерживается, исходную версию Atom-feed можно найти в файле code.js с документацией, которую можно найти здесь.

Требования

 * jQuery
 * Все вики в скрипте должны:
 * Работать на движке Mediawiki (версия не ниже 1.16)
 * Работать с подключённым Mediawiki API.
 * Браузер должен поддерживать ECMAScript5 (подойдёт любая не слишком старая версия браузера)
 * Скрипт должен работать на вики ФЭНДОМА (чтобы быть уверенными, что он имеет доступ к таким вещам, как код для свёртывания списков).