Ver código fonte

Added config file.

Kristian Schultz 11 meses atrás
pai
commit
27ea01129f
3 arquivos alterados com 35 adições e 3 exclusões
  1. 3 2
      Programm/adi.py
  2. 25 0
      Programm/config.py
  3. 7 1
      Programm/qslGen.py

+ 3 - 2
Programm/adi.py

@@ -3,6 +3,7 @@ if __name__ == "__main__":
   print("This is a library not an executable.")
   exit(1)
 
+
 def cleanupXmlName(name):
   nameOut = ""
   for c in name:
@@ -66,8 +67,8 @@ class AdiRow:
     self.Mode = ""
     self.RST = ""
 
-  def fileName(self):
-    return cleanupPathName(f"{self.CALL}_{self.Date}_{self.Time}")
+  def fileName(self, card_name="{_CALL_}_{_Date_}_{_Time_}"):
+    return cleanupPathName(self.fillTemplate(card_name))
 
   def subPath(self):
     name = cleanupPathName(f"{self.CALL}")

+ 25 - 0
Programm/config.py

@@ -0,0 +1,25 @@
+import os
+
+baseDir = f"{os.path.dirname(__file__)}/.."
+
+def loadConfig(fileName):
+  cfg = { "card_name": "{_CALL_}_{_Date_}_{_Time_}"
+        , "verbose": "0"
+        }
+
+  with open(fileName, "rt") as f:
+    for row in f:
+      row = row.strip().split("=", 1)
+      if len(row) != 2:
+        continue
+
+      k = row[0].strip()
+      v = row[1].strip()
+      cfg[k] = v
+
+  if cfg["verbose"].lower() in ["1", "true", "yes", "on"]:
+    cfg["verbose"] = True
+  else:
+    cfg["verbose"] = False
+
+  return cfg

+ 7 - 1
Programm/qslGen.py

@@ -3,8 +3,10 @@ import os
 import sys
 import time
 import adi
+import config
 
 baseDir = os.path.expanduser("~/qslKarten")
+baseDir = config.baseDir
 inDir = f"{baseDir}/Eingang"
 outDir = f"{baseDir}/Karten"
 templateDir = f"{baseDir}/Vorlage"
@@ -13,6 +15,7 @@ dpi = 300
 
 verbose = False
 
+cfg = {}
 
 
 def exec(cmd, logFile=None):
@@ -52,7 +55,7 @@ def createQslCards(fileName, name):
   data = adi.loadAdi(fileName)
   numOfRows = len(data)
   for pos, row in enumerate(data):
-    tCall = row.fileName()
+    tCall = row.fileName(cfg["card_name"])
     if not verbose:
       progressBar(numOfRows, pos + 1, tCall)
 
@@ -123,6 +126,9 @@ def selectTemplate():
 
 
 if __name__ == "__main__":
+  cfg = config.loadConfig(f"{baseDir}/config.cfg")
+  verbose = cfg["verbose"]
+
   if "-v" in sys.argv or "--verbose" in sys.argv:
     verbose = True