📅 EventsSystem
Description
File: EventsSystem.py
Complete event management system with recurrence, auto-subscriptions, and interactive panels.
Features
- Recurrence: Supports Weekly, Monthly, or Custom interval (X days) events.
- Auto-Registration: Users can subscribe to criteria (Game + Category) to be auto-registered for future events.
- Reminders: Automated DMs sent X days and X minutes before start.
- Staff Panel: dedicated interface for managing events, viewing participants, and managing settings.
- Rich Embeds: Dynamic public panels with filtering capabilities.
Commands
Public Commands
| Command | Description |
|---|---|
/event liste | List upcoming events. |
/event panel | Display a public interactive panel (optional category filter). |
/event autoinscriptions | View active auto-subscriptions. |
/event autoinscription_stop | Stop a specific recurring subscription. |
/event auto_criteria | Configure criteria for auto-registration. |
Staff / Admin Commands
| Command | Description |
|---|---|
/event créer | Create a new event with detailed options (Recurrence, Roles, Slots). |
/event modifier | Edit an existing event. |
/event supprimer | Delete an event. |
/event staff_panel | Spawns the management dashboard. |
/event game_add | Add a game to the list. |
/event game_remove | Remove a game from the list. |
/event categorie_ajouter | Add an event category. |
/event categorie_supprimer | Remove an event category. |
Database Schema
| Table | Description |
|---|---|
events | Core event data (title, start_time, recurrence_rule, participants JSON). |
reminders | User specific reminder settings. |
event_recurrent_auto | Link between users and recurring event series. |
event_auto_criteria | Criteria-based auto-registration rules. |
public_event_panels | UI persistence for public panels. |
staff_event_panel | UI persistence for staff panels. |