[REF] mail.thread API: get_subscribers: propagated chances (in crm_lead, hr_holidays, hr_recruitment, mrp, project, project_issue)
bzr revid: tde@openerp.com-20120511124139-paj05zp4lw6bvcr6
This commit is contained in:
parent
db6471f7e0
commit
35b0b58b3e
|
@ -829,13 +829,12 @@ class crm_lead(crm_case, osv.osv):
|
|||
# OpenChatter methods and notifications
|
||||
# ----------------------------------------
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(crm_lead, self).message_get_subscribers_ids(cr, uid, ids, context=context)
|
||||
# add salesman to the subscribers
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(crm_lead, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.user_id:
|
||||
sub_ids.append(obj.user_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
return super(crm_lead, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def case_get_note_msg_prefix(self, cr, uid, lead, context=None):
|
||||
if isinstance(lead, (int, long)):
|
||||
|
|
|
@ -371,14 +371,15 @@ class hr_holidays(osv.osv):
|
|||
hr_manager_group = self.pool.get('res.groups').read(cr, uid, [obj_id], ['users'], context=context)[0]
|
||||
result[obj.id] = hr_manager_group['users']
|
||||
return result
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(hr_holidays, self).message_get_subscribers_ids(cr, uid, ids, context=context)
|
||||
# add the employee and its manager if specified to the subscribed users
|
||||
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(hr_holidays, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.employee_id.parent_id:
|
||||
sub_ids.append(obj.employee_id.parent_id.user_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
if obj.employee_id.parent_id and not obj.employee_id.parent_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.employee_id.parent_id.id], context=context)
|
||||
return super(hr_holidays, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def create_notificate(self, cr, uid, ids, context=None):
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
|
|
|
@ -483,13 +483,13 @@ class hr_applicant(crm.crm_case, osv.osv):
|
|||
# -------------------------------------------------------
|
||||
# OpenChatter methods and notifications
|
||||
# -------------------------------------------------------
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(hr_applicant, self).message_get_subscribers_ids(cr, uid, ids, context=context)
|
||||
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(hr_applicant, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.user_id:
|
||||
sub_ids.append(obj.user_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
return super(hr_applicant, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def get_needaction_user_ids(self, cr, uid, ids, context=None):
|
||||
result = dict.fromkeys(ids, [])
|
||||
|
|
|
@ -1041,12 +1041,12 @@ class mrp_production(osv.osv):
|
|||
result[obj.id] = [obj.user_id.id]
|
||||
return result
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(mrp_production, self).message_get_subscribers_ids(cr, uid, ids, context=context)
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(mrp_production, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.user_id:
|
||||
sub_ids.append(obj.user_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
return super(mrp_production, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def create_send_note(self, cr, uid, ids, context=None):
|
||||
self.message_append_note(cr, uid, ids, body=_("Manufacturing order has been <b>created</b>."), context=context)
|
||||
|
|
|
@ -471,12 +471,12 @@ def Project():
|
|||
result[obj.id] = [obj.user_id.id]
|
||||
return result
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(project, self).message_get_subscribers_ids(cr, uid, ids, context=context);
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(project, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.user_id:
|
||||
sub_ids.append(obj.user_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
return super(project, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def create(self, cr, uid, vals, context=None):
|
||||
obj_id = super(project, self).create(cr, uid, vals, context=context)
|
||||
|
@ -1154,14 +1154,14 @@ class task(osv.osv):
|
|||
result[obj.id] = [obj.user_id.id]
|
||||
return result
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(task, self).message_get_subscribers_ids(cr, uid, ids, context=context)
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(task, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.user_id:
|
||||
sub_ids.append(obj.user_id.id)
|
||||
if obj.manager_id:
|
||||
sub_ids.append(obj.manager_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
if obj.manager_id and not obj.manager_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.manager_id.id], context=context)
|
||||
return super(task, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def create_send_note(self, cr, uid, ids, context=None):
|
||||
return self.message_append_note(cr, uid, ids, body=_("Task has been <b>created</b>."), context=context)
|
||||
|
|
|
@ -475,19 +475,19 @@ class project_issue(crm.crm_case, osv.osv):
|
|||
if obj.state == 'draft' and obj.user_id:
|
||||
result[obj.id] = [obj.user_id.id]
|
||||
return result
|
||||
|
||||
def message_get_subscribers_ids(self, cr, uid, ids, context=None):
|
||||
sub_ids = super(project_issue, self).message_get_subscribers_ids(cr, uid, ids, context=context)
|
||||
|
||||
def message_get_subscribers(self, cr, uid, ids, get_ids=False, context=None):
|
||||
user_ids = super(project_issue, self).message_get_subscribers(cr, uid, ids, True, context=context)
|
||||
for obj in self.browse(cr, uid, ids, context=context):
|
||||
if obj.user_id:
|
||||
sub_ids.append(obj.user_id.id)
|
||||
return sub_ids
|
||||
if obj.user_id and not obj.user_id.id in user_ids:
|
||||
self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
|
||||
return super(project_issue, self).message_get_subscribers(cr, uid, ids, get_ids, context=context)
|
||||
|
||||
def case_get_note_msg_prefix(self, cr, uid, id, context=None):
|
||||
return 'Project issue '
|
||||
|
||||
def convert_to_task_send_note(self, cr, uid, ids, context=None):
|
||||
message = _("Project issue has been <b>converted</b> in to task.")
|
||||
message = _("Project issue has been <b>converted</b> into task.")
|
||||
return self.message_append_note(cr, uid, ids, body=message, context=context)
|
||||
|
||||
def create_send_note(self, cr, uid, ids, context=None):
|
||||
|
|
Loading…
Reference in New Issue