From 3c7a23a5a95dcdf65b7ae1e2878d8d97282c06c2 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Mon, 15 Jul 2019 01:24:22 -0400 Subject: [PATCH] Add support for setting post update callbacks Signed-off-by: Roberto Rosario --- mayan/apps/smart_settings/classes.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mayan/apps/smart_settings/classes.py b/mayan/apps/smart_settings/classes.py index be064d0fa8..4ea8ae11dd 100644 --- a/mayan/apps/smart_settings/classes.py +++ b/mayan/apps/smart_settings/classes.py @@ -177,13 +177,14 @@ class Setting(object): path=settings.CONFIGURATION_LAST_GOOD_FILEPATH ) - def __init__(self, namespace, global_name, default, help_text=None, is_path=False): + def __init__(self, namespace, global_name, default, help_text=None, is_path=False, post_edit_function=None): self.global_name = global_name self.default = default self.help_text = help_text self.loaded = False self.namespace = namespace self.environment_variable = False + self.post_edit_function = post_edit_function namespace._settings.append(self) self.__class__._registry[global_name] = self @@ -239,3 +240,5 @@ class Setting(object): # value is in YAML format self.yaml = value self.raw_value = Setting.deserialize_value(value) + if self.post_edit_function: + self.post_edit_function(setting=self)