From a8a56801a2d8a634a3e6c7a8e2c7694cab944c43 Mon Sep 17 00:00:00 2001 From: MG-5 Date: Mon, 24 Oct 2022 23:58:39 +0200 Subject: [PATCH] Automatically get the latest json file if only given a folder as path --- edit_data_form.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/edit_data_form.py b/edit_data_form.py index 68ab61a..7fda31b 100755 --- a/edit_data_form.py +++ b/edit_data_form.py @@ -1,6 +1,7 @@ #!/usr/bin/env python # encoding: utf-8 +import os import npyscreen import json import datetime @@ -65,9 +66,20 @@ class FormApp(npyscreen.NPSAppManaged): def main(*_args): if len(sys.argv) > 1: file_path = pathlib.Path(sys.argv[1]) - if not file_path.exists(): - print("Trying to open nonexistent file. Aborting.") - sys.exit(0) + + if(sys.argv[1].endswith(".json")): + # json file as argument + + if not file_path.exists(): + print("Trying to open nonexistent file. Aborting.") + sys.exit(0) + + elif file_path.is_dir(): + # we want the latest json file in given folder + filesList = [f for f in os.listdir(file_path) if os.path.isfile(os.path.join(file_path, f)) and f.endswith(".json")] + filesList.sort() + file_path = os.path.join(file_path, filesList[len(filesList) - 1]) + else: file_path = pathlib.Path(pathlib.Path(__file__).absolute().parent, 'example.json')