From e1d01c81a209b9213131819cbb6794683bf973d9 Mon Sep 17 00:00:00 2001 From: Jordan Ruthe Date: Mon, 15 Feb 2021 14:21:01 -0500 Subject: [PATCH] config: Include multiple configured printers --- ks_includes/config.py | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/ks_includes/config.py b/ks_includes/config.py index b6615bf6..37686cd1 100644 --- a/ks_includes/config.py +++ b/ks_includes/config.py @@ -82,7 +82,28 @@ class KlipperScreenConfig: except KeyError: raise ConfigError(f"Error reading config: {self.config_path}") - self.get_menu_items("__main") + printers = [i for i in self.config.sections() if i.startswith("printer ")] + logger.debug("Printers: %s %s" % (len(printers), printers)) + self.printers = [] + for printer in printers: + self.printers.append({ + printer[8:]: { + "moonraker_host": self.config.get(printer, "moonraker_host", fallback="127.0.0.1"), + "moonraker_port": self.config.get(printer, "moonraker_port", fallback="7125"), + "moonraker_api_key": self.config.get(printer, "moonraker_api_key", fallback="") + } + }) + if len(printers) <= 0: + self.printers.append({ + "Printer": { + "moonraker_host": self.config.get("main", "moonraker_host", fallback="127.0.0.1"), + "moonraker_port": self.config.get("main", "moonraker_port", fallback="7125"), + "moonraker_api_key": self.config.get("main", "moonraker_api_key", fallback="") + } + }) + + logger.debug("Configured printers: %s" % json.dumps(self.printers, indent=2)) + for item in self.configurable_options: name = list(item)[0] vals = item[name] @@ -166,6 +187,9 @@ class KlipperScreenConfig: def get_printer_power_name(self): return self.config['settings'].get("printer_power_name", "printer") + def get_printers(self): + return self.printers + def get_user_saved_config(self): if self.config_path != self.default_config_path: print("Get") @@ -223,7 +247,6 @@ class KlipperScreenConfig: def set(self, section, name, value): self.config.set(section, name, value) - def log_config(self, config): lines = [ " "