[FIX] website : fix visitor cookie expiration
Before this commit, the visitor cookie was expiring by default on browser session close on firefox. On Chrome, the cookie was always valid after browser session closing. On Firefox, the expiration date must be set to make the cookie still valid after closing the browser. The same thing happened with livechat_session cookies set in context of livechat request. The cookie expiration date (100 years to 'never' expire) have been added. Linked to original Task ID : 2028059 Task ID : 2060381 PR #36126 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit is contained in:
@@ -106,7 +106,8 @@ class WebsiteVisitor(models.Model):
|
||||
# If visitor does not exist
|
||||
visitor_sudo = self._create_visitor(website_page.id)
|
||||
sign = visitor_sudo._get_visitor_sign().get(visitor_sudo.id)
|
||||
response.set_cookie('visitor_id', sign)
|
||||
expiration_date = datetime.now() + timedelta(days=100*365) # never expire
|
||||
response.set_cookie('visitor_id', sign, expires=expiration_date.timestamp())
|
||||
else:
|
||||
# Add page even if already in visitor_page_ids as checks on relations are done in many2many write method
|
||||
vals = {
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
import json
|
||||
|
||||
from odoo import models, api, fields, _
|
||||
from odoo.exceptions import UserError
|
||||
import json
|
||||
|
||||
|
||||
class WebsiteVisitor(models.Model):
|
||||
@@ -99,4 +101,5 @@ class WebsiteVisitor(models.Model):
|
||||
"uuid": chat_request_channel.uuid,
|
||||
"type": "chat_request"
|
||||
})
|
||||
response.set_cookie('im_livechat_session', livechat_session)
|
||||
expiration_date = datetime.now() + timedelta(days=100*365) # never expire
|
||||
response.set_cookie('im_livechat_session', livechat_session, expires=expiration_date.timestamp())
|
||||
|
||||
Reference in New Issue
Block a user