1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

ogruNotifier 1.2.0

Автор: pause_break · 26 ноя 2022 · ·
  1. GitHub - innokentiyt/ogruNotifier: A Web Extension for getting notifications counter from Old-Games.RU forum.

    [​IMG] [​IMG]

    Обновил расширение (на площадках они опубликовались с версией 1.1.2, забыл бампнуть версию в манифестах). Что появилось:
    • Настройка длительности периода между проверками. По умолчанию 5 минут, как в предыдущих версиях. Можно также выбрать 3 минуты или 10 минут.
    • Настройка для получения оповещений по новым перепискам. По умолчанию выключено: расширение будет работать по старому и проверять только форумные оповещения. При включении счетчик будет отображать сумму оповещений форумных и новых переписок. При наводке курсора на значок дополнения можно увидеть, откуда идут оповещения.
      • Если у вас 0 форумных оповещений и ≥1 оповещения по перепискам, то при нажатии на значок дополнения откроется страница переписок (не бойтесь, переписки не будет прочитаны при этом).
      • Почему beta? Я предполагаю, что мог допустить ошибки в логиках проверок, суммирования типов оповещений и сброса счетчика. Напишите мне, если заметите ошибки.
    upload_2022-11-26_20-13-56.png

    upload_2022-11-26_20-15-58.png
    Ага, страница настроек выбивается из стиля Firefox, несмотря на "browser_style": true в манифесте расширения. Это, насколько я понял, баг самого фокса.

    Страница настроек расширения находится в странице установленного дополнения в вашем браузере. В Firefox довольно легко находится. В Chrome ссылка на страницу настроек немного незаметна:
    1. обновите расширение;
    2. открыть страницу установленных расширений - chrome://extensions/;
    3. нажать на "Сведения" ogruNotifier;
    4. прокрутить вниз и нажать на "Параметры расширений" (надмозги).
    Перед версией 1.2.0 я сделал версию 1.1.2 без публикации в площадках. Там я попытался привести файловую структуру исходников в более удобоваримый вид. Поскольку Google теперь медленно проверяет расширения с Manifest V2 (или вовсе не проверяет), ранее пришлось избавиться от browser-polyfill.js (слой совместимости кода между Firefox и Chrome, позволявший писать один код на эти браузеры) и немного переделать код именно под Manifest V3. Потом я нашел нехитрый и упрощенный способ проверять API расширений без использования всяких либ (подсмотрел принцип у GitHub - Anarios/return-youtube-dislike: Chrome extension to return youtube dislikes), и смог теперь с помощью небольших костылей сделать общий код и для Firefox, и для Chrome.

    А еще я использую webpack для удобного копирования файлов в дистрибутивы для фокса и хрома через build-скрипт npm. Да, это почти как стрелять в уток из пороховой пушки.

    upload_2022-11-26_20-42-32.png
    Столько весит webpack, copy-webpack-plugin и все их зависимости. Все это безобразие в само расширение не входит, слава богу, а нужно лишь для вызова скрипта npm run build для удобства локального тестирования расширения.

    Что в TODO?
    • Перепроверить код еще раз. Может быть даже посмотреть, как делаются unit-тесты в JS.
    • Хочу специальный эндпойнт для расширения, чтобы оно перестало запрашивать html-файл "Связи с администрацией" для парсинга. @SAS :rolleyes:
    • i18n - разобраться, как делать мультиязычные расширения, и, наконец, перевести все тексты расширения (в коде и на площадках) на русский.
    Leiji, ВелоВояджер и Gerhalt нравится это.

Комментарии

  1. ВелоВояджер
    Спасибо. Прошлая версия была удобным способом следить за оповещениями, теперь надо попробовать эту.

    Кстати, это расширение, наверное, может работать и на других аналогичных форумах (на том же движке), если немного подправить адреса, куда оно обращается? (На других форумах почти не бываю, мне просто интересно, потому что в эту сторону, скорее всего, тоже можно развивать OGRU Notifier).
    1. pause_break
      Вообще, да. Расширение вполне можно сделать универсальным для форумов XenForo, если домен обращения сделать настраиваемым. Правда, в таком случае дополнению придется дать host permission на чтение всех сайтов.
  2. Leiji
    Спасибо. Старая версия меня выручает напоминанием, что давно не заходил. Поставил новую, но оставил 5 минут. А вот дополнительные оповещения включил.
  3. pause_break
    Попробовал чисто для интереса с наскоку перевести js-код на TypeScript, и вообще посмотреть, как там в TS дела обстоят. Много вещей после Java/Kotlin все равно кажутся неинтуитивными, и type inference по ощущениям не настолько мощный и умный как в Kotlin. И с DOM работать в TS как будто еще сложнее и нуднее.

    Но все равно интересно. Код на гитхабе вряд ли буду переводить на TS, так, для себя копаюсь, в основном.
Чтобы оставить комментарий просто зарегистрируйтесь и станьте участником!
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление