Skip to content

Commit e941fb7

Browse files
committed
[IMP] openupgrade_scripts: Fix snippet
1 parent 3337121 commit e941fb7

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import logging
2+
3+
from lxml import etree
4+
from openupgradelib import openupgrade
5+
6+
_logger = logging.getLogger(__name__)
7+
8+
9+
@openupgrade.migrate()
10+
def migrate(env, cr):
11+
views = env["ir.ui.view"].search(
12+
[("arch_db", "like", "expr=\"//div[@id='snippet_custom']\"")]
13+
)
14+
for view in views:
15+
try:
16+
t_element = etree.fromstring(view.arch_db).xpath("//t")[0]
17+
thumbnail_url = t_element.attrib["t-thumbnail"]
18+
full_snippet_key = t_element.attrib["t-snippet"]
19+
template_key, snippet_key = view.key.rsplit(".", 1)
20+
view.write(
21+
{
22+
"arch": f"""
23+
<data inherit_id="{template_key}">
24+
<xpath expr="//snippets[@id='snippet_custom']" position="inside">
25+
<t t-snippet="{full_snippet_key}" t-thumbnail="{thumbnail_url}"/>
26+
</xpath>
27+
</data>
28+
""" # noqa: E501
29+
}
30+
)
31+
except Exception as e:
32+
_logger.error(f"View with id {view.id} cannot be transformed {e}")

0 commit comments

Comments
 (0)