1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models
class MailActivity(models.Model):
_inherit = "mail.activity"
def action_create_calendar_event(self):
""" Small override of the action that creates a calendar.
If the activity is linked to a crm.lead through the "opportunity_id" field, we include in
the action context the default values used when scheduling a meeting from the crm.lead form
view.
e.g: It will set the partner_id of the crm.lead as default attendee of the meeting. """
action = super(MailActivity, self).action_create_calendar_event()
opportunity = self.calendar_event_id.opportunity_id
if opportunity:
opportunity_action_context = opportunity.action_schedule_meeting(smart_calendar=False).get('context', {})
opportunity_action_context['initial_date'] = self.calendar_event_id.start
action['context'].update(opportunity_action_context)
return action
|