Редактор тем

Helgring Forum Stats Report Builder

XenForo Helgring Forum Stats Report Builder 1.0.0

Нет прав для скачивания
Helgring Forum Stats Report Builder
POSTER.png

Сбор статистики XenForo • Анализ активности • Автоматическое формирование отчётов
​

Версия: 1.0.0
Автор: Shum1kh1n
Платформа: XenForo 2.3.x / PHP
​

📊 О проекте
Helgring Forum Stats Report Builder — мой собственный служебный PHP-инструмент для XenForo, предназначенный для сбора статистики форума за выбранный период, анализа активности и автоматической подготовки готовых отчётов для публикации.

Изначально инструмент создавался для одной конкретной задачи — упростить подготовку ежемесячной статистики активности Forum.Helgring.Ru.

Со временем обычный сборщик данных превратился в полноценный рабочий комплекс, объединяющий несколько этапов:

Сбор данных → Анализ → Проверка → Формирование отчёта → Экспорт → Публикация​
Инструмент работает непосредственно с XenForo, использует его окружение и базу данных и предоставляет отдельную служебную страницу с собственным интерфейсом.

Это не классический XenForo Add-on, устанавливаемый через ACP одним нажатием, а самостоятельная PHP-страница, интегрированная с установленным форумом.


📅 Работа с периодами
Можно вручную выбрать:
  • Дату начала периода;
  • Дату окончания периода.
Дата окончания считается включительно.
Например, если указано:
Код:
01.08.2026 — 31.08.2026
то в статистику попадёт весь день 31 августа, а техническая верхняя SQL-граница будет соответствовать началу следующего дня.

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

Инструмент также учитывает часовой пояс текущего пользователя XenForo.

Приоритет определения часового пояса:

  1. Часовой пояс текущего XenForo-пользователя;
  2. Гостевой часовой пояс форума;
  3. UTC как резервный вариант.
В интерфейсе отображается используемый часовой пояс и техническая SQL-граница выбранного периода.

⚡ Быстрый выбор периода
Для часто используемых диапазонов предусмотрены готовые варианты:
  • Текущий месяц;
  • Прошлый месяц;
  • Последние 30 дней;
  • Полный выбранный календарный месяц.
Отдельная функция позволяет выбрать месяц и сразу сформировать статистику за весь календарный период.

📈 Основная статистика форума
За выбранный период рассчитываются:
  • Количество созданных тем;
  • Количество опубликованных сообщений;
  • Общее количество новых единиц контента;
  • Новые регистрации;
  • Активные пользователи;
  • Количество загруженных вложений;
  • Суммарный размер вложений;
  • Общее количество реакций;
  • Среднее количество сообщений в день;
  • Просмотры тем.
Активность пользователей рассчитывается именно по выбранному периоду, а не по накопительным значениям профиля пользователя.

❤️ Реакции по типам контента
Общая статистика реакций дополнительно разбивается по типу содержимого:
  • Реакции на сообщения форума;
  • Реакции в личных переписках;
  • Реакции на обновления ресурсов;
  • Реакции на новости.
Это позволяет увидеть не только общее количество реакций, но и понять, на какой тип контента аудитория реагировала активнее.

📦 XenForo Resource Manager
При наличии XenForo Resource Manager инструмент дополнительно отображает:
  • Количество опубликованных ресурсов;
  • Количество скачиваний;
  • Просмотры ресурсов.
Поддержка Resource Manager является необязательной: если соответствующих таблиц в базе данных нет, основная статистика XenForo продолжает работать.

📰 Новости
При наличии используемого на форуме модуля новостей собираются:
  • Количество опубликованных новостей;
  • Количество комментариев;
  • Просмотры новостей;
  • Количество новостей, для которых были созданы темы обсуждения.
Текущая сборка поддерживает таблицы XenCustomize News Publisher.

📄 Статьи
При наличии XenAddons Article Management System рассчитываются:
  • Опубликованные статьи;
  • Комментарии к статьям;
  • Темы обсуждения статей.
Как и в случае с другими дополнительными компонентами, отсутствие соответствующих таблиц не должно мешать работе основной части инструмента.

🏆 Лидеры выбранного периода
Инструмент автоматически определяет наиболее заметные показатели периода.

