rewrite: Initial rewrite skeleton.

Remove modules that will no longer be required.
Move pending modules to pending-rewrite folders.
This commit is contained in:
2022-09-17 17:06:13 +10:00
parent a7f7dd6e7b
commit a5147323b5
162 changed files with 1 additions and 866 deletions

View File

@@ -0,0 +1,83 @@
from settings import GuildSettings, GuildSetting
from wards import guild_admin
import settings
from .data import workout_channels
@GuildSettings.attach_setting
class workout_length(settings.Integer, GuildSetting):
category = "Workout"
attr_name = "min_workout_length"
_data_column = "min_workout_length"
display_name = "min_workout_length"
desc = "Minimum length of a workout."
_default = 20
long_desc = (
"Minimun time a user must spend in a workout channel for it to count as a valid workout. "
"Value must be given in minutes."
)
_accepts = "An integer number of minutes."
@property
def success_response(self):
return "The minimum workout length is now `{}` minutes.".format(self.formatted)
@GuildSettings.attach_setting
class workout_reward(settings.Integer, GuildSetting):
category = "Workout"
attr_name = "workout_reward"
_data_column = "workout_reward"
display_name = "workout_reward"
desc = "Number of daily LionCoins to reward for completing a workout."
_default = 350
long_desc = (
"Number of LionCoins given when a member completes their daily workout."
)
_accepts = "An integer number of LionCoins."
@property
def success_response(self):
return "The workout reward is now `{}` LionCoins.".format(self.formatted)
@GuildSettings.attach_setting
class workout_channels_setting(settings.ChannelList, settings.ListData, settings.Setting):
category = "Workout"
attr_name = 'workout_channels'
_table_interface = workout_channels
_id_column = 'guildid'
_data_column = 'channelid'
_setting = settings.VoiceChannel
write_ward = guild_admin
display_name = "workout_channels"
desc = "Channels in which members can do workouts."
_force_unique = True
long_desc = (
"Sessions in these channels will be treated as workouts."
)
# Flat cache, no need to expire objects
_cache = {}
@property
def success_response(self):
if self.value:
return "The workout channels have been updated:\n{}".format(self.formatted)
else:
return "The workout channels have been removed."