usawa

Signed, immutable accounting.
Log | Files | Refs | Submodules | LICENSE

commit 690c71846297c4f40153191c53c76881c703e83f
parent e6f2eeaf9b1f7c77990f77f39a029e1bac806df5
Author: Carlosokumu <carlosokumu254@gmail.com>
Date:   Tue, 31 Mar 2026 23:08:01 +0300

add parsing for newly allowed time formats

Diffstat:
Mdummy/usawa/gui/controllers/entry_controller.py | 16+++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/dummy/usawa/gui/controllers/entry_controller.py b/dummy/usawa/gui/controllers/entry_controller.py @@ -17,15 +17,19 @@ class EntryController: def collect_entry_data(self, view) -> Optional[LedgerEntry]: """Collect data from the view and create an entry""" - tx_date_str = view.date_entry.get_text().strip() tx_time_str = view.time_entry.get_text().strip() - try: if tx_time_str: - tx_date = datetime.strptime( - f"{tx_date_str} {tx_time_str}", "%Y-%m-%d %H:%M:%S" - ) + for fmt in ("%Y-%m-%d %H:%M:%S", "%Y-%m-%d %H:%M"): + try: + tx_date = datetime.strptime(f"{tx_date_str} {tx_time_str}", fmt) + break + except ValueError: + continue + else: + logg.error("Invalid time format, use H:MM or H:MM:SS") + return None else: tx_date = datetime.strptime(tx_date_str, "%Y-%m-%d").date() except ValueError: @@ -44,13 +48,11 @@ class EntryController: dest_type=view.get_dest_type(), dest_path=view.dest_path_entry.get_text().strip(), ) - is_valid, error_msg = entry.validate() if not is_valid: logg.error(f"Validation failed: {error_msg}") return None return entry - except ValueError as e: logg.error(f"Failed to collect entry data: {e}") return None