forked from sass/tipibot
90 lines
3.1 KiB
Python
90 lines
3.1 KiB
Python
import os
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
BOT_PROFILE = os.getenv("BOT_PROFILE", "dev").strip().lower() or "dev"
|
|
if BOT_PROFILE not in {"dev", "economy", "lan"}:
|
|
raise SystemExit("BOT_PROFILE must be either 'dev', 'economy', or 'lan'.")
|
|
|
|
|
|
def _env_int(name: str, default: int) -> int:
|
|
raw = os.getenv(name)
|
|
if raw is None or not raw.strip():
|
|
return default
|
|
return int(raw)
|
|
|
|
|
|
_LEGACY_DISCORD_TOKEN = os.getenv("DISCORD_TOKEN", "")
|
|
DISCORD_TOKEN_DEV = os.getenv("DISCORD_TOKEN_DEV", "")
|
|
DISCORD_TOKEN_ECONOMY = os.getenv("DISCORD_TOKEN_ECONOMY", "")
|
|
DISCORD_BOT_LAN = os.getenv("DISCORD_BOT_LAN", "")
|
|
DISCORD_TOKEN = {
|
|
"dev": DISCORD_TOKEN_DEV,
|
|
"economy": DISCORD_TOKEN_ECONOMY,
|
|
"lan": DISCORD_BOT_LAN,
|
|
}[BOT_PROFILE] or _LEGACY_DISCORD_TOKEN
|
|
|
|
SHEET_ID_DEV = os.getenv("SHEET_ID_DEV", "").strip()
|
|
SHEET_ID_LAN = os.getenv("SHEET_ID_LAN", "").strip()
|
|
SHEET_ID = (
|
|
SHEET_ID_LAN
|
|
if BOT_PROFILE == "lan"
|
|
else SHEET_ID_DEV or os.getenv("SHEET_ID")
|
|
)
|
|
GOOGLE_CREDS_PATH = os.getenv("GOOGLE_CREDS_PATH", "credentials.json")
|
|
|
|
_LEGACY_GUILD_ID = _env_int("GUILD_ID", 0)
|
|
GUILD_ID_DEV = _env_int("GUILD_ID_DEV", _LEGACY_GUILD_ID)
|
|
GUILD_ID_ECONOMY = _env_int("GUILD_ID_ECONOMY", _LEGACY_GUILD_ID)
|
|
GUILD_ID_LAN = _env_int("GUILD_ID_LAN", 0)
|
|
GUILD_ID = {
|
|
"dev": GUILD_ID_DEV,
|
|
"economy": GUILD_ID_ECONOMY,
|
|
"lan": GUILD_ID_LAN,
|
|
}[BOT_PROFILE]
|
|
|
|
_LEGACY_BIRTHDAY_CHANNEL_ID = _env_int("BIRTHDAY_CHANNEL_ID", 0)
|
|
BIRTHDAY_CHANNEL_ID_DEV = _env_int("BIRTHDAY_CHANNEL_ID_DEV", _LEGACY_BIRTHDAY_CHANNEL_ID)
|
|
BIRTHDAY_CHANNEL_ID_ECONOMY = _env_int("BIRTHDAY_CHANNEL_ID_ECONOMY", 0)
|
|
BIRTHDAY_CHANNEL_ID = (
|
|
BIRTHDAY_CHANNEL_ID_ECONOMY
|
|
if BOT_PROFILE == "economy"
|
|
else BIRTHDAY_CHANNEL_ID_DEV
|
|
)
|
|
|
|
BIRTHDAY_WINDOW_DAYS = int(os.getenv("BIRTHDAY_WINDOW_DAYS", "7"))
|
|
BASE_ROLE_IDS: list[int] = [1478304631930228779, 1478302278862766190]
|
|
|
|
PB_URL = os.getenv("PB_URL", "http://127.0.0.1:8090")
|
|
PB_ADMIN_EMAIL = os.getenv("PB_ADMIN_EMAIL", "")
|
|
PB_ADMIN_PASSWORD = os.getenv("PB_ADMIN_PASSWORD", "")
|
|
|
|
_LEGACY_PB_COLLECTION = os.getenv("PB_ECONOMY_COLLECTION", "").strip()
|
|
PB_ECONOMY_COLLECTION_DEV = (
|
|
os.getenv("PB_ECONOMY_COLLECTION_DEV", "").strip()
|
|
or (_LEGACY_PB_COLLECTION if _LEGACY_PB_COLLECTION else "economy_users_dev")
|
|
)
|
|
PB_ECONOMY_COLLECTION_ECONOMY = (
|
|
os.getenv("PB_ECONOMY_COLLECTION_ECONOMY", "").strip()
|
|
or (_LEGACY_PB_COLLECTION if _LEGACY_PB_COLLECTION else "economy_users_prod")
|
|
)
|
|
PB_ECONOMY_COLLECTION_LAN = (
|
|
os.getenv("PB_ECONOMY_COLLECTION_LAN", "").strip()
|
|
or (_LEGACY_PB_COLLECTION if _LEGACY_PB_COLLECTION else "economy_users_lan")
|
|
)
|
|
PB_ECONOMY_COLLECTION = {
|
|
"dev": PB_ECONOMY_COLLECTION_DEV,
|
|
"economy": PB_ECONOMY_COLLECTION_ECONOMY,
|
|
"lan": PB_ECONOMY_COLLECTION_LAN,
|
|
}[BOT_PROFILE]
|
|
|
|
PB_FIENTA_COLLECTION_LAN = (
|
|
os.getenv("PB_FIENTA_COLLECTION_LAN", "").strip()
|
|
or "fienta_registrations_lan"
|
|
)
|
|
|
|
FIENTA_WEBHOOK_SECRET = os.getenv("FIENTA_WEBHOOK_SECRET", "").strip()
|
|
FIENTA_WEBHOOK_PORT = _env_int("FIENTA_WEBHOOK_PORT", 8090)
|
|
FIENTA_ADMIN_ALERT_CHANNEL_ID = _env_int("FIENTA_ADMIN_ALERT_CHANNEL_ID", 0)
|