From 89e1aae508268f138dbbbd4d8c5b1d32a902f7a0 Mon Sep 17 00:00:00 2001 From: Denis Ledoux Date: Fri, 10 Jul 2015 17:16:31 +0200 Subject: [PATCH 1/3] [FIX] base_action_rule: using relativedelta instead of timedelta For the simple reason that `months` isn't an accepted argument of `timedelta` --- addons/base_action_rule/base_action_rule.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index f47f94894bd..797ca5b58d6 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): From 312b85ee2aba9fcefa7801f3a5113c8f08f08305 Mon Sep 17 00:00:00 2001 From: Nicolas Lempereur Date: Tue, 14 Jul 2015 09:22:37 +0200 Subject: [PATCH 2/3] [FIX] mail: reload messages after closing composer Always reload the message after the mail composer message is closed. Since there is several unrelated model it would probably messy to go from the mail thread to the mail composer popup to see if a new message is posted (or get it and add it in the chatter like done in the simple message editor). With this change, anytime the mail composer modal is closed the mail thread messages are reloaded. closes #7596 opw-644406 --- addons/mail/static/src/js/mail.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/mail/static/src/js/mail.js b/addons/mail/static/src/js/mail.js index 25a6c1e8e54..1920d95c986 100644 --- a/addons/mail/static/src/js/mail.js +++ b/addons/mail/static/src/js/mail.js @@ -582,7 +582,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(); }); From e12cecea9d33146b863f10f79c8a8319deb8dec5 Mon Sep 17 00:00:00 2001 From: Olivier LAURENT Date: Thu, 26 Feb 2015 15:06:01 +0100 Subject: [PATCH 3/3] [FIX] tools: separator in po comments Comments in .po(t) files for translations of type "code" (e.g. field labels) specify the path to the file containing the translation. This path should be OS-independent to get the same result whatever the plateform the instance is running on. Closes #7561 --- openerp/tools/translate.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openerp/tools/translate.py b/openerp/tools/translate.py index 1c53b47beff..bdc6052dbdd 100644 --- a/openerp/tools/translate.py +++ b/openerp/tools/translate.py @@ -874,6 +874,8 @@ def trans_generate(lang, modules, cr): display_path = "addons%s" % frelativepath module = get_module_from_path(fabsolutepath, mod_paths=mod_paths) 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