Added guild and user settings module.
This commit is contained in:
42
bot/settings/user_settings.py
Normal file
42
bot/settings/user_settings.py
Normal file
@@ -0,0 +1,42 @@
|
||||
import datetime
|
||||
|
||||
import settings
|
||||
from utils.lib import DotDict
|
||||
|
||||
from data import tables as tb
|
||||
|
||||
|
||||
class UserSettings(settings.ObjectSettings):
|
||||
settings = DotDict()
|
||||
|
||||
|
||||
class UserSetting(settings.ColumnData, settings.Setting):
|
||||
_table_interface = tb.user_config
|
||||
_id_column = 'userid'
|
||||
_create_row = True
|
||||
|
||||
write_ward = None
|
||||
|
||||
|
||||
@UserSettings.attach_setting
|
||||
class timezone(settings.Timezone, UserSetting):
|
||||
attr_name = 'timezone'
|
||||
_data_column = 'timezone'
|
||||
|
||||
_default = 'UTC'
|
||||
|
||||
display_name = 'timezone'
|
||||
desc = "Timezone to display prompts in."
|
||||
long_desc = (
|
||||
"Timezone used for displaying certain prompts (e.g. selecting an accountability room)."
|
||||
)
|
||||
|
||||
@property
|
||||
def success_response(self):
|
||||
if self.value:
|
||||
return (
|
||||
"Your personal timezone is now {}.\n"
|
||||
"Your current time is **{}**."
|
||||
).format(self.formatted, datetime.datetime.now(tz=self.value).strftime("%H:%M"))
|
||||
else:
|
||||
return "Your personal timezone has been unset."
|
||||
Reference in New Issue
Block a user