From bf76c368c993cc5cb20a6e44390e8b8671cba655 Mon Sep 17 00:00:00 2001 From: Elias Kohout Date: Sat, 15 Jun 2024 14:16:56 +0200 Subject: [PATCH] adding -e/ -s flags to end/ start command --- main.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index b9f95df..07de1bb 100755 --- a/main.py +++ b/main.py @@ -27,9 +27,11 @@ def create_parser(): # Create the parser for the "start" command parser_start = subparsers.add_parser("start", help="Starting a new event.") parser_start.add_argument("name", help="Name of the event") + parser_start.add_argument("-s", "--start", help="Start datetime (default now)") # Create the parser for the "end" command - _ = subparsers.add_parser("end", help="Ending the current event.") + parser_end = subparsers.add_parser("end", help="Ending the current event.") + parser_end.add_argument("-e", "--end", help="End datetime") return parser @@ -49,7 +51,11 @@ if __name__ == "__main__": if len(running): print("An event is already running.") else: - ds.add_time_slot(TimeSlot(args.name)) + if args.start is not None: + s = datetime.strptime(args.start, '%d.%m.%y %H:%M') + ds.add_time_slot(TimeSlot(args.name, start=s)) + else: + ds.add_time_slot(TimeSlot(args.name)) print(f"Started event {args.name}.") elif args.command == "end": @@ -60,7 +66,11 @@ if __name__ == "__main__": elif len(running) > 1: raise Exception("Found multiple running event.") else: - running[0].end_now() + if args.end is not None: + s = datetime.strptime(args.end, '%d.%m.%y %H:%M') + running[0].end = s + else: + running[0].end_now() ds.write_update() print(f"Ended event {running[0].name}.")