From 908b600b877d7325a442543f95e4aa8b539473ff Mon Sep 17 00:00:00 2001 From: lins05 Date: Sat, 9 Nov 2013 16:58:57 +0800 Subject: [PATCH] improve seafevents related code --- seahub/settings.py | 19 +++++++++++++++++++ seahub/utils/__init__.py | 34 ++++++++++++++++++++-------------- 2 files changed, 39 insertions(+), 14 deletions(-) diff --git a/seahub/settings.py b/seahub/settings.py index f3d00147df..435a4fd4a4 100644 --- a/seahub/settings.py +++ b/seahub/settings.py @@ -356,6 +356,25 @@ LOGIN_ATTEMPT_TIMEOUT = 15 * 60 # in seconds (default: 15 minutes) SEND_EMAIL_ON_ADDING_SYSTEM_MEMBER = True # Whether to send email when a system staff adding new member. SEND_EMAIL_ON_RESETTING_USER_PASSWD = True # Whether to send email when a system staff resetting user's password. +########################## +# Settings for seafevents # +########################## + +def get_events_conf_file(): + if not 'CCNET_CONF_DIR' in os.environ: + return + + ccnet_dir = os.environ['CCNET_CONF_DIR'] + seafile_ini = os.path.join(ccnet_dir, 'seafile.ini') + if not os.path.exists(seafile_ini): + return + + with open(seafile_ini, 'r') as fp: + seafile_data_dir = fp.read().strip() + globals()['EVENTS_CONFIG_FILE'] = os.path.join(seafile_data_dir, 'seafevents.conf') + +get_events_conf_file() + ########################## # Settings for Extra App # ########################## diff --git a/seahub/utils/__init__.py b/seahub/utils/__init__.py index 37078e233e..92c54fcc03 100644 --- a/seahub/utils/__init__.py +++ b/seahub/utils/__init__.py @@ -991,13 +991,16 @@ def more_files_in_commit(commit): HAS_OFFICE_CONVERTER = False if EVENTS_CONFIG_FILE: def check_office_converter_enabled(): - config = ConfigParser.ConfigParser() - config.read(EVENTS_CONFIG_FILE) - enabled = seafevents.is_office_converter_enabled(config) - if enabled: - logging.debug('office converter: enabled') - else: - logging.debug('office converter: not enabled') + enabled = False + if hasattr(seafevents, 'is_office_converter_enabled'): + config = ConfigParser.ConfigParser() + config.read(EVENTS_CONFIG_FILE) + enabled = seafevents.is_office_converter_enabled(config) + + if enabled: + logging.debug('office converter: enabled') + else: + logging.debug('office converter: not enabled') return enabled def get_office_converter_html_dir(): @@ -1072,13 +1075,16 @@ if HAS_OFFICE_CONVERTER: HAS_FILE_SEARCH = False if EVENTS_CONFIG_FILE: def check_search_enabled(): - config = ConfigParser.ConfigParser() - config.read(EVENTS_CONFIG_FILE) - enabled = seafevents.is_search_enabled(config) - if enabled: - logging.debug('search: enabled') - else: - logging.debug('search: not enabled') + enabled = False + if hasattr(seafevents, 'is_office_converter_enabled'): + config = ConfigParser.ConfigParser() + config.read(EVENTS_CONFIG_FILE) + enabled = seafevents.is_search_enabled(config) + + if enabled: + logging.debug('search: enabled') + else: + logging.debug('search: not enabled') return enabled HAS_FILE_SEARCH = check_search_enabled()