В отдельном блоке отображаются:

  • Самый активный пользователь — по количеству сообщений за выбранный период;
  • Самая обсуждаемая тема;
  • Самая просматриваемая тема;
  • Самая заметная новость;
  • Статья периода;
  • Новый участник периода.

🥇 TOP-списки
Дополнительно формируются отдельные рейтинги:
  • TOP-5 пользователей по количеству опубликованных сообщений;
  • TOP-5 самых обсуждаемых тем;
  • TOP-5 самых просматриваемых тем;
  • TOP-5 новостей.
Пользовательский TOP рассчитывается только по активности внутри выбранного диапазона дат.

🧩 Helgring Report Builder
Одна из основных частей проекта — встроенный Helgring Report Builder.

После получения статистики выбранного периода можно нажать:

✨ Сформировать тему
После этого открывается отдельный конструктор готового отчёта.

Report Builder автоматически подготавливает:

  • Название темы;
  • Диапазон дат;
  • Все показатели статистики;
  • Данные лидеров;
  • TOP-списки;
  • Ссылки на темы, новости и статьи;
  • Автоматический комментарий администрации;
  • Полный BBCode будущей темы.

✍️ Комментарий администрации
Инструмент способен самостоятельно сформировать текстовый комментарий по итогам периода.

При генерации учитываются реальные показатели статистики.

Автоматический текст можно:

  • Оставить без изменений;
  • Отредактировать вручную;
  • Вернуть к автоматически сформированному варианту;
  • Применить изменения непосредственно к BBCode.
Черновик комментария может сохраняться в текущем браузере.

✅ Проверка отчёта
В Report Builder предусмотрен отдельный блок проверки данных.

Перед публикацией можно дополнительно проверить подготовленный отчёт и убедиться, что необходимые элементы были сформированы корректно.

Также доступен предпросмотр будущей темы.

Это позволяет увидеть приблизительный результат ещё до фактической публикации на форуме.


📋 Работа с готовым BBCode
После формирования отчёта доступны действия:
  • Скопировать название темы;
  • Скопировать готовый BBCode;
  • Скопировать весь комплект публикации;
  • Скачать BBCode в TXT-файл;
  • Сохранить отчёт во внутреннюю историю браузера;
  • Перейти непосредственно к созданию темы в заранее настроенном разделе XenForo.
Также предусмотрена отдельная кнопка для быстрого формирования отчёта за прошлый месяц.

📚 История отчётов
Report Builder имеет локальную историю последних подготовленных отчётов.

История хранится в браузере и позволяет вернуться к ранее сформированным данным без необходимости каждый раз начинать работу с нуля.

При необходимости историю можно очистить.


💾 Экспорт статистики
Инструмент поддерживает три формата экспорта.

JSON

Структурированные данные, пригодные для хранения и последующей автоматической обработки.​

TXT

Человекочитаемый текстовый архив статистики.​

BBCode

Готовый отчёт для последующей публикации на XenForo.​

Файлы формируются непосредственно из выбранного диапазона статистики.


📦 Архивные отчёты
Сохранённую ранее статистику можно снова загрузить обратно в инструмент.

Поддерживаются:

  • JSON;
  • TXT.
После загрузки файл проверяется и преобразуется обратно в структуру Report Builder.

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

Ограничения загрузки:

  • Поддерживаются только JSON и TXT;
  • Максимальный размер файла — 2 МБ;
  • JSON проходит проверку структуры перед использованием.

🎨 Настройки оформления
У инструмента есть собственные настройки интерфейса.

Можно выбрать:

Шрифт интерфейса:

  • Системный;
  • Georgia;
  • Arial;
  • Verdana;
  • Tahoma;
  • Trebuchet MS;
  • Times New Roman.
Также регулируется базовый размер текста интерфейса.

Отдельно настраивается оформление готового BBCode-отчёта:

  • Шрифт отчёта;
  • Размер основного текста;
  • Размер заголовков разделов;
  • Размер главного заголовка.
По умолчанию для отчёта используется Georgia.

Настройки сохраняются локально в текущем браузере.


🔐 Защита служебной страницы
Инструмент не полагается только на скрытие ссылки в навигации XenForo.

Доступ дополнительно проверяется на серверной стороне.

Разрешённые XenForo user ID задаются отдельно в конфигурации.

Если пользователь не входит в список разрешённых:

  • Возвращается HTTP 403;
  • Отображается отдельная страница «Доступ ограничен»;
  • Знание прямого URL не предоставляет доступ к инструменту.
