From 6d32891c048f51d1c678e9f343dfdf3210fdd2b6 Mon Sep 17 00:00:00 2001 From: "Harry (Open ERP)" Date: Thu, 17 Dec 2009 18:52:31 +0530 Subject: [PATCH] [FIX] document, document_ics, document_ftp : solved problem to read content data bzr revid: hmo@tinyerp.com-20091217132231-a4zcin2lvd2qjjsn --- addons/document/directory_content.py | 10 ++++------ addons/document_ftp/ftpserver/abstracted_fs.py | 8 ++++---- addons/document_ics/document_ics.py | 9 ++++----- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/addons/document/directory_content.py b/addons/document/directory_content.py index b82da1bce8a..0b1b444e83a 100644 --- a/addons/document/directory_content.py +++ b/addons/document/directory_content.py @@ -98,18 +98,16 @@ class document_directory_content(osv.osv): res2.append(n) return res2 - def process_write(self, cr, uid, node, data): + def process_write(self, cr, uid, node, data, context=None): if node.extension != '.pdf': raise Exception("Invalid content: %s" % node.extension) return True - def process_read(self, cr, uid, node): + def process_read(self, cr, uid, node, context=None): if node.extension != '.pdf': raise Exception("Invalid content: %s" % node.extension) report = self.pool.get('ir.actions.report.xml').browse(cr, uid, node.report_id) srv = netsvc.Service._services['report.'+report.report_name] - pdf,pdftype = srv.create(cr, uid, [node.context.context['res_id']], {}, {}) - s = StringIO.StringIO(pdf) - s.name = node - return s + pdf,pdftype = srv.create(cr, uid, [node.context.context['res_id']], {}, {}) + return pdf document_directory_content() diff --git a/addons/document_ftp/ftpserver/abstracted_fs.py b/addons/document_ftp/ftpserver/abstracted_fs.py index 34a62e8683a..82a860b95d1 100644 --- a/addons/document_ftp/ftpserver/abstracted_fs.py +++ b/addons/document_ftp/ftpserver/abstracted_fs.py @@ -328,10 +328,10 @@ class abstracted_fs: cr = pooler.get_db(node.context.dbname).cursor() pool = pooler.get_pool(node.context.dbname) res = getattr(pool.get('document.directory.content'), 'process_read')(cr, uid, node) - cr.close() - s = StringIO.StringIO(res) - s.name = node - return s + res = StringIO.StringIO(res) + res.name = node + cr.close() + return res else: raise OSError(1, 'Operation not permited.') diff --git a/addons/document_ics/document_ics.py b/addons/document_ics/document_ics.py index 1fb8518050b..440d043d880 100644 --- a/addons/document_ics/document_ics.py +++ b/addons/document_ics/document_ics.py @@ -126,7 +126,7 @@ class document_directory_content(osv.osv): def process_write(self, cr, uid, node, data, context=None): if node.extension != '.ics': - return super(document_directory_content).process_write(cr, uid, node, data, context) + return super(document_directory_content, self).process_write(cr, uid, node, data, context) import vobject parsedCal = vobject.readOne(data) fields = {} @@ -245,7 +245,7 @@ class document_directory_content(osv.osv): return datetime.datetime.strptime(idate, '%Y-%m-%d %H:%M:%S') if node.extension != '.ics': - return super(document_directory_content).process_read(cr, uid, node, context) + return super(document_directory_content, self).process_read(cr, uid, node, context) import vobject ctx = (context or {}) @@ -253,7 +253,7 @@ class document_directory_content(osv.osv): ctx.update(node.dctx) content = self.browse(cr, uid, node.cnt_id, ctx) if not content.object_id: - return super(document_directory_content).process_read(cr, uid, node, context) + return super(document_directory_content, self).process_read(cr, uid, node, context) obj_class = self.pool.get(content.object_id.model) if content.ics_domain: @@ -294,8 +294,7 @@ class document_directory_content(osv.osv): else: value = ics_datetime(value) event.add(field.name).value = value - s= cal.serialize() - cr.commit() + s = cal.serialize() return s document_directory_content()