This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
pfwbged.folder/src/pfwbged/folder/link.py

48 lines
1.1 KiB
Python

from zope.interface import implements
from five import grok
from zope import schema
from plone.directives import form
from plone.dexterity.content import Item
from plone.supermodel import model
from plone.formwidget.contenttree import ObjPathSourceBinder
from z3c.relationfield.schema import RelationChoice
from . import _
class ILink(model.Schema):
""" """
folder = RelationChoice(title=_(u'Folder'), required=True,
source=ObjPathSourceBinder())
class Link(Item):
""" """
implements(ILink)
from collective.dms.basecontent.dmsdocument import IDmsDocument
grok.templatedir('templates')
grok.context(IDmsDocument)
from collective.dms.basecontent.browser.viewlets import BaseViewlet, DmsBelowContentViewletManager
class LinkViewlet(grok.Viewlet):
grok.template('linksviewlet')
grok.viewletmanager(DmsBelowContentViewletManager)
grok.order(15)
portal_type = 'pfwbgedlink'
label = _(u"Filed in Folders")
def links(self):
links = []
for child in self.context.values():
if child.portal_type != 'pfwbgedlink':
continue
links.append(child)
return links