Дополнительно устанавливаются HTTP-заголовки:
Код:
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'

🕶️ Приватные разделы
Для меня было важно, чтобы статистика форума оставалась полной, но при этом отчёт не раскрывал содержимое закрытых разделов.

Можно указать корневые приватные node ID.

Дочерние узлы таких разделов определяются автоматически.

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

Для приватной темы:

  • Исходное название заменяется на «Приватный раздел»;
  • Исходный thread ID удаляется из экспортируемых данных;
  • Node ID не передаётся в подготовленный публичный результат;
  • Прямая ссылка на закрытую тему не формируется.
Защита применяется к HTML, JSON, TXT и BBCode.

⚠️ Важная особенность некоторых показателей

Некоторые счётчики XenForo и дополнительных компонентов являются накопительными.

Например, view_count и download_count хранят текущее суммарное значение объекта.

Поэтому для тем и ресурсов, созданных внутри выбранного периода, инструмент показывает их текущее накопленное количество просмотров/скачиваний.

Это не всегда означает количество новых просмотров или загрузок, произошедших исключительно внутри выбранного диапазона дат.

Эту особенность необходимо учитывать при интерпретации статистики.


🛠️ Установка
Текущая версия рассчитана на размещение файла по пути:
Код:
<XENFORO_ROOT>/custom_pages/system/Название скрыто.php
PHP-файл подключает XenForo через относительный путь к:
Код:
src/XF.php
Если инструмент размещается в другом каталоге, относительные пути необходимо изменить.

После копирования файла необходимо настроить параметры конкретной установки XenForo.


⚙️ Что необходимо настроить
Перед использованием необходимо проверить:
  • XenForo user ID пользователей, которым разрешён доступ;
  • ID форума, куда Report Builder должен отправлять пользователя для создания темы;
  • Корневые node ID приватных разделов;
  • Начальную дату статистики по умолчанию;
  • При необходимости — запросы к таблицам сторонних дополнений.
Текущая сборка подготовлена под мою установку XenForo и не является универсальным plug-and-play решением без настройки.

🧩 Поддерживаемые дополнительные компоненты
Текущая версия умеет использовать данные:
  • XenForo Resource Manager;
  • XenCustomize News Publisher;
  • XenAddons Article Management System.
Если структура таблиц на другой установке отличается, соответствующие запросы потребуется адаптировать.

📁 Структура релизного пакета
Код:
Helgring_Forum_Stats_Report_Builder_v1.0.0/
│
├─ Helgring_Forum_Stats_Report_Builder.php
├─ README_RU.md
├─ CHANGELOG.md
├─ VERSION.txt
├─ ABOUT_HELGRING.txt
│
├─ docs/
│   ├─ INSTALLATION.md
│   ├─ CONFIGURATION.md
│   └─ PRIVACY.md
│
└─ screenshots/
В проекте намеренно не используется SHA256-файл — пакет поддерживается максимально просто, без лишней ручной работы при каждом обновлении.


📸 Скриншоты
Ниже будут размещены реальные скриншоты текущей версии:
1.png2.png3.png4.png5.png6.png7.png8.png9.png​

🚀 Версия 1.0.0
Первый оформленный релиз включает:
  • Сбор статистики XenForo за произвольный период;
  • Включительную дату окончания;
  • Корректные границы периода с учётом часового пояса;
  • Быстрые периоды;
  • Темы, сообщения, пользователей, вложения и реакции;
  • Resource Manager;
  • Новости;
  • Статьи;
  • Лидеров периода;
  • TOP-списки;
  • Helgring Report Builder;
  • Автоматическую генерацию BBCode;
  • Автоматический комментарий администрации;
  • Экспорт JSON / TXT / BBCode;
  • Повторную загрузку архивных отчётов;
  • Маскирование приватных разделов;
  • Серверное ограничение доступа;
  • Настройки оформления интерфейса и отчёта.

🔗 Официальные ресурсы
Форум:

Telegram:

От первой идеи до готового проекта. 🚀
© Shum1kh1n / Helgring​
Автор
Shum1kh1nПрофиль пользователя Shum1kh1n подтверждён.2
Скачиваний
0
Просмотры
13
Опубликовано
Обновлено

Оценки

0.00 звёзд 0 оценок

Другие ресурсы от Shum1kh1n

Назад
Сверху Снизу