WP Manifestindependent plugin directory
manifest / events / wordpress-plugin-fstu

FSTU Portal

Офіційний плагін Федерації спортивного туризму України (ФСТУ). Повноцінна Enterprise-система (ERP/CRM) на базі WordPress для управління структурою федерації, ведення реєстрів (спортсменів, суддів, вітрильних суден), обробки заявок та фінансового обліку.

by Oleksandr Dykyi · github.com/aleksandrdikiy/wordpress-plugin-fstu · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/aleksandrdikiy/wordpress-plugin-fstu/archive/refs/heads/main.zip

⛺ FSTU Portal – WordPress Plugin

Офіційний плагін Федерації спортивного туризму України (ФСТУ). Повноцінна Enterprise-система (ERP/CRM) на базі WordPress для управління структурою федерації, ведення реєстрів (спортсменів, суддів, вітрильних суден), обробки заявок та фінансового обліку.

🌐 Офіційний сайт: www.fstu.com.ua


📑 Зміст

  1. Функціональні можливості (Модулі)
  2. Інтеграція з API (Python)
  3. Архітектура та Стандарти Коду
  4. Вимоги до середовища
  5. Встановлення, Деплой та Оновлення
  6. Структура бази даних

🚀 Функціональні можливості (Модулі)

Плагін містить понад 70 модулів та форм, які розділені на три великі логічні блоки:

1. Реєстри ФСТУ

Ключовий модуль для автоматизації обліку членів та активів федерації.

  • 👤 Реєстр членів ФСТУ (з детальною інформацією: досвід, розряди, членські квитки)
  • ⚖️ Реєстр суддів ФСТУ
  • 🏢 Склад керівних органів ФСТУ
  • Вітрильні реєстри: Реєстр капітанів, Реєстр стернових, Реєстр суден
  • 🏅 Реєстри відзнак
  • 🎓 Семінари ФСТУ

2. Структура ФСТУ

Управління ієрархією та органами самоврядування:

  • Осередки федерації спортивного туризму
  • Виконком та Президія
  • Комісії з видів туризму
  • Колегія суддів змагань з ВСТ
  • Реєстр членів МКК (Маршрутно-кваліфікаційних комісій)
  • Рада ветеранів та Ревізійна комісія
  • З’їзд ФСТУ

3. Довідники (System Dictionaries)

Блок системних налаштувань для гнучкого управління даними (понад 20 довідників), серед яких:

  • Види змагань, походів, складності та видів туризму
  • Клуби, осередки, комісії та керівні органи
  • Географія (Країни, області, населені пункти)
  • Спортивні розряди та суддівські категорії
  • Статуси карток/квитків, типи вітрильних залікових груп
  • Реєстратори, Статистика та Користувачі онлайн

🤖 Інтеграція з API (Python)

Для розширення можливостей платформи, плагін тісно взаємодіє із зовнішнім Python API (мікросервісна архітектура) для виконання фонових та асинхронних завдань:

  • 📱 Telegram-сповіщення: * Миттєве інформування про надходження нових заявок на членство в ФСТУ.
    • Сповіщення про заявки на судновий квиток.
    • Сповіщення про заявки на стерновий квиток.
  • 🗳️ Системи голосування:
    • Забезпечення механізмів онлайн-голосування вітрильної спільноти.
    • Безпечне та закрите голосування Президії ФСТУ.

🏗 Архітектура та Стандарти Коду

Плагін переписано з урахуванням MVC-подібного підходу та суворих правил безпеки рівня WordPress VIP:

  • Модульність: Кожен логічний блок має власні Controllers (includes/), Views (views/) та Assets (js/, css/).
  • Безпека (Security First):
    • Перевірка Nonce (check_ajax_referer) для всіх AJAX-запитів.
    • Обов'язкова перевірка прав (current_user_can) перед виконанням дій.
    • Пізнє екранування (esc_html, esc_attr) перед виводом даних у шаблон.
  • База даних: Абсолютно всі запити до БД виконуються ТІЛЬКИ через Prepared Statements ($wpdb->prepare()). Використовується $wpdb->esc_like() для безпечного пошуку.
  • JS/CSS: Жодних inline-скриптів. Використовується делегування подій у jQuery та локалізація скриптів (wp_localize_script) для передачі бекенд-змінних.

💻 Вимоги до середовища

  • PHP: Версія 8.1 або новіша (використовуються суворі типи та нові можливості синтаксису).
  • WordPress: Версія 6.0 або новіша.
  • База даних: MySQL 8.0+ або MariaDB 10.4+ (підтримка складної кастомної схеми БД ФСТУ, 155=таблиць, 130=view, 60=функцій, 31=процедура).
  • Додатково: * Python 3.9+ (для мікросервісів API).
    • Налаштований WP-Cron для бекграунд-тасок.

📦 Встановлення, Деплой та Оновлення

Плагін використовує бібліотеку Plugin Update Checker. Це означає, що вам не потрібно оновлювати його вручну через FTP чи завантаження ZIP-архівів.

Початкове встановлення:

  1. Завантажте актуальний реліз з GitHub.
  2. Розпакуйте у директорію wp-content/plugins/fstu.
  3. Активуйте плагін "FSTU" через адмін-панель WordPress.

Процес оновлення (Деплой):

  1. Всі зміни розробляються та тестуються у гілці main.
  2. При випуску нової версії (створенні Release / Tag на GitHub), плагін автоматично надсилає сигнал системі WordPress.
  3. Адміністратор сайту бачить стандартне повідомлення про оновлення в адмінці (Консоль -> Оновлення) та оновлює плагін в один клік, як і будь-який інший плагін з репозиторію WP.

🗄 Структура бази даних

Плагін використовує розширену (custom) структуру бази даних, яка працює паралельно зі стандартними таблицями WordPress. Таблиці зберігають історичні дані федерації (S_Region, S_TourismType, UserClub, ApplicationShipTicket, Dues, DuesSail тощо). Усі міграції та зміни схеми керуються через вбудований у плагін механізм dbDelta().


Розроблено для розвитку та цифровізації спортивного туризму України. 🇺🇦