Przejdź do głównej zawartości

Prezydent (Presidents)

Moduł Presidents zarządza systemem prezydenta serwera: mianowanie, usuwanie, wydawanie dekretów i historia. Prezydent to specjalna rola — jeden aktywny na serwer — z możliwością wydawania ogłoszeń (dekretów) w różnych kategoriach.

Włączanie modułu

  1. Dashboard → Twój serwer → toggle Presidents
  2. Kliknij Edit i skonfiguruj rolę prezydenta, kanały ogłoszeń
  3. Zapisz zmiany

Konfiguracja

OpcjaTypDomyślnieOpis
role_idstring / nullnullID roli Discord prezydenta (nadawana automatycznie)
announcement_channel_idstring / nullnullKanał ogłoszeń prezydeckich
decree_channelsobject{}Kanały per-typ dekretu
appoint_roleslista[]Role mogące mianować prezydenta
use_moderation_rolesbooleanfalseUżyj ról moderacyjnych zamiast appoint_roles
decree_typeslista["general", "economic", "military", "diplomatic"]Dostępne typy dekretów

Struktura decree_channels

{
"general": "channel_id_or_null",
"economic": "channel_id_or_null",
"military": "channel_id_or_null",
"diplomatic": "channel_id_or_null"
}

Jeśli kanał dla danego typu nie jest ustawiony, dekret trafia na announcement_channel_id.

Dashboard — konfiguracja

Panel edycji Presidents zawiera:

  • President Role — dropdown z rolami serwera
  • Announcement Channel — dropdown z kanałami
  • Decree Channels — osobne dropdowny dla każdego typu dekretu
  • Appoint Roles — multi-select lub checkbox "Use Moderation Roles"

Komendy

/president appoint

Mianuje nowego prezydenta serwera.

ParametrWymaganyOpis
memberUżytkownik do mianowania

Wymagania: Administrator lub rola z appoint_roles / moderation_roles.

Flow:

  1. Sprawdza uprawnienia
  2. Kończy kadencję aktualnego prezydenta (jeśli istnieje)
  3. Usuwa rolę prezydenta od starego
  4. Wstawia nowy rekord do tabeli presidents
  5. Nadaje rolę prezydenta nowemu
  6. Wysyła ogłoszenie na announcement_channel_id
  7. Loguje mianowanie

/president remove

Usuwa aktualnego prezydenta.

Wymagania: Administrator lub rola z appoint_roles.

Flow:

  1. Sprawdza uprawnienia
  2. Oznacza rekord jako is_active = FALSE z ended_at
  3. Usuwa rolę prezydenta
  4. Loguje usunięcie

/president info

Wyświetla informacje o aktualnym prezydencie (publiczny embed).

Zawiera:

  • Mention prezydenta
  • Data rozpoczęcia kadencji (relative timestamp)
  • Avatar

/president history

Wyświetla historię prezydentów (max 10 ostatnich).

Każdy wpis zawiera:

  • Nazwę/mention
  • Datę rozpoczęcia i zakończenia kadencji
  • Czy aktywny

/president decree

Wydaje dekret prezydencki (tylko aktualny prezydent).

ParametrWymaganyOpis
decree_typeTyp: General, Economic, Military, Diplomatic
messageTreść dekretu

Typy dekretów i kolory:

TypEmojiKolor
General📜Złoty (#F1C40F)
Economic💰Zielony (#2ECC71)
Military⚔️Czerwony (#E74C3C)
Diplomatic🕊️Niebieski (#3498DB)

Dekret wysyłany jest jako embed na odpowiedni kanał (per-typ lub domyślny announcement).

Uprawnienia

AkcjaKto może
Mianowanie/usunięcieAdministrator, appoint_roles, moderation_roles (gdy enabled)
Wydawanie dekretówTylko aktualny prezydent
Podgląd info/historyKażdy

Baza danych

Tabela presidents:

  • id — auto-increment
  • guild_id — ID serwera
  • user_id — ID prezydenta
  • started_at — data mianowania
  • ended_at — data zakończenia kadencji (null jeśli aktywny)
  • is_active — czy to aktualny prezydent

Logowanie

Akcje logowane przez Logs pod kategorią presidents:

  • 🎖️ President Appointed — kto mianował, kogo
  • 🚫 President Removed — kto usunął
  • 📜 Decree Issued — typ i treść (skrócona)

Wskazówki

Best practices
  • Utwórz dedykowaną rolę "President" z wyróżniającym kolorem
  • Skonfiguruj announcement_channel_id na kanał widoczny dla wszystkich
  • Osobne decree_channels pozwalają organizować dekrety tematycznie
  • Używaj dekretów do oficjalnych ogłoszeń game-related
informacja

Na serwerze może być tylko jeden aktywny prezydent. Mianowanie nowego automatycznie kończy kadencję poprzedniego.