From 772a708df8768b4e71329fc7ee1858d3f7e181a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20G=C3=B3rny?= <bartek@gorny.edu.pl> Date: Tue, 21 Nov 2006 14:21:02 +0000 Subject: [PATCH] rewrote getting properties from content git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@11401 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/ERP5OOo/Document/OOoDocument.py | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/product/ERP5OOo/Document/OOoDocument.py b/product/ERP5OOo/Document/OOoDocument.py index f3ee39a6d1..32c7f7b87b 100644 --- a/product/ERP5OOo/Document/OOoDocument.py +++ b/product/ERP5OOo/Document/OOoDocument.py @@ -106,8 +106,6 @@ class OOoDocument(DMSFile, CachingMixin): , PropertySheet.OOoDocument ) - # regexp for finding attrs in content - rx_atr=re.compile('([\w]+)###([\w/]+)') # regexps for stripping xml from docs rx_strip=re.compile('<[^>]*?>',re.DOTALL|re.MULTILINE) rx_compr=re.compile('\s+') @@ -246,24 +244,14 @@ class OOoDocument(DMSFile, CachingMixin): return s security.declareProtected(Permissions.ModifyPortalContent,'setPropertyListFromContent') - def setPropertyListFromContent(self,data): - cs=cStringIO.StringIO() - cs.write(self._unpackData(data)) - try: - z=zipfile.ZipFile(cs) - except zipfile.BadZipfile: - cs.close() - return - s=z.read('content.xml') - cs.close() - z.close() - atrs=dict(self.rx_atr.findall(s)) + def setPropertyListFromContent(self): + '''docstring''' + atrs=self.Document_getPropertyListFromContent(self,self.getTextContent(),self.getPortalType()) doctype=atrs.get('doctype','None') - if doctype!=self.getPortalType(): + if doctype!='None' and doctype!=self.getPortalType(): raise Exception('portal type mismatch - content gave %s, I have %s' % (doctype,self.getPortalType())) for a in atrs: - if a not in ('author','doctype'): - self.setProperty(a,atrs[a]) + self.setProperty(a,atrs[a]) security.declarePrivate('_setMetaData') def _setMetaData(self,meta): @@ -465,7 +453,6 @@ class OOoDocument(DMSFile, CachingMixin): # BG copied from File in case index_html = CMFFile.index_html - PUT = CMFFile.PUT security.declareProtected('FTP access', 'manage_FTPget', 'manage_FTPstat', 'manage_FTPlist') manage_FTPget = CMFFile.manage_FTPget manage_FTPlist = CMFFile.manage_FTPlist -- 2.30.9