[ADD] Pseudo `clone` mode for <templates> using primary="True"
authorFabien Meghazi <fme@openerp.com>
Wed, 11 Jun 2014 15:03:02 +0000 (17:03 +0200)
committerFabien Meghazi <fme@openerp.com>
Wed, 11 Jun 2014 15:03:02 +0000 (17:03 +0200)
When @primary="True" is present on <template> tag, we'll set
the t-name to the full canonical xmlid of current template (@id)
Providing a "kind of" clone mode for templates.

openerp/tools/convert.py

index 224bed8..d55ba52 100644 (file)
@@ -898,6 +898,14 @@ form: module.record_id""" % (xml_id,)
         if el.attrib.pop('page', None) == 'True':
             record.append(Field(name="page", eval="True"))
         if el.get('primary') == 'True':
+            # Pseudo clone mode, we'll set the t-name to the full canonical xmlid
+            el.append(
+                builder.E.xpath(
+                    builder.E.attribute(full_tpl_id, name='t-name'),
+                    expr=".",
+                    position="attributes",
+                )
+            )
             record.append(Field('primary', name='mode'))
         if el.get('optional'):
             record.append(Field(el.get('optional'), name='application'))