[Erp5-report] r14446 - /erp5/trunk/utils/oood/worker.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu May 10 16:21:28 CEST 2007
Author: bartek
Date: Thu May 10 16:21:28 2007
New Revision: 14446
URL: http://svn.erp5.org?rev=14446&view=rev
Log:
allow for passing encoding for encoded text files (iso, utf etc.)
Modified:
erp5/trunk/utils/oood/worker.py
Modified: erp5/trunk/utils/oood/worker.py
URL: http://svn.erp5.org/erp5/trunk/utils/oood/worker.py?rev=14446&r1=14445&r2=14446&view=diff
==============================================================================
--- erp5/trunk/utils/oood/worker.py (original)
+++ erp5/trunk/utils/oood/worker.py Thu May 10 16:21:28 2007
@@ -144,7 +144,7 @@
"""
convertion to OOo, produces metadata and OOo file url
"""
- self._loadFile(kw['filename'])
+ self._loadFile(kw['filename'], kw)
self._convert()
# if the doc doesn't have title or reference, we use filename for them
# only on ERP5 object (we don't set them on file)
@@ -167,7 +167,7 @@
generate file in a requested format, return file url
and a respective mime type
"""
- self._loadFile(kw['filename'])
+ self._loadFile(kw['filename'], kw)
self._generate(kw['extension'])
mime = mimemapper.getMimeFor(kw['extension'])
kw['mime'] = mime[0] # it is a tuple; can be multiple but we don't know which exactly was requested
@@ -205,7 +205,7 @@
"""
print the document directly on local printer, without any conversion
"""
- self._loadFile(kw['filename'])
+ self._loadFile(kw['filename'], kw)
self._printDocument()
def _generateFuncs(self):
@@ -259,11 +259,16 @@
for atr in ('fileUrl','doc','dinfo','metadata','destUrl'):
setattr(self,atr,None)
- def _loadFile(self,fname):
+ def _loadFile(self,fname, kw={}):
Log.info('[worker] trying to load %s' % fname)
self.fileUrl = absolutize(self.cwd,systemPathToFileUrl(fname))
- try:
- self.doc = self.desktop.loadComponentFromURL(self.fileUrl,'_blank',0,self.inProps)
+ inProps = self.inProps
+ if kw.has_key('encoding'):
+ prop_name = PropertyValue("FilterName", 0, "Text (encoded)", 0)
+ prop_encoding = PropertyValue("FilterOptions", 0, kw['encoding'], 0)
+ inProps = (self.inProps[0], prop_name, prop_encoding)
+ try:
+ self.doc = self.desktop.loadComponentFromURL(self.fileUrl, '_blank', 0, inProps)
except IllegalArgumentException:
Log.error('[worker] ' + fname + ' could not be loaded into OpenOffice')
raise lib.NotLoaded(fname + ' could not be loaded into OpenOffice')
More information about the Erp5-report
mailing list