make more macro templates configurable by controller settings

git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@4060 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2010-11-05 09:26:58 +00:00
parent e8404ee38b
commit 16f91fc165
5 changed files with 25 additions and 11 deletions

View file

@ -1,5 +1,5 @@
#
# Copyright (c) 2007 Helmut Merz helmutm@cy55.de
# Copyright (c) 2010 Helmut Merz helmutm@cy55.de
#
# 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
@ -109,7 +109,6 @@ class MediaAssetEditForm(EditForm):
class ResourceView(BaseView):
#template = ViewPageTemplateFile('resource_macros.pt')
template = resource_macros
@Lazy

View file

@ -31,7 +31,7 @@ from cybertools.stateful.interfaces import IStateful, IStatesDefinition
from loops.browser.common import BaseView
from loops.browser.concept import ConceptView
from loops.expert.query import And, Or, State, Type, getObjects
from loops.search.browser import template as search_template
from loops.search.browser import search_template
from loops.util import _

View file

@ -1,5 +1,5 @@
#
# Copyright (c) 2009 Helmut Merz helmutm@cy55.de
# Copyright (c) 2010 Helmut Merz helmutm@cy55.de
#
# 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
@ -41,18 +41,20 @@ from loops import util
from loops.util import _
template = ViewPageTemplateFile('search.pt')
search_template = ViewPageTemplateFile('search.pt')
class Search(BaseView):
maxRowNum = 0
template = template
@Lazy
def search_macros(self):
return self.controller.getTemplateMacros('search', search_template)
@Lazy
def macro(self):
return template.macros['search']
return self.search_macros['search']
@property
def rowNum(self):
@ -159,9 +161,13 @@ class Search(BaseView):
class SearchResults(NodeView):
""" Provides results as inner HTML """
@Lazy
def search_macros(self):
return self.controller.getTemplateMacros('search', search_template)
@Lazy
def macro(self):
return template.macros['search_results']
return self.search_macros['search_results']
def __call__(self):
return innerHtml(self)

View file

@ -1,6 +1,6 @@
<metal:search define-macro="search">
<div id="search"
tal:define="macros item/template/macros;
tal:define="macros item/search_macros;
idPrefix string:${view/itemNum}.search;
formId string:$idPrefix.form;
resultsId string:$idPrefix.results">

View file

@ -28,6 +28,7 @@ from zope.app.security.interfaces import IUnauthenticatedPrincipal
from zope.cachedescriptors.property import Lazy
from loops.browser.common import BaseView
from loops.resource import Resource
from loops.versioning.interfaces import IVersionable
from loops.versioning.util import getVersion
@ -39,13 +40,21 @@ class ListVersions(BaseView):
template = version_macros
@Lazy
def version_macros(self):
return self.controller.getTemplateMacros('versions', version_macros)
@Lazy
def macro(self):
return self.template.macros['versions']
return self.version_macros['versions']
def versions(self):
versionable = IVersionable(self.context)
versions = versionable.versions
for v in sorted(versions):
if isinstance(versions[v], Resource):
from loops.browser.resource import ResourceView
yield ResourceView(versions[v], self.request)
else:
yield BaseView(versions[v], self.request)