From c0fb534d0bcccd5909462ea75e1e9e707b5f5da2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Calonne?= <aurel@nexedi.com> Date: Mon, 30 Oct 2006 15:24:35 +0000 Subject: [PATCH] use pt_render with format argument to convert OOo document in pdf and make asPdf method private git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@11008 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/ERP5OOo/OOoTemplate.py | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/product/ERP5OOo/OOoTemplate.py b/product/ERP5OOo/OOoTemplate.py index 7214cfc36b..ebcf794c6d 100644 --- a/product/ERP5OOo/OOoTemplate.py +++ b/product/ERP5OOo/OOoTemplate.py @@ -450,6 +450,12 @@ xmlns:config="http://openoffice.org/2001/config" office:version="1.0"> # Produce final result ooo = ooo_builder.render(self.title or self.id) + # Convert if necessary + format = extra_context.get("format", None) + if format is None: + if format == "pdf": + return self._asPdf(ooo, request) + # Do not send a RESPONSE if in batch_mode if request and not batch_mode: request.RESPONSE.setHeader('Content-Type','%s;; charset=utf-8' % self.content_type) @@ -471,20 +477,10 @@ xmlns:config="http://openoffice.org/2001/config" office:version="1.0"> 'title': 'This template has an error'},) return icons - def asPdf(self, REQUEST=None, *args, **kw): + def _asPdf(self, ooo, REQUEST=None): """ Return OOo report as pdf """ - # create argument dict for pt_render - extra_context = {} - security=getSecurityManager() - extra_context['user'] = security.getUser() - if not kw.has_key('args'): - kw['args'] = args - extra_context['options'] = kw - extra_context['batch_mode'] = 1 - # first get ooo data - ooo = self.pt_render(extra_context=extra_context) # now create a temp OOoDocument to convert data to pdf from Products.ERP5Type.Document import newTempOOoDocument tmp_ooo = newTempOOoDocument(self, self.title_or_id()) -- 2.30.9