feat(config): Split mod and admin config.

This commit is contained in:
2023-10-16 21:43:54 +03:00
parent d9c58806cf
commit ab39ceee71
44 changed files with 227 additions and 102 deletions

View File

@@ -90,7 +90,7 @@ class TimerCog(LionCog):
self.bot.core.guild_config.register_model_setting(self.settings.PomodoroChannel)
configcog = self.bot.get_cog('ConfigCog')
self.crossload_group(self.configure_group, configcog.configure_group)
self.crossload_group(self.configure_group, configcog.config_group)
if self.bot.is_ready():
await self.initialise()
@@ -977,7 +977,6 @@ class TimerCog(LionCog):
@appcmds.describe(
pomodoro_channel=TimerSettings.PomodoroChannel._desc
)
@appcmds.default_permissions(manage_guild=True)
@low_management_ward
async def configure_pomodoro_command(self, ctx: LionContext,
pomodoro_channel: Optional[discord.VoiceChannel | discord.TextChannel] = None):

View File

@@ -4,6 +4,7 @@ from settings.setting_types import ChannelSetting
from core.data import CoreData
from babel.translator import ctx_translator
from wards import low_management_iward
from . import babel
@@ -14,7 +15,8 @@ class TimerSettings(SettingGroup):
class PomodoroChannel(ModelData, ChannelSetting):
setting_id = 'pomodoro_channel'
_event = 'guildset_pomodoro_channel'
_set_cmd = 'configure pomodoro'
_set_cmd = 'config pomodoro'
_write_ward = low_management_iward
_display_name = _p('guildset:pomodoro_channel', "pomodoro_channel")
_desc = _p(

View File

@@ -30,6 +30,7 @@ class TimerConfigUI(ConfigUI):
async def channel_menu(self, selection: discord.Interaction, selected: ChannelSelect):
await selection.response.defer()
setting = self.instances[0]
await setting.interaction_check(setting.parent_id, selection)
setting.value = selected.values[0] if selected.values else None
await setting.write()
@@ -78,7 +79,7 @@ class TimerConfigUI(ConfigUI):
class TimerDashboard(DashboardSection):
section_name = _p(
'dash:pomodoro|title',
"Pomodoro Configuration ({commands[configure pomodoro]})"
"Pomodoro Configuration ({commands[admin config pomodoro]})"
)
_option_name = _p(
"dash:stats|dropdown|placeholder",