mirror of
https://github.com/evennia/evennia.git
synced 2026-03-30 20:47:17 +02:00
Move some message board functions into func()
This commit is contained in:
parent
cf2047852c
commit
6d81de2619
1 changed files with 24 additions and 29 deletions
|
|
@ -235,7 +235,20 @@ class CmdEvMessageBoard(COMMAND_DEFAULT_CLASS):
|
|||
self.caller.msg("You may only delete your own messages.")
|
||||
return
|
||||
|
||||
self._delete_message(self.caller, board, int(message_id))
|
||||
message_id = int(message_id)
|
||||
message = board.messages[message_id]["message"]
|
||||
subject = message.message.split("\n")[0]
|
||||
answer = yield (
|
||||
f"Are you sure you want to delete the message '{subject}|n' (#{message_id}) yes/[no]?"
|
||||
)
|
||||
if not answer.lower() in ("yes", "y"):
|
||||
self.caller.msg("Cancelled. Message not deleted.")
|
||||
return
|
||||
|
||||
message.delete()
|
||||
del board.messages[message_id]
|
||||
self.caller.msg(f"Message #{message_id} deleted.")
|
||||
|
||||
return
|
||||
|
||||
if "clear" in self.switches:
|
||||
|
|
@ -243,7 +256,16 @@ class CmdEvMessageBoard(COMMAND_DEFAULT_CLASS):
|
|||
self.caller.msg("You are not allowed to clear this message board.")
|
||||
return
|
||||
|
||||
self._clear_board(self.caller, board)
|
||||
answer = yield ("Are you sure you want to clear all messages from the board yes/[no]?")
|
||||
if not answer.lower() in ("yes", "y"):
|
||||
self.caller.msg("Cancelled. The message board was not cleared.")
|
||||
return
|
||||
|
||||
Msg.objects.filter(db_receivers_objects=board).delete()
|
||||
board.messages.clear()
|
||||
board.message_id = 0
|
||||
self.caller.msg("The message board has been cleared.")
|
||||
|
||||
return
|
||||
|
||||
# List messages
|
||||
|
|
@ -377,33 +399,6 @@ class CmdEvMessageBoard(COMMAND_DEFAULT_CLASS):
|
|||
)
|
||||
self.caller.msg(string)
|
||||
|
||||
@interactive
|
||||
def _delete_message(self, caller, board, message_id):
|
||||
message = board.messages[message_id]["message"]
|
||||
subject = message.message.split("\n")[0]
|
||||
answer = yield (
|
||||
f"Are you sure you want to delete the message '{subject}|n' (#{message_id}) yes/[no]?"
|
||||
)
|
||||
if not answer.lower() in ("yes", "y"):
|
||||
caller.msg("Cancelled.")
|
||||
return
|
||||
|
||||
message.delete()
|
||||
del board.messages[message_id]
|
||||
caller.msg(f"Message #{message_id} deleted.")
|
||||
|
||||
@interactive
|
||||
def _clear_board(self, caller, board):
|
||||
answer = yield ("Are you sure you want to clear all messages from the board yes/[no]?")
|
||||
if not answer.lower() in ("yes", "y"):
|
||||
caller.msg("Cancelled.")
|
||||
return
|
||||
|
||||
Msg.objects.filter(db_receivers_objects=board).delete()
|
||||
board.messages.clear()
|
||||
board.message_id = 0
|
||||
caller.msg("Message board cleared.")
|
||||
|
||||
|
||||
def _board_get_messages(board):
|
||||
if not (messages := board.db.messages):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue