diff --git a/whatsapp_product_inquiry/controllers/whatsapp_product_inquiry.py b/whatsapp_product_inquiry/controllers/whatsapp_product_inquiry.py index f1824f46f..0840cdfff 100644 --- a/whatsapp_product_inquiry/controllers/whatsapp_product_inquiry.py +++ b/whatsapp_product_inquiry/controllers/whatsapp_product_inquiry.py @@ -21,6 +21,7 @@ import werkzeug from odoo import http from odoo.http import request +from urllib.parse import quote_plus from odoo.addons.website_sale.controllers.main import WebsiteSale @@ -37,3 +38,15 @@ class WebsiteSale(WebsiteSale): '\nProduct Url: ' + request.website.get_base_url() + request.env['product.product'].browse(kw['product']).website_url)) + + @http.route(['/whatsapp/inquiry/'], type='http', auth="public", + website=True) + def whatsapp_product_inquiry(self, product, **kw): + """Redirect to WhatsApp web page""" + company = request.website.get_current_website().company_id + product_obj = request.env['product.product'].browse(product) + message = (company.message + '\nProduct Url: ' + + request.website.get_base_url() + product_obj.website_url) + encoded_message = quote_plus(message) + return werkzeug.utils.redirect("https://wa.me/%s?text=%s" % ( + company.whatsapp_number, encoded_message)) diff --git a/whatsapp_product_inquiry/doc/RELEASE_NOTES.md b/whatsapp_product_inquiry/doc/RELEASE_NOTES.md index 4933d19a2..e983973df 100644 --- a/whatsapp_product_inquiry/doc/RELEASE_NOTES.md +++ b/whatsapp_product_inquiry/doc/RELEASE_NOTES.md @@ -3,3 +3,10 @@ #### Version 18.0.1.0.0 #### ADD - Initial commit for Whatsapp Product Inquiry In Website + +#### 29.05.2025 +#### Version 18.0.1.0.0 +#### Update +- Updated the whatsapp_product_inquiry controller function to URL-encode the +message using quote_plus() to prevent newline-related redirect errors in +Werkzeug 3.0.1.