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:
		
							parent
							
								
									e8404ee38b
								
							
						
					
					
						commit
						16f91fc165
					
				
					 5 changed files with 25 additions and 11 deletions
				
			
		|  | @ -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 | #  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 | #  it under the terms of the GNU General Public License as published by | ||||||
|  | @ -109,7 +109,6 @@ class MediaAssetEditForm(EditForm): | ||||||
| 
 | 
 | ||||||
| class ResourceView(BaseView): | class ResourceView(BaseView): | ||||||
| 
 | 
 | ||||||
|     #template = ViewPageTemplateFile('resource_macros.pt') |  | ||||||
|     template = resource_macros |     template = resource_macros | ||||||
| 
 | 
 | ||||||
|     @Lazy |     @Lazy | ||||||
|  |  | ||||||
|  | @ -31,7 +31,7 @@ from cybertools.stateful.interfaces import IStateful, IStatesDefinition | ||||||
| from loops.browser.common import BaseView | from loops.browser.common import BaseView | ||||||
| from loops.browser.concept import ConceptView | from loops.browser.concept import ConceptView | ||||||
| from loops.expert.query import And, Or, State, Type, getObjects | 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 _ | from loops.util import _ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -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 | #  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 | #  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 _ | from loops.util import _ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| template = ViewPageTemplateFile('search.pt') | search_template = ViewPageTemplateFile('search.pt') | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class Search(BaseView): | class Search(BaseView): | ||||||
| 
 | 
 | ||||||
|     maxRowNum = 0 |     maxRowNum = 0 | ||||||
| 
 | 
 | ||||||
|     template = template |     @Lazy | ||||||
|  |     def search_macros(self): | ||||||
|  |         return self.controller.getTemplateMacros('search', search_template) | ||||||
| 
 | 
 | ||||||
|     @Lazy |     @Lazy | ||||||
|     def macro(self): |     def macro(self): | ||||||
|         return template.macros['search'] |         return self.search_macros['search'] | ||||||
| 
 | 
 | ||||||
|     @property |     @property | ||||||
|     def rowNum(self): |     def rowNum(self): | ||||||
|  | @ -159,9 +161,13 @@ class Search(BaseView): | ||||||
| class SearchResults(NodeView): | class SearchResults(NodeView): | ||||||
|     """ Provides results as inner HTML """ |     """ Provides results as inner HTML """ | ||||||
| 
 | 
 | ||||||
|  |     @Lazy | ||||||
|  |     def search_macros(self): | ||||||
|  |         return self.controller.getTemplateMacros('search', search_template) | ||||||
|  | 
 | ||||||
|     @Lazy |     @Lazy | ||||||
|     def macro(self): |     def macro(self): | ||||||
|         return template.macros['search_results'] |         return self.search_macros['search_results'] | ||||||
| 
 | 
 | ||||||
|     def __call__(self): |     def __call__(self): | ||||||
|         return innerHtml(self) |         return innerHtml(self) | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| <metal:search define-macro="search"> | <metal:search define-macro="search"> | ||||||
|   <div id="search" |   <div id="search" | ||||||
|        tal:define="macros item/template/macros; |        tal:define="macros item/search_macros; | ||||||
|                    idPrefix string:${view/itemNum}.search; |                    idPrefix string:${view/itemNum}.search; | ||||||
|                    formId string:$idPrefix.form; |                    formId string:$idPrefix.form; | ||||||
|                    resultsId string:$idPrefix.results"> |                    resultsId string:$idPrefix.results"> | ||||||
|  |  | ||||||
|  | @ -28,6 +28,7 @@ from zope.app.security.interfaces import IUnauthenticatedPrincipal | ||||||
| from zope.cachedescriptors.property import Lazy | from zope.cachedescriptors.property import Lazy | ||||||
| 
 | 
 | ||||||
| from loops.browser.common import BaseView | from loops.browser.common import BaseView | ||||||
|  | from loops.resource import Resource | ||||||
| from loops.versioning.interfaces import IVersionable | from loops.versioning.interfaces import IVersionable | ||||||
| from loops.versioning.util import getVersion | from loops.versioning.util import getVersion | ||||||
| 
 | 
 | ||||||
|  | @ -39,13 +40,21 @@ class ListVersions(BaseView): | ||||||
| 
 | 
 | ||||||
|     template = version_macros |     template = version_macros | ||||||
| 
 | 
 | ||||||
|  |     @Lazy | ||||||
|  |     def version_macros(self): | ||||||
|  |         return self.controller.getTemplateMacros('versions', version_macros) | ||||||
|  | 
 | ||||||
|     @Lazy |     @Lazy | ||||||
|     def macro(self): |     def macro(self): | ||||||
|         return self.template.macros['versions'] |         return self.version_macros['versions'] | ||||||
| 
 | 
 | ||||||
|     def versions(self): |     def versions(self): | ||||||
|         versionable = IVersionable(self.context) |         versionable = IVersionable(self.context) | ||||||
|         versions = versionable.versions |         versions = versionable.versions | ||||||
|         for v in sorted(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) |                 yield BaseView(versions[v], self.request) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 helmutm
						helmutm