[FIX] mail: fix access rights for reaction in portal
Before this commit, the portal user get a Access Error. After this commit, the portal user see the chatter without error. The code works with reaction browsed in sudo, but since we use a ior with a record not in sudo, we loose the sudo flag and so the right for portal user to read it. ```py x = record.sudo() y = record x |= y -> (x, y) in sudo y |= x -> (x, y) not in sudo ``` How to reproduce ? Assign lead to a portal user Post a message with another user like demo on the lead Add reaction with the admin user Open the opportunity on the portal with portal user -> access error opw-3215507 closes odoo/odoo#117313 X-original-commit: 2bde53541b7a0171c7d1b89e0e412d624f5eab37 Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com> Signed-off-by: Jérémy Kersten <jke@odoo.com>
This commit is contained in:
@@ -888,7 +888,7 @@ class Message(models.Model):
|
||||
else:
|
||||
record_name = False
|
||||
default_subject = False
|
||||
reactions_per_content = defaultdict(lambda: self.env['mail.message.reaction'])
|
||||
reactions_per_content = defaultdict(self.env['mail.message.reaction'].sudo().browse)
|
||||
for reaction in message_sudo.reaction_ids:
|
||||
reactions_per_content[reaction.content] |= reaction
|
||||
reaction_groups = [{
|
||||
|
||||
Reference in New Issue
Block a user