From 121ea12f5964043d0630590063bc41fd8db81624 Mon Sep 17 00:00:00 2001 From: Terranom674 Date: Sat, 15 Aug 2026 13:27:02 +0200 Subject: [PATCH] Add Bratonien watermark engine switch foundation --- include/watermark_engine.inc.php | 61 ++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 include/watermark_engine.inc.php diff --git a/include/watermark_engine.inc.php b/include/watermark_engine.inc.php new file mode 100644 index 0000000..e0e007f --- /dev/null +++ b/include/watermark_engine.inc.php @@ -0,0 +1,61 @@ + false, + 'restore_piwigo' => true, + ); + + if (!function_exists('conf_get_param')) + { + return $default; + } + + $stored = conf_get_param('bratonien_watermark_engine', null); + if (empty($stored)) + { + return $default; + } + + $decoded = json_decode($stored, true); + return is_array($decoded) ? array_merge($default, $decoded) : $default; +} + +function bratonien_tools_set_watermark_engine($enabled) +{ + if (!function_exists('conf_update_param')) + { + throw new RuntimeException('Piwigo-Konfiguration ist nicht verfuegbar.'); + } + + $config = bratonien_tools_get_watermark_engine_config(); + $config['enabled'] = (bool) $enabled; + + conf_update_param('bratonien_watermark_engine', json_encode($config)); +} + +function bratonien_tools_disable_piwigo_watermarks() +{ + if (!class_exists('ImageStdParams')) + { + require_once(PHPWG_ROOT_PATH . 'include/derivative_std_params.inc.php'); + } + + foreach (ImageStdParams::get_defined_type_map() as $params) + { + $params->use_watermark = false; + } + + ImageStdParams::save(); +}