diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index 6449b8e0ce2..c8d1715aed8 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -19,7 +19,8 @@ # ############################################################################## -from datetime import datetime, timedelta +from datetime import datetime +from dateutil.relativedelta import relativedelta import time import logging @@ -32,11 +33,11 @@ from openerp.tools.safe_eval import safe_eval as eval _logger = logging.getLogger(__name__) DATE_RANGE_FUNCTION = { - 'minutes': lambda interval: timedelta(minutes=interval), - 'hour': lambda interval: timedelta(hours=interval), - 'day': lambda interval: timedelta(days=interval), - 'month': lambda interval: timedelta(months=interval), - False: lambda interval: timedelta(0), + 'minutes': lambda interval: relativedelta(minutes=interval), + 'hour': lambda interval: relativedelta(hours=interval), + 'day': lambda interval: relativedelta(days=interval), + 'month': lambda interval: relativedelta(months=interval), + False: lambda interval: relativedelta(0), } def get_datetime(date_str): diff --git a/addons/mail/static/src/js/mail.js b/addons/mail/static/src/js/mail.js index c43ce8fcf95..8b62417e343 100644 --- a/addons/mail/static/src/js/mail.js +++ b/addons/mail/static/src/js/mail.js @@ -541,7 +541,9 @@ openerp.mail = function (session) { context: context, }; - self.do_action(action); + self.do_action(action, { + 'on_close': function(){ self.parent_thread.message_fetch() } + }); self.on_cancel(); }); diff --git a/openerp/tools/translate.py b/openerp/tools/translate.py index 56a9258f0c2..bdf31f85eeb 100644 --- a/openerp/tools/translate.py +++ b/openerp/tools/translate.py @@ -863,6 +863,8 @@ def trans_generate(lang, modules, cr): display_path = "addons%s" % frelativepath module = get_module_from_path(fabsolutepath) if ('all' in modules or module in modules) and module in installed_modules: + if os.path.sep != '/': + display_path = display_path.replace(os.path.sep, '/') return module, fabsolutepath, frelativepath, display_path return None, None, None, None