custom folder view (#3759)

This commit is contained in:
Frédéric Péters 2013-11-27 16:40:31 +01:00
parent ca293c356e
commit 130f701d65
3 changed files with 44 additions and 5 deletions

View File

@ -29,4 +29,13 @@
image="pfwbgedfolder_icon.png"
/>
<browser:page
name="view"
for="pfwbged.folder.IFolder"
layer="plone.app.z3cform.interfaces.IPloneFormLayer"
class="pfwbged.folder.folder.FolderView"
template="templates/folder_view.pt"
permission="zope2.View"
/>
</configure>

View File

@ -17,6 +17,8 @@ import plone.app.contenttypes.interfaces
from plone.dexterity.interfaces import IDexterityContainer
from plone.app.contentlisting.interfaces import IContentListingObject
from plone.dexterity.browser.view import DefaultView
from collective.z3cform.rolefield.field import LocalRolesToPrincipals
from collective.dms.basecontent.widget import AjaxChosenMultiFieldWidget
from plone.autoform import directives as form
@ -58,11 +60,7 @@ grok.templatedir('templates')
grok.context(IDexterityContainer)
class FolderViewlet(grok.Viewlet):
grok.context(plone.app.contenttypes.interfaces.IFolder)
grok.template('foldersviewlet')
grok.viewletmanager(IBelowContentBody)
grok.order(15)
class ClassifiedItems:
@property
def table(self):
@ -99,3 +97,15 @@ class FolderViewlet(grok.Viewlet):
documents.append(IContentListingObject(document))
return documents
class FolderViewlet(grok.Viewlet, ClassifiedItems):
grok.context(plone.app.contenttypes.interfaces.IFolder)
grok.template('foldersviewlet')
grok.viewletmanager(IBelowContentBody)
grok.order(15)
class FolderView(DefaultView, ClassifiedItems):
pass

View File

@ -0,0 +1,20 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal"
xmlns:i18n="http://xml.zope.org/namespaces/i18n"
lang="en"
metal:use-macro="context/main_template/macros/master"
i18n:domain="plone.app.dexterity">
<body>
<metal:main fill-slot="main">
<h1 class="documentFirstHeading" tal:content="context/Title" />
<div tal:replace="structure provider:plone.belowcontenttitle" />
<div tal:replace="structure view/table/render"/>
</metal:main>
</body>
</html>