Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.

Module: Discuss

Entity: mail.thread

Compute Method: _compute_message_partner_ids

Inputs Method Outputs
is_internal = self.env.su or self.env.user.has_group('base.group_user')
if is_internal:
            for thread in self:
                thread.message_partner_ids = thread.message_follower_ids.partner_id
        else:
            # see only partners that can be searched
            user_partner = self.env.user.partner_id
            allow_partner_ids = set((user_partner | user_partner.commercial_partner_id).ids)
            for thread in self:
                partners = thread.sudo().message_follower_ids.partner_id.filtered(lambda p: p.id in allow_partner_ids)
                thread.message_partner_ids = partners

Back to entity