From 29326cd9931925dbd70bc8327d164f19c01d6d4c Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Sun, 22 Sep 2013 11:31:13 +0200 Subject: [PATCH 1/3] [IMP] Add file='...' on tags + [FIX] forced noupdate bzr revid: fp@openerp.com-20130922093113-80p3pig45qbm7lsn --- openerp/addons/base/ir/ir_attachment.py | 1 + openerp/import_xml.rng | 4 ++++ openerp/tools/convert.py | 11 ++++++++++- 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/openerp/addons/base/ir/ir_attachment.py b/openerp/addons/base/ir/ir_attachment.py index 704488f6938..285551cb3c9 100644 --- a/openerp/addons/base/ir/ir_attachment.py +++ b/openerp/addons/base/ir/ir_attachment.py @@ -44,6 +44,7 @@ class ir_attachment(osv.osv): The default implementation is the file:dirname location that stores files on the local filesystem using name based on their sha1 hash """ + _order = 'id desc' def _name_get_resname(self, cr, uid, ids, object, method, context): data = {} for attachment in self.browse(cr, uid, ids, context=context): diff --git a/openerp/import_xml.rng b/openerp/import_xml.rng index d4cd358ae89..e694e6d64b8 100644 --- a/openerp/import_xml.rng +++ b/openerp/import_xml.rng @@ -167,6 +167,10 @@ + + + + diff --git a/openerp/tools/convert.py b/openerp/tools/convert.py index 3334649eec0..a316dc28a9b 100644 --- a/openerp/tools/convert.py +++ b/openerp/tools/convert.py @@ -175,6 +175,13 @@ def _eval_xml(self, node, pool, cr, uid, idref, context=None): if t == 'html': return _process("".join([etree.tostring(n, encoding='utf-8') for n in node]), idref) + if node.get('file'): + import openerp.tools + import base64 + fp = openerp.tools.file_open(node.get('file')) + result = base64.b64encode(fp.read()) + return result + if t == 'file': from ..modules import module path = node.text.strip() @@ -241,7 +248,9 @@ class xml_import(object): return val.lower() not in ('0', 'false', 'off') def isnoupdate(self, data_node=None): - return self.noupdate or (len(data_node) and self.nodeattr2bool(data_node, 'noupdate', False)) + if data_node and data_node.get('noupdate'): + return len(data_node) and self.nodeattr2bool(data_node, 'noupdate', False) + return self.noupdate def get_context(self, data_node, node, eval_dict): data_node_context = (len(data_node) and data_node.get('context','').encode('utf8')) From 704639cc7c4a12f6c5e0a4a4acaa674d312f8f47 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Sun, 22 Sep 2013 19:28:51 +0200 Subject: [PATCH 2/3] [IMP] revert bzr revid: fp@openerp.com-20130922172851-j9jrcjcyc5kmtlik --- openerp/tools/convert.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/openerp/tools/convert.py b/openerp/tools/convert.py index a316dc28a9b..6df22828b84 100644 --- a/openerp/tools/convert.py +++ b/openerp/tools/convert.py @@ -248,9 +248,7 @@ class xml_import(object): return val.lower() not in ('0', 'false', 'off') def isnoupdate(self, data_node=None): - if data_node and data_node.get('noupdate'): - return len(data_node) and self.nodeattr2bool(data_node, 'noupdate', False) - return self.noupdate + return self.noupdate or (len(data_node) and self.nodeattr2bool(data_node, 'noupdate', False)) def get_context(self, data_node, node, eval_dict): data_node_context = (len(data_node) and data_node.get('context','').encode('utf8')) From 6188a2af5bd7a210f15a4e7f1c6991ba0bfd19b3 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Sun, 22 Sep 2013 21:36:36 +0200 Subject: [PATCH 3/3] [IMP] YourCompany bzr revid: fp@openerp.com-20130922193636-3iz72tu6c12j5x5l --- openerp/addons/base/base_demo.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openerp/addons/base/base_demo.xml b/openerp/addons/base/base_demo.xml index 7cc5acf2c0f..b0f9a359889 100644 --- a/openerp/addons/base/base_demo.xml +++ b/openerp/addons/base/base_demo.xml @@ -10,7 +10,7 @@ - Dunder Mufflin + YourCompany 1725 Slough Ave. Scranton 18540 @@ -85,7 +85,7 @@ BZrmED0AAAAASUVORK5CYII= - Dunder Mufflin + YourCompany