]> Softwares of Agnibho - medscript.git/commitdiff
Error handling
authorAgnibho Mondal <mondal@agnibho.com>
Thu, 14 Sep 2023 20:16:00 +0000 (01:46 +0530)
committerAgnibho Mondal <mondal@agnibho.com>
Thu, 14 Sep 2023 20:16:00 +0000 (01:46 +0530)
config.py
prescription.py
setting.py
window.py

index ad0db950bb2f521735ddac4e39a5614850b20649..91eed9bc5a432744f94475c0be77129cad529c9a 100644 (file)
--- a/config.py
+++ b/config.py
@@ -47,10 +47,13 @@ default = {
         "certificate": ""
         }
 
-with open(config_file) as conf:
-    read = json.loads(conf.read())
-
-config = default | read
+try:
+    with open(config_file) as conf:
+        read = json.loads(conf.read())
+    config = default | read
+except Exception as e:
+    print(e)
+    config=default
 
 config["filename"]=args.filename
 config["data_directory"]=os.path.abspath(os.path.join(real_dir, os.path.expanduser(config["data_directory"])))
@@ -65,11 +68,11 @@ if(args.prescriber is None):
     if (not config["prescriber"].endswith(".json")): config["prescriber"]=config["prescriber"]+".json"
 else:
     if(not os.path.isabs(args.prescriber)):
-        args.prescriber=os.path.join(config["config_directory"], args.prescriber)
+        args.prescriber=os.path.join(config["prescriber_directory"], args.prescriber)
     if(os.path.isfile(args.prescriber)):
         config["prescriber"]=args.prescriber
     else:
-        config["prescriber"]=os.path.join(config["config_directory"], config["prescriber"])
+        config["prescriber"]=os.path.join(config["prescriber_directory"], config["prescriber"])
         print("File "+args.prescriber+" not found.")
 
 os.makedirs(config["data_directory"], exist_ok=True)
index ab895699688f55f49ca50bd1489b9c6824f9a3b8..f9c63a10e72076aca853672c765852ed1493aaab 100644 (file)
@@ -90,7 +90,10 @@ class Prescription:
 
     def write_to(self, file):
         with open(file, "w") as f:
-            del self.file
+            try:
+                del self.file
+            except Exception as e:
+                print(e)
             f.write(self.get_json())
         self.file=file
 
index 3722db26024eb4d323ea7086705dd65b505fdeb3..3699aa5b66bb9a0f6d7ad60ce6fa2dd897b69602 100644 (file)
@@ -77,9 +77,12 @@ class EditConfiguration(QMainWindow):
     def __init__(self, *args, **kwargs):
         super().__init__(*args, **kwargs)
 
-        with open(config_file) as f:
-            self.config=json.loads(f.read())
-        self.config=self.config|config
+        try:
+            with open(config_file) as f:
+                self.config=json.loads(f.read())
+        except Exception as e:
+            print(e)
+            self.config=config
 
         self.setWindowTitle("MedScript")
         self.setGeometry(200, 200, 300, 200)
index 9b758edc00584b11e55ff7e5ec076e1c68d1cd32..1bd8ed82b4049fbd5dba020667c35af984af80d7 100644 (file)
--- a/window.py
+++ b/window.py
@@ -483,8 +483,11 @@ class MainWindow(QMainWindow):
         toolbar.addSeparator()
         self.input_template=QComboBox(self)
         templates=os.listdir(config["template_directory"])
-        templates.remove(os.path.basename(config["template"]))
-        templates.insert(0, os.path.basename(config["template"]))
+        try:
+            templates.remove(os.path.basename(config["template"]))
+            templates.insert(0, os.path.basename(config["template"]))
+        except Exception as e:
+            print(e)
         self.input_template.addItems(templates)
         toolbar.addWidget(self.input_template)
         spacer=QWidget(self)