From 5e69b9bbfd01d413c5bf4af6084c9fd54972a32d Mon Sep 17 00:00:00 2001 From: John Burwell Date: Sun, 23 Apr 2023 17:08:57 -0500 Subject: [PATCH] confirm before delete_mine --- rsbbs/bbs.py | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/rsbbs/bbs.py b/rsbbs/bbs.py index ea70f7c..f57bb58 100644 --- a/rsbbs/bbs.py +++ b/rsbbs/bbs.py @@ -165,18 +165,23 @@ class BBS(): def delete_mine(self, args): '''Delete all messages addressed to user''' - with Session(self.engine) as session: - try: - statement = delete(Message).where(Message.recipient == self.calling_station).returning(Message) - results = session.execute(statement) - count = len(results.all()) - if count > 0: - self.write_output(f"Deleted {count} messages") - session.commit() - else: - self.write_output(f"No messages to delete.") - except Exception as e: - self.write_output(f"Unable to delete messages: {e}") + self.write_output("Delete all messages addressed to you? Y/N:") + response = sys.stdin.readline().strip() + if response.lower() != "y": + return + else: + with Session(self.engine) as session: + try: + statement = delete(Message).where(Message.recipient == self.calling_station).returning(Message) + results = session.execute(statement) + count = len(results.all()) + if count > 0: + self.write_output(f"Deleted {count} messages") + session.commit() + else: + self.write_output(f"No messages to delete.") + except Exception as e: + self.write_output(f"Unable to delete messages: {e}") def heard(self, args): '''Show heard stations log'''