diff --git a/addons/mail/models/res_company.py b/addons/mail/models/res_company.py index 3572c903d0e..fc21ad3616d 100644 --- a/addons/mail/models/res_company.py +++ b/addons/mail/models/res_company.py @@ -10,7 +10,10 @@ class Company(models.Model): catchall_email = fields.Char(string="Catchall Email", compute="_compute_catchall") catchall_formatted = fields.Char(string="Catchall", compute="_compute_catchall") - email_formatted = fields.Char(string="Formatted Email", compute="_compute_email_formatted") + # the compute method is sudo'ed because it needs to access res.partner records + # portal users cannot access those (but they should be able to read the company email address) + email_formatted = fields.Char(string="Formatted Email", + compute="_compute_email_formatted", compute_sudo=True) @api.depends('name') def _compute_catchall(self): diff --git a/addons/website_slides/static/tests/tours/slides_course_member.js b/addons/website_slides/static/tests/tours/slides_course_member.js index 9a207399e9f..534a635d656 100644 --- a/addons/website_slides/static/tests/tours/slides_course_member.js +++ b/addons/website_slides/static/tests/tours/slides_course_member.js @@ -31,6 +31,21 @@ registry.category("web_tour.tours").add('course_member', { trigger: '.o_wslides_fs_slide_name:contains("Home Gardening")', run: 'click', }, +// eLearning: share the first slide +{ + trigger: '.o_wslides_fs_share' +}, { + trigger: '.o_wslides_js_share_email input', + run: 'text friend@example.com' +}, { + trigger: '.o_wslides_js_share_email button', +}, { + trigger: '.o_wslides_js_share_email:contains("Sharing is caring")', + run: function () {} // check email has been sent +}, { + trigger: '.modal-footer button:contains("Close")', +}, +// eLeaning: course completion { trigger: '.o_wslides_fs_sidebar_header', run: function () {