From cd2b45bf4ef9a7b08fc48b2bd82fac0bc7907836 Mon Sep 17 00:00:00 2001 From: "Jeroen van Meeuwen (Kolab Systems)" Date: Fri, 4 Oct 2013 14:43:24 +0200 Subject: Allow Univention Configuration Registry to influence whether or we delete any mailboxes (#1003420) --- ucs/listener.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'ucs') diff --git a/ucs/listener.py b/ucs/listener.py index 232675e..0849640 100755 --- a/ucs/listener.py +++ b/ucs/listener.py @@ -25,7 +25,7 @@ import listener import logging import os import sys -import univention_baseconfig +from univention.config_registry import ConfigRegistry import univention.debug as ulog sys.path = [ @@ -147,13 +147,17 @@ def handler(*args, **kw): else: log.info("Entry deletion notification for %r does not have a mail server attribute specified." % (dn)) - auth._auth._synchronize_callback( - change_type = 'delete', - previous_dn = None, - change_number = None, - dn = dn, - entry = old - ) + cfg = ConfigRegistry() + cfg.load() + + if cfg.is_true('mail/cyrus/mailbox/delete', True): + auth._auth._synchronize_callback( + change_type = 'delete', + previous_dn = None, + change_number = None, + dn = dn, + entry = old + ) elif isinstance(new, dict) and len(new.keys()) > 0: # Old is not a dict (or empty), so the entry is just created -- cgit v1.1