diff options
| author | David Beguin <dbe@odoo.com> | 2019-11-22 16:13:36 +0000 |
|---|---|---|
| committer | David Beguin <dbe@odoo.com> | 2019-11-22 16:32:19 +0000 |
| commit | 1832d17d2146df474cd9cc2e1572fd185c6727d0 (patch) | |
| tree | 2988e0758d612702f7109226f45753e04662c9c7 /addons/website_livechat | |
| parent | 2106dd3cd10da44cd0b25897aaa5104f93aea703 (diff) | |
[FIX] im_livechat, website_livechat: fix use visitor name in livechat session
im_livechat main controller was referring to website.visitor but this module is
not depending on website. The usage of website visitor's name should have been
done in website_livechat module.
This commit fix this issue.
Task ID: 2116715
PR #40732
closes odoo/odoo#40884
X-original-commit: defb98c1083e55ff02f290c3c6257a4ca8dc7d1f
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Diffstat (limited to 'addons/website_livechat')
| -rw-r--r-- | addons/website_livechat/controllers/main.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/addons/website_livechat/controllers/main.py b/addons/website_livechat/controllers/main.py index 57b5437e59a..4ab5e56fb61 100644 --- a/addons/website_livechat/controllers/main.py +++ b/addons/website_livechat/controllers/main.py @@ -3,9 +3,10 @@ from odoo import http, _ from odoo.http import request +from odoo.addons.im_livechat.controllers.main import LivechatController -class WebsiteLivechat(http.Controller): +class WebsiteLivechat(LivechatController): @http.route('/livechat', type='http', auth="public", website=True, sitemap=True) def channel_list(self, **kw): @@ -56,6 +57,14 @@ class WebsiteLivechat(http.Controller): } return request.render("website_livechat.channel_page", values) + @http.route('/im_livechat/get_session', type="json", auth='public', cors="*") + def get_session(self, channel_id, anonymous_name, previous_operator_id=None, **kwargs): + """ Override to use visitor name instead of 'Visitor' whenever a visitor start a livechat session. """ + visitor_sudo = request.env['website.visitor']._get_visitor_from_request() + if visitor_sudo: + anonymous_name = visitor_sudo.display_name + return super(WebsiteLivechat, self).get_session(channel_id, anonymous_name, previous_operator_id=previous_operator_id, **kwargs) + @http.route('/im_livechat/visitor_leave_session', type='json', auth="public") def visitor_leave_session(self, uuid): """ Called when the livechat visitor leaves the conversation. |
