diff --git a/browser/common.py b/browser/common.py index 1cab9a0..3b787c1 100644 --- a/browser/common.py +++ b/browser/common.py @@ -39,7 +39,7 @@ from zope.formlib.namedtemplate import NamedTemplate from zope.interface import Interface, implements from zope.proxy import removeAllProxies from zope.publisher.browser import applySkin -from zope.publisher.interfaces.browser import IBrowserSkinType +from zope.publisher.interfaces.browser import IBrowserSkinType, IBrowserView from zope import schema from zope.schema.vocabulary import SimpleTerm from zope.security import canAccess, checkPermission @@ -139,6 +139,9 @@ class BaseView(GenericView, I18NView): self.checkLanguage() return result + def registerPortlets(self): + pass + @Lazy def target(self): # allow for having a separate object the view acts upon @@ -289,6 +292,8 @@ class BaseView(GenericView, I18NView): request = self.request for o in objs: view = component.queryMultiAdapter((o, request), name='index.html') + #if view is None: + # view = component.queryMultiAdapter((o, request), IBrowserView) if view is None: view = BaseView(o, request) yield view diff --git a/browser/configure.zcml b/browser/configure.zcml index 729893d..619d031 100644 --- a/browser/configure.zcml +++ b/browser/configure.zcml @@ -208,6 +208,14 @@ menu="zmi_views" title="View" /> + + + + + + + diff --git a/locales/de/LC_MESSAGES/loops.mo b/locales/de/LC_MESSAGES/loops.mo index 02f43a0..2125c46 100644 Binary files a/locales/de/LC_MESSAGES/loops.mo and b/locales/de/LC_MESSAGES/loops.mo differ diff --git a/locales/de/LC_MESSAGES/loops.po b/locales/de/LC_MESSAGES/loops.po index 69b1e8b..ffc763d 100644 --- a/locales/de/LC_MESSAGES/loops.po +++ b/locales/de/LC_MESSAGES/loops.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: $Id$\n" "POT-Creation-Date: 2007-05-22 12:00 CET\n" -"PO-Revision-Date: 2008-08-22 12:00 CET\n" +"PO-Revision-Date: 2008-10-15 12:00 CET\n" "Last-Translator: Helmut Merz \n" "Language-Team: loops developers \n" "MIME-Version: 1.0\n" @@ -374,3 +374,6 @@ msgstr "Ende" msgid "Create loops Note" msgstr "loops-Notiz anlegen" +msgid "State information for $definition: $title" +msgstr "Status ($definition): $title" + diff --git a/organize/README.txt b/organize/README.txt index 5bc74ff..a0cd7fc 100644 --- a/organize/README.txt +++ b/organize/README.txt @@ -348,10 +348,15 @@ Events listing ... ) >>> from loops.organize.browser.event import Events - >>> listing = Events(johnC, TestRequest()) + >>> events = addAndConfigureObject(concepts, Concept, 'events', title=u'Events', + ... conceptType=concepts['query']) + >>> listing = Events(events, TestRequest()) >>> listing.getActions('portlet') [] + >>> from loops.config.base import QueryOptions + >>> component.provideAdapter(QueryOptions) + >>> list(listing.events()) [] diff --git a/organize/browser/event.py b/organize/browser/event.py index 58aa961..267eec2 100644 --- a/organize/browser/event.py +++ b/organize/browser/event.py @@ -22,11 +22,12 @@ Definition of view classes and other browser related stuff for tasks. $Id$ """ -from datetime import datetime +from datetime import datetime, timedelta from zope import interface, component from zope.app.pagetemplate import ViewPageTemplateFile from zope.cachedescriptors.property import Lazy +from cybertools.meta.interfaces import IOptions from loops.browser.action import DialogAction from loops.browser.concept import ConceptView from loops.common import adapted @@ -62,10 +63,13 @@ class Events(ConceptView): tEvent = cm['event'] hasType = cm.getTypePredicate() now = datetime.today() + delta = int(self.request.get('delta', + IOptions(adapted(self.context))('delta', [0])[0])) sort = lambda x: x.adapted.start or now relViews = (self.childViewFactory(r, self.request, contextIsSecond=True) for r in tEvent.getChildRelations([hasType], sort=None)) return sorted((rv for rv in relViews - if not rv.adapted.end or rv.adapted.end >= now), + if not rv.adapted.end or + rv.adapted.end >= now - timedelta(delta)), key=sort) diff --git a/organize/stateful/browser.py b/organize/stateful/browser.py index a2dd73a..a75d9ab 100644 --- a/organize/stateful/browser.py +++ b/organize/stateful/browser.py @@ -51,8 +51,9 @@ class StateAction(Action): @Lazy def description(self): - return (u'State information for %s: %s' % - (self.definition, self.stateObject.title)) + return _(u'State information for $definition: $title', + mapping=dict(definition=self.definition, + title=self.stateObject.title)) @Lazy def stateObject(self): diff --git a/organize/stateful/view_macros.pt b/organize/stateful/view_macros.pt index 41aa2c7..edeade9 100644 --- a/organize/stateful/view_macros.pt +++ b/organize/stateful/view_macros.pt @@ -21,21 +21,25 @@ tal:content="deftype" i18n:translate="" /> - - - -   - + + +   + diff --git a/search/search.pt b/search/search.pt index 670f19e..eecffe8 100644 --- a/search/search.pt +++ b/search/search.pt @@ -266,7 +266,7 @@ url="listConceptsForComboBox.js?searchType=" >