--- /dev/null
+# -*- coding: utf-8 -*-
+#######################################################################################
+# Plinn - http://plinn.org #
+# Copyright © 2005-2009 Benoît PIN <benoit.pin@ensmp.fr> #
+# #
+# 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)