[Erp5-report] r41633 hugo.maia - /erp5/trunk/utils/cloudooo/cloudooo/granulate/oogranulate.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Dec 21 23:48:06 CET 2010


Author: hugo.maia
Date: Tue Dec 21 23:48:06 2010
New Revision: 41633

URL: http://svn.erp5.org?rev=41633&view=rev
Log:
Tiny refactoring

Modified:
    erp5/trunk/utils/cloudooo/cloudooo/granulate/oogranulate.py

Modified: erp5/trunk/utils/cloudooo/cloudooo/granulate/oogranulate.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/granulate/oogranulate.py?rev=41633&r1=41632&r2=41633&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/granulate/oogranulate.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/granulate/oogranulate.py [utf8] Tue Dec 21 23:48:06 2010
@@ -31,6 +31,7 @@ from zipfile import ZipFile
 from StringIO import StringIO
 from lxml import etree
 from os import path
+from cloudooo.utils import logger
 from cloudooo.document import OdfDocument
 from cloudooo.interfaces.granulate import ITableGranulator, \
                                           IImageGranulator, \
@@ -80,9 +81,12 @@ class OOGranulate(object):
       template = ZipFile(template_path)
       content_xml = etree.fromstring(template.read('content.xml'))
       template.close()
-      table = self.document.parsed_content.xpath(
+      table_list = self.document.parsed_content.xpath(
                                 '//table:table[@table:name="%s"]' % id,
-                                namespaces=self.document.parsed_content.nsmap)[0]
+                                namespaces=self.document.parsed_content.nsmap)
+      if not table_list:
+        return None
+      table = table_list[0]
       # Next line do this <office:content><office:body><office:text><table:table>
       content_xml[-1][0].append(table)
       # XXX: Next line replace the <office:automatic-styles> tag. This include a
@@ -97,7 +101,8 @@ class OOGranulate(object):
       odf_document.close()
       odf_document_as_string.seek(0)
       return odf_document_as_string.read()
-    except:
+    except Exception, e:
+      logger.error(e)
       return None
 
   def getColumnItemList(self, file, table_id):



More information about the Erp5-report mailing list