[IMP] website: add data-snippet attribute on rendered snippets
Add the 'data-snippet' attribute on each snippet rendered by the configurator when building website pages. closes odoo/odoo#69706 X-original-commit: 7c203eda4210eec7db476aa5ac056150b795b921 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com> Signed-off-by: Sébastien Mottet <smottet@users.noreply.github.com>
This commit is contained in:
@@ -9,6 +9,7 @@ import requests
|
||||
import re
|
||||
|
||||
|
||||
from lxml import html
|
||||
from werkzeug import urls
|
||||
from werkzeug.datastructures import OrderedMultiDict
|
||||
from werkzeug.exceptions import NotFound
|
||||
@@ -321,6 +322,9 @@ class Website(models.Model):
|
||||
view_id = self.env['website'].with_context(website_id=website.id).viewref(snippet)
|
||||
if view_id:
|
||||
rendered_snippet = pycompat.to_text(view_id._render())
|
||||
el = html.fragment_fromstring(rendered_snippet)
|
||||
el.attrib['data-snippet'] = snippet.split('.', 1)[-1]
|
||||
rendered_snippet = pycompat.to_text(html.tostring(el))
|
||||
rendered_snippets.append(rendered_snippet)
|
||||
except ValueError as e:
|
||||
logger.warning(e)
|
||||
|
||||
Reference in New Issue
Block a user