Files
mrleo1nidandClaude Sonnet 5.5 47fc121e7d
CI / frontend (push) Successful in 21s
CI / backend (push) Successful in 47s
feat: local browser saves with opt-in cloud sync behind saves.cloud permission
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 12:44:42 +03:00

25 lines
1.3 KiB
Python

"""Catalogue of permissions. Roles in the DB are named sets of these codes."""
PERMISSIONS: dict[str, str] = {
"games.play": "Просмотр каталога и игра",
"games.upload": "Загрузка новых игр",
"games.edit": "Редактирование карточек игр",
"games.delete": "Удаление игр и любых версий",
"versions.fork": "Создание своих версий (форков)",
"versions.manage_any": "Управление чужими версиями",
"translations.edit": "Перевод игр в своих версиях",
"versions.publish": "Публикация версий и переводов, выбор главной версии",
"saves.cloud": "Облачные сохранения (синхронизация между устройствами)",
"users.manage": "Управление пользователями",
"roles.manage": "Управление ролями",
}
ALL = sorted(PERMISSIONS)
SYSTEM_ROLES: dict[str, list[str]] = {
"admin": ALL,
"moderator": ["games.play", "games.upload", "games.edit", "versions.fork",
"translations.edit", "versions.publish", "saves.cloud"],
"player": ["games.play", "saves.cloud"],
}