| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  | __filename__ = "config.py" | 
					
						
							|  |  |  | __author__ = "Bob Mottram" | 
					
						
							|  |  |  | __license__ = "AGPL3+" | 
					
						
							| 
									
										
										
										
											2019-08-29 13:35:29 +00:00
										 |  |  | __version__ = "1.0.0" | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  | __maintainer__ = "Bob Mottram" | 
					
						
							|  |  |  | __email__ = "bob@freedombone.net" | 
					
						
							|  |  |  | __status__ = "Production" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import os | 
					
						
							| 
									
										
										
										
											2019-10-12 09:37:21 +00:00
										 |  |  | import time | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  | import json | 
					
						
							| 
									
										
										
										
											2019-10-22 11:55:06 +00:00
										 |  |  | from utils import loadJson | 
					
						
							|  |  |  | from utils import saveJson | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | def createConfig(baseDir: str) -> None: | 
					
						
							|  |  |  |     """Creates a configuration file
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     configFilename=baseDir+'/config.json' | 
					
						
							|  |  |  |     if os.path.isfile(configFilename): | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |     configJson = { | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2019-10-22 11:55:06 +00:00
										 |  |  |     saveJson(configJson,configFilename) | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | def setConfigParam(baseDir: str, variableName: str, variableValue) -> None: | 
					
						
							|  |  |  |     """Sets a configuration value
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     createConfig(baseDir) | 
					
						
							|  |  |  |     configFilename=baseDir+'/config.json' | 
					
						
							| 
									
										
										
										
											2019-10-22 11:55:06 +00:00
										 |  |  |     configJson={} | 
					
						
							|  |  |  |     if os.path.isfile(configFilename): | 
					
						
							|  |  |  |         configJson=loadJson(configFilename) | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  |     configJson[variableName]=variableValue | 
					
						
							| 
									
										
										
										
											2019-10-22 11:55:06 +00:00
										 |  |  |     saveJson(configJson,configFilename) | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | def getConfigParam(baseDir: str, variableName: str): | 
					
						
							|  |  |  |     """Gets a configuration value
 | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  |     createConfig(baseDir) | 
					
						
							|  |  |  |     configFilename=baseDir+'/config.json' | 
					
						
							| 
									
										
										
										
											2019-10-22 11:55:06 +00:00
										 |  |  |     configJson=loadJson(configFilename) | 
					
						
							|  |  |  |     if configJson: | 
					
						
							|  |  |  |         if configJson.get(variableName): | 
					
						
							|  |  |  |             return configJson[variableName] | 
					
						
							| 
									
										
										
										
											2019-07-05 09:20:54 +00:00
										 |  |  |     return None |