[IMP] hr_holiday/calendar : allow to pass no_email into context when we create a meeting to avoid to send a mail to attendees.

This commit is contained in:
Jeremy Kersten 2014-10-03 20:43:48 +02:00
parent 42c13efcee
commit 24bec094c2
2 changed files with 8 additions and 5 deletions

View File

@ -1046,7 +1046,9 @@ class calendar_event(osv.Model):
def new_invitation_token(self, cr, uid, record, partner_id):
return uuid.uuid4().hex
def create_attendees(self, cr, uid, ids, context):
def create_attendees(self, cr, uid, ids, context=None):
if context is None:
context = {}
user_obj = self.pool['res.users']
current_user = user_obj.browse(cr, uid, uid, context=context)
res = {}
@ -1076,8 +1078,9 @@ class calendar_event(osv.Model):
if not current_user.email or current_user.email != partner.email:
mail_from = current_user.email or tools.config.get('email_from', False)
if self.pool['calendar.attendee']._send_mail_to_attendees(cr, uid, att_id, email_from=mail_from, context=context):
self.message_post(cr, uid, event.id, body=_("An invitation email has been sent to attendee %s") % (partner.name,), subtype="calendar.subtype_invitation", context=context)
if not context.get('no_email'):
if self.pool['calendar.attendee']._send_mail_to_attendees(cr, uid, att_id, email_from=mail_from, context=context):
self.message_post(cr, uid, event.id, body=_("An invitation email has been sent to attendee %s") % (partner.name,), subtype="calendar.subtype_invitation", context=context)
if new_attendees:
self.write(cr, uid, [event.id], {'attendee_ids': [(4, att) for att in new_attendees]}, context=context)

View File

@ -385,7 +385,8 @@ class hr_holidays(osv.osv):
if record.user_id and record.user_id.partner_id:
meeting_vals['partner_ids'] = [(4,record.user_id.partner_id.id)]
meeting_id = meeting_obj.create(cr, uid, meeting_vals)
ctx_no_email = dict(context or {}, no_email=True)
meeting_id = meeting_obj.create(cr, uid, meeting_vals, context=ctx_no_email)
self._create_resource_leave(cr, uid, [record], context=context)
self.write(cr, uid, ids, {'meeting_id': meeting_id})
elif record.holiday_type == 'category':
@ -430,7 +431,6 @@ class hr_holidays(osv.osv):
return True
def holidays_cancel(self, cr, uid, ids, context=None):
meeting_obj = self.pool.get('calendar.event')
for record in self.browse(cr, uid, ids):
# Delete the meeting
if record.meeting_id: