diff options
| author | Rajesh Prajapati (OpenERP) <rpr@tinyerp.com> | 2012-10-05 17:35:03 +0530 |
|---|---|---|
| committer | Rajesh Prajapati (OpenERP) <rpr@tinyerp.com> | 2012-10-05 17:35:03 +0530 |
| commit | cdff4611b0a588546afb9b706bbd2d0fbda7bf2f (patch) | |
| tree | 0a0a99b33e52547987ab69b2a29f3ec23c188142 /addons/project_issue | |
| parent | 7202b8f7efbc76e2a40b1a4a8d7a95ed0d2ce573 (diff) | |
| parent | ba97319054728490e4d8a601382dd6fd2ab4f970 (diff) | |
[MERGE] merge with main addons
bzr revid: rpr@tinyerp.com-20121005120503-07e0zo8ucv8k0q3s
Diffstat (limited to 'addons/project_issue')
| -rw-r--r-- | addons/project_issue/project_issue.py | 14 | ||||
| -rw-r--r-- | addons/project_issue/project_issue_data.xml | 16 | ||||
| -rw-r--r-- | addons/project_issue/project_issue_demo.xml | 2 | ||||
| -rw-r--r-- | addons/project_issue/project_issue_view.xml | 14 |
4 files changed, 35 insertions, 11 deletions
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py index f39be0c09d5..2004e1310f0 100644 --- a/addons/project_issue/project_issue.py +++ b/addons/project_issue/project_issue.py @@ -279,7 +279,7 @@ class project_issue(base_stage, osv.osv): 'section_id': lambda s, cr, uid, c: s._get_default_section_id(cr, uid, c), 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c), 'priority': crm.AVAILABLE_PRIORITIES[2][0], - } + } _group_by_full = { 'stage_id': _read_group_stage_ids @@ -364,6 +364,10 @@ class project_issue(base_stage, osv.osv): logged_fields = ['stage_id', 'state', 'message_ids'] if any([field in vals for field in logged_fields]): vals['date_action_last'] = time.strftime('%Y-%m-%d %H:%M:%S') + if vals.get('project_id'): + project_id = self.pool.get('project.project').browse(cr, uid, vals.get('project_id'), context=context) + vals['message_follower_ids'] = [(4, follower.id) for follower in project_id.message_follower_ids] + return super(project_issue, self).write(cr, uid, ids, vals, context) def onchange_task_id(self, cr, uid, ids, task_id, context=None): @@ -381,6 +385,10 @@ class project_issue(base_stage, osv.osv): def create(self, cr, uid, vals, context=None): obj_id = super(project_issue, self).create(cr, uid, vals, context=context) + project_id = self.browse(cr, uid, obj_id, context=context).project_id + if project_id: + followers = [follower.id for follower in project_id.message_follower_ids] + self.message_subscribe(cr, uid, [obj_id], followers, context=context) self.create_send_note(cr, uid, [obj_id], context=context) return obj_id @@ -503,7 +511,7 @@ class project_issue(base_stage, osv.osv): def stage_set_send_note(self, cr, uid, ids, stage_id, context=None): """ Override of the (void) default notification method. """ stage_name = self.pool.get('project.task.type').name_get(cr, uid, [stage_id], context=context)[0][1] - return self.message_post(cr, uid, ids, body= _("Stage changed to <b>%s</b>.") % (stage_name), context=context) + return self.message_post(cr, uid, ids, body= _("Stage changed to <b>%s</b>.") % (stage_name), subtype="mt_issue_new", context=context) def case_get_note_msg_prefix(self, cr, uid, id, context=None): """ Override of default prefix for notifications. """ @@ -515,7 +523,7 @@ class project_issue(base_stage, osv.osv): def create_send_note(self, cr, uid, ids, context=None): message = _("Project issue <b>created</b>.") - return self.message_post(cr, uid, ids, body=message, context=context) + return self.message_post(cr, uid, ids, body=message, subtype="mt_issue_new", context=context) def case_escalate_send_note(self, cr, uid, ids, context=None): for obj in self.browse(cr, uid, ids, context=context): diff --git a/addons/project_issue/project_issue_data.xml b/addons/project_issue/project_issue_data.xml index ddb0d575e63..edd44e52dd2 100644 --- a/addons/project_issue/project_issue_data.xml +++ b/addons/project_issue/project_issue_data.xml @@ -42,5 +42,21 @@ You can record issues, assign them to a responsible person, and keep track of th Access all issues from the top Project menu, and access the issues of a specific project via the projects gallery view.</field> </record> + <!-- Mail subtypes --> + <record id="mail.mt_issue_new" model="mail.message.subtype"> + <field name="name">created</field> + <field name="res_model">project.issue</field> + <field name="default" eval="False"/> + </record> + <record id="mail.mt_issue_new" model="mail.message.subtype"> + <field name="name">stage change</field> + <field name="res_model">project.issue</field> + <field name="default" eval="False"/> + </record> + <record id="mail.mt_issue_closed" model="mail.message.subtype"> + <field name="name">closed</field> + <field name="res_model">project.issue</field> + </record> + </data> </openerp> diff --git a/addons/project_issue/project_issue_demo.xml b/addons/project_issue/project_issue_demo.xml index 0a4eee3067b..9759d15dabb 100644 --- a/addons/project_issue/project_issue_demo.xml +++ b/addons/project_issue/project_issue_demo.xml @@ -31,7 +31,7 @@ </record> <record id="crm_case_programnotgivingproperoutput0" model="project.issue"> - <field eval="time.strftime('%Y-%m-15 12:50:00')" name="date"/> + <field eval="time.strftime('%Y-%m-15 12:50:00')" name="date"/> <field name="priority">3</field> <field name="user_id" ref="base.user_root"/> <field name="partner_id" ref="base.res_partner_1"/> diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml index 8d54520261f..3214b93c8d3 100644 --- a/addons/project_issue/project_issue_view.xml +++ b/addons/project_issue/project_issue_view.xml @@ -340,13 +340,13 @@ </field> </record> - <act_window id="act_project_project_2_project_issue_all" - name="Issues" - src_model="project.project" - res_model="project.issue" - view_type="form" - view_mode="kanban,tree,form,calendar,graph" - context="{'search_default_project_id': [active_id], 'default_project_id': active_id}"/> + <record id="act_project_project_2_project_issue_all" model="ir.actions.act_window"> + <field name="res_model">project.issue</field> + <field name="view_type">form</field> + <field name="name">Issues</field> + <field name="view_mode">kanban,tree,form,calendar,graph</field> + <field name="context">{'search_default_project_id': [active_id], 'default_project_id': active_id}</field> + </record> <!-- Project --> <record id="view_project_form_inherited" model="ir.ui.view"> |
