Added user set command #22 #143

Merged
edraft merged 6 commits from #22 into 0.3 2022-12-23 15:48:38 +01:00
2 changed files with 8 additions and 9 deletions
Showing only changes of commit cf610b770b - Show all commits

View File

@ -177,9 +177,15 @@
"footer": ""
},
"get": {
"atr_not_found": "Das Attribut {} konnte nicht gefunden werden :(",
"xp": "{} hat {} xp",
"ontime": "{} war insgesamt {} Stunden aktiv in einem Sprachkanal"
},
"set": {
"xp": "{} hat nun {} xp"
},
"error": {
"atr_not_found": "Das Attribut {} konnte nicht gefunden werden :(",
"value_type": "Der angegebende Wert konnte nicht für das Attribut interpretiert werden :("
}
}
},

View File

@ -158,7 +158,7 @@ class UserGroup(DiscordCommandABC):
))
case other:
await self._message_service.send_interaction_msg(ctx.interaction, self._t.transform('modules.base.user.get.atr_not_found').format(atr))
await self._message_service.send_interaction_msg(ctx.interaction, self._t.transform('modules.base.user.error.atr_not_found').format(atr))
return
Ebola-Chan marked this conversation as resolved Outdated

Mach das bitte mit nem elif und als dict in der Klasse und keine weitere Klasse dafür einführen
https://stackoverflow.com/questions/72638083/python-match-case-dictionary-keys

Mach das bitte mit nem elif und als dict in der Klasse und keine weitere Klasse dafür einführen https://stackoverflow.com/questions/72638083/python-match-case-dictionary-keys

Match-Case-Statement gegen If-Else-Statement getauscht

Match-Case-Statement gegen If-Else-Statement getauscht
await self._message_service.send_interaction_msg(
@ -178,10 +178,6 @@ class UserGroup(DiscordCommandABC):
async def set(self, ctx: Context, atr: str, value: str, member: discord.Member = None):
self._logger.debug(__name__, f'Received command user-set {ctx}:{member}')
if value == '':
await self._message_service.send_interaction_msg(ctx.interaction, self._t.transform('modules.base.user.set.error.no_value'))
return
if member is None or not isinstance(member, discord.Member):
member = ctx.author
@ -196,17 +192,14 @@ class UserGroup(DiscordCommandABC):
self._db.save_changes()
except Exception as e:
await self._logger.trace(__name__, f'Value couldn\'t be converted to int\n'+e)
# ToDo: Add text for this exception
await self._message_service.send_interaction_msg(ctx.interaction, self._t.transform('modules.base.user.error.value_type'))
return
case other:
# ToDo: Move atr_not_found
await self._message_service.send_interaction_msg(ctx.interaction, self._t.transform(
'modules.base.user.error.atr_not_found').format(atr))
return
Ebola-Chan marked this conversation as resolved Outdated

Relativ ungenau. Entweder änderst du die beschreibung von dem error oder du machst zwei try except blöcke, einmal für den type cast und dann für die manipulation des users inkl. level check

Relativ ungenau. Entweder änderst du die beschreibung von dem error oder du machst zwei try except blöcke, einmal für den type cast und dann für die manipulation des users inkl. level check

Das Exceptionhandling für das "check_level" würde ich lieber dann in der Methode selber machen und das in einem separaten Issue, da ich dafür weitere Exceptionklassen erstellen möchte, um Exceptions in der Methode besser von den allgemeinen Databaseexceptions zu differenzieren.

Das Exceptionhandling für das "check_level" würde ich lieber dann in der Methode selber machen und das in einem separaten Issue, da ich dafür weitere Exceptionklassen erstellen möchte, um Exceptions in der Methode besser von den allgemeinen Databaseexceptions zu differenzieren.
# ToDo: Add text for set
await self._message_service.send_interaction_msg(
ctx.interaction,
self._t.transform(f'modules.base.user.set.{atr}').format(member.mention, value)