[Erp5-report] r8976 - in /erp5/trunk/utils/ooodoc_server: mimemapper.py serw.py worker.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Aug 1 18:36:57 CEST 2006


Author: bartek
Date: Tue Aug  1 18:36:53 2006
New Revision: 8976

URL: http://svn.erp5.org?rev=8976&view=rev
Log:
Return mimetype together with a generated file; fixed some bugs.

Modified:
    erp5/trunk/utils/ooodoc_server/mimemapper.py
    erp5/trunk/utils/ooodoc_server/serw.py
    erp5/trunk/utils/ooodoc_server/worker.py

Modified: erp5/trunk/utils/ooodoc_server/mimemapper.py
URL: http://svn.erp5.org/erp5/trunk/utils/ooodoc_server/mimemapper.py?rev=8976&r1=8975&r2=8976&view=diff
==============================================================================
--- erp5/trunk/utils/ooodoc_server/mimemapper.py (original)
+++ erp5/trunk/utils/ooodoc_server/mimemapper.py Tue Aug  1 18:36:53 2006
@@ -60,27 +60,27 @@
 
   property_map={
     'pdf':{
-      'mime_type':None,
+      'mime_type':'application/pdf',
       'outprops':(PropertyValue("FilterName",0,"writer_pdf_Export",0),PropertyValue("Overwrite",0,True,0)),
       'label':'Pdf',
     },
     'calc.pdf':{
-      'mime_type':None,
+      'mime_type':'application/pdf',
       'outprops':(PropertyValue("FilterName",0,"calc_pdf_Export",0),PropertyValue("Overwrite",0,True,0)),
       'label':'Pdf',
     },
     'impr.pdf':{
-      'mime_type':None,
+      'mime_type':'application/pdf',
       'outprops':(PropertyValue("FilterName",0,"impress_pdf_Export",0),PropertyValue("Overwrite",0,True,0)),
       'label':'Pdf',
     },
     'html-writer':{
-      'mime_type':None,
+      'mime_type':'text/html',
       'outprops':(PropertyValue("FilterName",0,"HTML (StarWriter)",0),PropertyValue("Overwrite",0,True,0)),
       'label':'HTML document',
     },
     'html-calc':{
-      'mime_type':None,
+      'mime_type':'text/html',
       'outprops':(PropertyValue("FilterName",0,"HTML (StarCalc)",0),PropertyValue("Overwrite",0,True,0)),
       'label':'HTML document',
     },
@@ -100,7 +100,7 @@
       'label':'MS Excel spreadsheet',
     },
     'csv':{
-      'mime_type':None,
+      'mime_type':'text/csv',
       'outprops':(PropertyValue("FilterName",0,"Text - txt - csv (StarCalc)",0),PropertyValue("Overwrite",0,True,0)),
       'label':'comma separated',
     },
@@ -110,11 +110,11 @@
       'label':'Powerpoint presentation',
     },
     'jpg':{
-      'mime_type':None,
+      'mime_type':'image/jpg',
       'outprops':(PropertyValue("FilterName",0,"draw_jpg_Export",0),PropertyValue("Overwrite",0,True,0)),
     },
     'draw.pdf':{
-      'mime_type':None,
+      'mime_type':'application/pdf',
       'outprops':(PropertyValue("FilterName",0,"draw_pdf_Export",0),PropertyValue("Overwrite",0,True,0)),
     },
   }
@@ -143,6 +143,13 @@
   def getAllowedTo(self,mimetype):
     return [(type,self.property_map[type].get('label',type)) for type in self.types_map[mimetype]['allowed_to']]
 
+  def getMimeFor(self,format):
+    try:
+      return self.property_map[format]['mime_type']
+    except KeyError:
+      raise Exception('no mime type for format '+format)
+
+
 mimemapper=MimeMapper()
 
 if __name__=='__main__':

Modified: erp5/trunk/utils/ooodoc_server/serw.py
URL: http://svn.erp5.org/erp5/trunk/utils/ooodoc_server/serw.py?rev=8976&r1=8975&r2=8976&view=diff
==============================================================================
--- erp5/trunk/utils/ooodoc_server/serw.py (original)
+++ erp5/trunk/utils/ooodoc_server/serw.py Tue Aug  1 18:36:53 2006
@@ -89,8 +89,8 @@
   def generate(self,w,fname,format,**kwargs):
     '''generate file in a desired format (provided we already
     have an OOo file)'''
-    newfname=w.run_generate(fname,format)
-    return None,newfname
+    meta,newfname=w.run_generate(fname,format)
+    return meta,newfname
 
   def getAllowedTargets(self,mimetype):
     '''get list of allowed target formats from worker

Modified: erp5/trunk/utils/ooodoc_server/worker.py
URL: http://svn.erp5.org/erp5/trunk/utils/ooodoc_server/worker.py?rev=8976&r1=8975&r2=8976&view=diff
==============================================================================
--- erp5/trunk/utils/ooodoc_server/worker.py (original)
+++ erp5/trunk/utils/ooodoc_server/worker.py Tue Aug  1 18:36:53 2006
@@ -98,10 +98,11 @@
     return self.metadata,fileUrlToSystemPath(self.destUrl)
 
   def generate(self,fname,format):
-    '''generate file in a requested format, return file url'''
+    '''generate file in a requested format, return file url
+    and a respective mime type'''
     self._loadFile(fname)
     self._generate(format)
-    return fileUrlToSystemPath(self.destUrl)
+    return mimemapper.getMimeFor(format),fileUrlToSystemPath(self.destUrl)
 
   def setmetadata(self,fname,meta):
     '''set metadata on OOo file (fname does not change)'''
@@ -180,8 +181,6 @@
 
   def _generate(self,format):
     '''
-    pdf generation does not work right now because there is a problem
-    in OpenOffice 2.0.2
     '''
     self._checkMimeType(1)
     outProps=mimemapper.generable[self.metadata['MIMEType']].get(format,None)




More information about the Erp5-report mailing list