From d09bbbe73e58f9423519d40166e185805b1e92e7 Mon Sep 17 00:00:00 2001 From: jokob-sk Date: Sat, 19 Oct 2024 15:57:40 +1100 Subject: [PATCH] ENV init settings fix --- dockerfiles/setup.sh | 4 ++++ front/settings.php | 2 ++ server/initialise.py | 19 +++++++++---------- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/dockerfiles/setup.sh b/dockerfiles/setup.sh index 63b0897b..97023e84 100755 --- a/dockerfiles/setup.sh +++ b/dockerfiles/setup.sh @@ -43,6 +43,10 @@ fi # OVERRIDE settings: Handling APP_CONF_OVERRIDE # Check if APP_CONF_OVERRIDE is set + +# remove old +rm "${INSTALL_DIR}/config/app_conf_override.json" + if [ -z "$APP_CONF_OVERRIDE" ]; then echo "APP_CONF_OVERRIDE is not set. Skipping config file creation." else diff --git a/front/settings.php b/front/settings.php index 4510a95d..6d9767a7 100755 --- a/front/settings.php +++ b/front/settings.php @@ -471,6 +471,8 @@ $settingsJSON_DB = json_encode($settings, JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX // Parse the setType JSON string into an object let inputHtml = ''; + console.log(setType); + const setTypeObject = JSON.parse(setType.replace(/'/g, '"')); const dataType = setTypeObject.dataType; diff --git a/server/initialise.py b/server/initialise.py index 00e18cf2..b7fb5ba3 100755 --- a/server/initialise.py +++ b/server/initialise.py @@ -48,6 +48,7 @@ def ccd(key, default, config_dir, name, inputtype, options, group, events=None, # Single quotes might break SQL queries, replacing them if inputtype == 'text': result = result.replace('\'', "{s-quote}") + # Create the tuples sql_safe_tuple = (key, name, desc, str(inputtype), options, regex, str(result), group, str(events), overriddenByEnv) @@ -310,17 +311,15 @@ def importConfigs (db, all_plugins): # Loop through settings_override dictionary for setting_name, value in settings_override.items(): + # Ensure the value is treated as a string and passed directly - if isinstance(value, str): - # Log the value being passed - # ccd(key, default, config_dir, name, inputtype, options, group, events=None, desc="", regex="", setJsonMetadata=None, overrideTemplate=None, forceDefault=False) - mylog('debug', [f"[Config] Setting override {setting_name} with value: {value}"]) - ccd(setting_name, value, c_d, '_KEEP_', '_KEEP_', '_KEEP_', '_KEEP_', None, "_KEEP_", "", None, None, True, 1) - else: - # Convert to string and log - # ccd(key, default, config_dir, name, inputtype, options, group, events=None, desc="", regex="", setJsonMetadata=None, overrideTemplate=None, forceDefault=False) - mylog('debug', [f"[Config] Setting override {setting_name} with value: {str(value)}"]) - ccd(setting_name, str(value), c_d, '_KEEP_', '_KEEP_', '_KEEP_', '_KEEP_', None, "_KEEP_", "", None, None, True, 1) + if isinstance(value, str) == False: + value = str(value) + + # Log the value being passed + # ccd(key, default, config_dir, name, inputtype, options, group, events=None, desc="", regex="", setJsonMetadata=None, overrideTemplate=None, forceDefault=False) + mylog('debug', [f"[Config] Setting override {setting_name} with value: {value}"]) + ccd(setting_name, value, c_d, '_KEEP_', '_KEEP_', '_KEEP_', '_KEEP_', None, "_KEEP_", "", None, None, True, 1) except json.JSONDecodeError: mylog('none', [f"[Config] [ERROR] Setting override decoding JSON from {app_conf_override_path}"])