From dd9f10a6a46b32511aebad956ce1a4fd125ca66a Mon Sep 17 00:00:00 2001 From: Randhir Mayatra Date: Thu, 17 Jul 2014 11:26:33 +0530 Subject: [PATCH 1/2] [IMP] proj: optionalize default alias generation --- addons/project/project.py | 6 +++++- addons/project/res_config.py | 6 ++++++ addons/project/res_config_view.xml | 9 +++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/addons/project/project.py b/addons/project/project.py index 5beb80ffed5..e9a92a1af3d 100644 --- a/addons/project/project.py +++ b/addons/project/project.py @@ -531,7 +531,11 @@ def Project(): project_id = super(project, self).create(cr, uid, vals, context=create_context) project_rec = self.browse(cr, uid, project_id, context=context) - self.pool.get('mail.alias').write(cr, uid, [project_rec.alias_id.id], {'alias_parent_thread_id': project_id, 'alias_defaults': {'project_id': project_id}}, context) + ir_values = self.pool.get('ir.values').get_default( cr, uid, 'project.config.settings', 'generate_project_alias' ) + values = { 'alias_parent_thread_id': project_id, 'alias_defaults': {'project_id': project_id}} + if ir_values: + values = dict(values, alias_name=vals['name']) + self.pool.get('mail.alias').write(cr, uid, [project_rec.alias_id.id], values, context=context) return project_id def write(self, cr, uid, ids, vals, context=None): diff --git a/addons/project/res_config.py b/addons/project/res_config.py index 187ad0327d8..b7bcda25b74 100644 --- a/addons/project/res_config.py +++ b/addons/project/res_config.py @@ -58,6 +58,8 @@ class project_configuration(osv.osv_memory): 'group_manage_delegation_task': fields.boolean("Allow task delegation", implied_group='project.group_delegate_task', help="Allows you to delegate tasks to other users."), + 'generate_project_alias': fields.boolean("Automatically generate an email alias at the project creation", + help="Odoo will generate an email alias at the project creation from project name."), } def get_default_time_unit(self, cr, uid, fields, context=None): @@ -74,4 +76,8 @@ class project_configuration(osv.osv_memory): return {'value': {'group_tasks_work_on_tasks': True}} return {} + def set_default_generate_project_alias(self, cr, uid, ids, context=None): + config_value = self.browse(cr, uid, ids, context=context).generate_project_alias + self.pool.get('ir.values').set_default(cr, uid, 'project.config.settings', 'generate_project_alias', config_value) + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project/res_config_view.xml b/addons/project/res_config_view.xml index 16dce54d88b..7db447c1359 100644 --- a/addons/project/res_config_view.xml +++ b/addons/project/res_config_view.xml @@ -63,6 +63,15 @@ + +