From 2f267790e9a5bfd1c2a56bce32fb1180926d5741 Mon Sep 17 00:00:00 2001 From: Milan Cosnefroy Date: Tue, 24 Sep 2024 23:32:08 +0200 Subject: [PATCH] [FIX][H14427] website_sale_signifyd: browserIpAddress required, always include --- website_sale_signifyd/models/sale_order.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/website_sale_signifyd/models/sale_order.py b/website_sale_signifyd/models/sale_order.py index a127229b..03e7fc88 100644 --- a/website_sale_signifyd/models/sale_order.py +++ b/website_sale_signifyd/models/sale_order.py @@ -8,15 +8,16 @@ from odoo.http import request class SaleOrder(models.Model): _inherit = 'sale.order' + # Source IP for case creation - determination attempted at order creation and if necessary at confirmation def _get_source_ip(self): - if request and request.env.user._is_public(): + if request: return request.httprequest.environ['REMOTE_ADDR'] return '' signifyd_case_id = fields.Many2one('signifyd.case', readonly=1, copy=False) singifyd_score = fields.Float(related='signifyd_case_id.score') signifyd_checkpoint_action = fields.Selection(string='Signifyd Action', related='signifyd_case_id.checkpoint_action') - source_ip = fields.Char(default=_get_source_ip) + source_ip = fields.Char(default=_get_source_ip, help='IP address of the customer, used for signifyd case creation.') def action_view_signifyd_case(self): self.ensure_one() @@ -109,6 +110,7 @@ class SaleOrder(models.Model): "orderSessionId": order_session_id, "orderId": self.id, "checkoutToken": checkout_token, + "browserIpAddress": browser_ip_address, "currency": self.partner_id.currency_id.name, "orderChannel": "WEB", "totalPrice": self.amount_total, @@ -178,7 +180,4 @@ class SaleOrder(models.Model): ], } - if browser_ip_address: - new_case_vals['purchase']['browserIpAddress'] = browser_ip_address - return new_case_vals