Esempio n. 1
0
    def all_events(self):
        from Products.CMFCore import utils as cmfutils
        from Products.CMFCore.utils import getToolByName
        from p4a.calendar import interfaces

        catalog = cmfutils.getToolByName(self.context, 'portal_catalog')
        path = '/'.join(self.context.getPhysicalPath())

        if self.context.portal_type != 'MemberSpace':
            event_brains = catalog(portal_type='Event',
                                   path={
                                       'query': path,
                                       'depth': 1
                                   })
        else:
            memberid = self.context.getId()
            portal = self.context.portal_url.getPortalObject()
            if portal <> None:
                path = "/".join(portal.getPhysicalPath())

            event_brains = catalog(portal_type='Event',
                                   path={
                                       'query': path,
                                       'depth': 1
                                   },
                                   modifiers=memberid)

        return (interfaces.IEvent(x) for x in event_brains)
Esempio n. 2
0
    def gather_events(self, start=None, stop=None, **kw):
        kw = _make_zcatalog_query(start, stop, kw)

        # This sad hack allows us to overwrite whatever restriction
        # the topic makes to the date.  Providing the 'start' and
        # 'date' arguments to the 'queryCatalog' method would
        # otherwise just overwrite our own date criteria.
        # See http://plone4artists.org/products/plone4artistscalendar/issues/35
        catalog = cmfutils.getToolByName(self.context, 'portal_catalog')

        def my_catalog(request, **kwargs):
            kwargs.update(kw)
            return catalog(request, **kwargs)

        self.context.portal_catalog = my_catalog
        self.context.portal_catalog.searchResults = my_catalog
        value = (interfaces.IEvent(x) for x in self.context.queryCatalog())
        del self.context.portal_catalog
        return value
Esempio n. 3
0
    def gather_events(self, start=None, stop=None, **kw):
        from Products.CMFCore import utils as cmfutils
        from Products.CMFCore.utils import getToolByName
        from p4a.calendar import interfaces
        from p4a.plonecalendar.eventprovider import _make_zcatalog_query

        catalog = cmfutils.getToolByName(self.context, 'portal_catalog')
        path = '/'.join(self.context.getPhysicalPath())
        kw = _make_zcatalog_query(start, stop, kw)
        if self.context.portal_type != 'MemberSpace':
            event_brains = catalog(portal_type='Event', path=path, **kw)
        else:
            memberid = self.context.getId()
            portal = self.context.portal_url.getPortalObject()
            if portal <> None:
                path = "/".join(portal.getPhysicalPath())

            event_brains = catalog(portal_type='Event',
                                   path=path,
                                   modifiers=memberid,
                                   **kw)

        return (interfaces.IEvent(x) for x in event_brains)
Esempio n. 4
0
 def all_events(self):
     #query = self.context.buildQuery()
     event_brains = self.context.queryCatalog()
     return (interfaces.IEvent(x) for x in event_brains)
Esempio n. 5
0
 def all_events(self):
     catalog = cmfutils.getToolByName(self.context, 'portal_catalog')
     path = '/'.join(self.context.getPhysicalPath())
     event_brains = catalog(portal_type='Event', path=path)
     return (interfaces.IEvent(x) for x in event_brains)
Esempio n. 6
0
 def gather_events(self, start=None, stop=None, **kw):
     catalog = cmfutils.getToolByName(self.context, 'portal_catalog')
     path = '/'.join(self.context.getPhysicalPath())
     kw = _make_zcatalog_query(start, stop, kw)
     event_brains = catalog(portal_type='Event', path=path, **kw)
     return (interfaces.IEvent(x) for x in event_brains)