consider additional MIME types for office files

git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3963 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2010-08-22 08:57:39 +00:00
parent 9444a7c923
commit 316437773f
2 changed files with 6 additions and 2 deletions

View file

@ -23,6 +23,7 @@ $Id$
""" """
from cgi import parse_qs, parse_qsl from cgi import parse_qs, parse_qsl
#import mimetypes
import re import re
from urllib import urlencode from urllib import urlencode
from zope import component from zope import component
@ -352,9 +353,10 @@ class BaseView(GenericView, I18NView):
ct = getattr(self.context, 'contentType', None) ct = getattr(self.context, 'contentType', None)
if ct: if ct:
ext = mimetypes.extensions.get(ct) ext = mimetypes.extensions.get(ct)
#ext = mimetypes.guess_extension(ct)
if ext: if ext:
#return '%s (%s)' % (t, ext.upper()) #return '%s (%s)' % (t, ext.upper())
return ext.upper() return ext.upper() #.lstrip('.')
return self.typeTitle return self.typeTitle
@Lazy @Lazy

View file

@ -56,6 +56,8 @@ class OfficeFile(ExternalFileAdapter):
propertyMap = {u'Revision:': 'version'} propertyMap = {u'Revision:': 'version'}
propFileName = 'docProps/custom.xml' propFileName = 'docProps/custom.xml'
fileExtensions = ('.docm', '.docx', 'dotm', 'dotx',
'.xlsm', '.xlsx', '.xltm', '.xltx')
@Lazy @Lazy
def logger(self): def logger(self):
@ -64,7 +66,7 @@ class OfficeFile(ExternalFileAdapter):
def setExternalAddress(self, addr): def setExternalAddress(self, addr):
super(OfficeFile, self).setExternalAddress(addr) super(OfficeFile, self).setExternalAddress(addr)
root, ext = os.path.splitext(self.externalAddress) root, ext = os.path.splitext(self.externalAddress)
if ext.lower() in ('.docx', '.xlsm'): if ext.lower() in self.fileExtensions:
self.processDocument() self.processDocument()
externalAddress = property(ExternalFileAdapter.getExternalAddress, externalAddress = property(ExternalFileAdapter.getExternalAddress,
setExternalAddress) setExternalAddress)