X-Git-Url: https://scm.cri.ensmp.fr/git/PlinnDocument.git/blobdiff_plain/57a4d385a1d2806d5877f53b1fdb0bd94efa2dbb..3b91dbcbb0b99d3d796a01813018db0e540bd0ec:/Products/PlinnDocument/HistoryAdapters.py diff --git a/Products/PlinnDocument/HistoryAdapters.py b/Products/PlinnDocument/HistoryAdapters.py new file mode 100755 index 0000000..add0e8b --- /dev/null +++ b/Products/PlinnDocument/HistoryAdapters.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +####################################################################################### +# Plinn - http://plinn.org # +# Copyright © 2005-2009 Benoît PIN # +# # +# This program is free software; you can redistribute it and/or # +# modify it under the terms of the GNU General Public License # +# as published by the Free Software Foundation; either version 2 # +# of the License, or (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program; if not, write to the Free Software # +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # +####################################################################################### +""" +Adapter to plug PlinnDocument to historycal interface. + +$Id: HistoryAdapters.py 647 2009-06-30 12:55:44Z pin $ +$URL: http://svn.cri.ensmp.fr/svn/PlinnDocument/branches/CMF-2.1/HistoryAdapters.py $ +""" + +from Globals import InitializeClass +from AccessControl import ClassSecurityInfo +from Products.CMFCore.permissions import ModifyPortalContent +from Products.Plinn.HistoryAdapters import DocumentHistory + +class PlinnDocumentHistory(DocumentHistory) : + + security = ClassSecurityInfo() + + security.declareProtected(ModifyPortalContent, 'restore') + def restore(self, key): + rev = self.getHistoricalRevisionByKey(key)[0] + self._content.edit(rev.Format(), rev.XMLBody()) + +InitializeClass(PlinnDocumentHistory)