diff --git a/product/ERP5/Document/TextDocument.py b/product/ERP5/Document/TextDocument.py index a24f85e854958eeb541053ea925e5456bc3c4967..d88151b87bdcff35755c08d9daf5cb89abdb26e4 100644 --- a/product/ERP5/Document/TextDocument.py +++ b/product/ERP5/Document/TextDocument.py @@ -28,6 +28,7 @@ from AccessControl import ClassSecurityInfo +from Products.CMFCore.WorkflowCore import WorkflowMethod from Products.CMFCore.utils import getToolByName from Products.CMFCore.utils import _setCacheHeaders from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface @@ -87,6 +88,24 @@ class TextDocument(Document, TextContent): security.declareProtected(Permissions.View, 'manage_FTPget') manage_FTPget = TextContent.manage_FTPget + # File handling + security.declarePrivate( '_edit' ) + def _edit(self, **kw): + """\ + This is used to edit files which contain HTML content. + """ + if kw.has_key('file'): + file = kw.get('file') + text_content = file.read() + headers, body, format = self.handleText(text=text_content) + kw.setdefault('text_format', format) + kw.setdefault('text_content', text_content) + del kw['file'] + Document._edit(self, **kw) + + security.declareProtected( Permissions.ModifyPortalContent, 'edit' ) + edit = WorkflowMethod( _edit ) + # Default Display security.declareProtected(Permissions.View, 'index_html') def index_html(self, REQUEST, RESPONSE, format=None, **kw):