diff --git a/src/pfwbged/folder/folder.py b/src/pfwbged/folder/folder.py index 4f6341f..1bb21b9 100644 --- a/src/pfwbged/folder/folder.py +++ b/src/pfwbged/folder/folder.py @@ -1,10 +1,15 @@ from zope.interface import implements from five import grok -from zope import schema +from zope import schema, component from plone.directives import form +from zc.relation.interfaces import ICatalog +from zope.app.intid.interfaces import IIntIds + from plone.dexterity.content import Container +from Acquisition import aq_parent + from plone.supermodel import model from . import _ @@ -16,3 +21,25 @@ class IFolder(model.Schema): class Folder(Container): """ """ implements(IFolder) + +from plone.dexterity.interfaces import IDexterityContainer +grok.templatedir('templates') +grok.context(IDexterityContainer) + +from plone.app.layout.viewlets.interfaces import IBelowContentBody + +class FolderViewlet(grok.Viewlet): + grok.template('foldersviewlet') + grok.viewletmanager(IBelowContentBody) + grok.order(15) + + def documents(self): + intids = component.getUtility(IIntIds) + catalog = component.getUtility(ICatalog) + intid = intids.getId(self.context) + documents = [] + for item in catalog.findRelations({'to_id': intid}): + if item.isBroken(): + continue + documents.append(aq_parent(item.from_object)) + return documents diff --git a/src/pfwbged/folder/templates/foldersviewlet.pt b/src/pfwbged/folder/templates/foldersviewlet.pt new file mode 100644 index 0000000..50478c3 --- /dev/null +++ b/src/pfwbged/folder/templates/foldersviewlet.pt @@ -0,0 +1,51 @@ + +
+ Documents rangés dans ce dossier +
+ + + + + + + + + + + + + + + + + + + + + + + +
IntituléAuteurDernière modification
S + + Bob Dobalina + + + + + August 16, 2001 at 23:35:59 + + +
+
+
+