Beispiel #1
0
    def _add_filter(self, user, is_manager):
        def source(**args):
            filters = [
                {'metadata_filter': {
                    'content_types': ['person']
                }}
            ]
            objects = find_entities(
                user=user,
                sort_on='last_connection',
                filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context,
                                        '@@novaideoapi')
        select = self.selected_filter
        if not is_manager:
            select = [('metadata_filter', ['neagtion', 'states', 'keywords']),
                      ('temporal_filter', ['negation', 'created_date']),
                      'text_filter', 'other_filter']

        return get_filter(
            self, url=url,
            select=select,
            source=source)
Beispiel #2
0
    def _add_filter(self, user):
        def source(**args):
            default_content = [self.content_type]
            novaideo_index = find_catalog('novaideo')
            challenges = novaideo_index['challenges']
            query = challenges.any([self.context.__oid__])
            filter_ = {
                'metadata_filter': {
                    'content_types': default_content,
                    'states': ['active', 'published']}
            }
            objects = find_entities(
                user=user, filters=[filter_], add_query=query, **args)
            return objects

        url = self.request.resource_url(
            self.context, '@@novaideoapi',
            query={'view_content_id': self.content_id})
        select = [('metadata_filter', ['states', 'keywords']), 'geographic_filter',
                  'contribution_filter',
                  ('temporal_filter', ['negation', 'created_date']),
                  'text_filter', 'other_filter']
        return get_filter(
            self,
            url=url,
            source=source,
            select=select,
            filter_source="challenge",
            filterid=self.viewid)
Beispiel #3
0
    def _add_filter(self, user, alert_date_min):
        def source(**args):
            filters = [{
                'metadata_filter': {
                    'content_types': ['person'],
                    'states': ['active']
                },
                'temporal_filter': {
                    'negation': True,
                    'connected_date': {
                        'connected_before': None,
                        'connected_after': alert_date_min
                    }
                }
            }]
            objects = find_entities(user=user,
                                    sort_on='last_connection',
                                    filters=filters,
                                    **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(self,
                          url=url,
                          select=self.selected_filter,
                          source=source)
Beispiel #4
0
    def _add_filter(self, user, alert_date_min):
        def source(**args):
            filters = [
                {'metadata_filter': {
                    'content_types': ['person'],
                    'states': ['active']
                },
                'temporal_filter': {
                    'negation': True,
                    'connected_date': {
                        'connected_before': None,
                        'connected_after': alert_date_min
                    }
                }}
            ]
            objects = find_entities(
                user=user,
                sort_on='last_connection',
                filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context,
                                        '@@novaideoapi')
        return get_filter(
            self, url=url,
            select=self.selected_filter,
            source=source)
    def _add_filter(self, user):
        def source(**args):
            filters = [{
                'metadata_filter': {
                    'content_types': ['proposal'],
                    'states': ['submitted']
                }
            }]
            objects = find_entities(user=user,
                                    include_site=True,
                                    filters=filters,
                                    **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(self,
                          url=url,
                          source=source,
                          select=[
                              ('metadata_filter', ['keywords', 'challenges']),
                              'contribution_filter',
                              ('temporal_filter', ['negation',
                                                   'created_date']),
                              'text_filter', 'other_filter'
                          ])
Beispiel #6
0
    def _add_filter(self, user):
        def source(**args):
            objects = find_entities(user=user,
                                    intersect=self._get_content_ids(user),
                                    **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(self,
                          url=url,
                          select=self.selected_filter,
                          source=source)
Beispiel #7
0
    def _add_filter(self, user, is_manager):
        def source(**args):
            filters = [{'metadata_filter': {'content_types': ['person']}}]
            objects = find_entities(user=user,
                                    sort_on='last_connection',
                                    filters=filters,
                                    **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        select = self.selected_filter
        if not is_manager:
            select = [('metadata_filter', ['neagtion', 'states', 'tree']),
                      ('temporal_filter', ['negation', 'created_date']),
                      'text_filter', 'other_filter']

        return get_filter(self, url=url, select=select, source=source)
    def _add_filter(self, folder, user):
        def source(**args):
            objects = get_folder_content(folder, user, sort_on=None, **args)
            return objects

        url = self.request.resource_url(
            self.context,
            '@@novaideoapi',
            query={'folderid': self.params('folderid')})
        fields = get_adapted_filter(folder, user)
        if not fields:
            return None, None

        return get_filter(
            self, url=url,
            source=source,
            **fields)
Beispiel #9
0
    def _add_filter(self, user, query):
        def source(**args):
            objects = find_entities(
                interfaces=[IAmendment],
                add_query=query,
                user=user, **args)
            return objects

        url = self.request.resource_url(
            self.context, '@@novaideoapi',
            query={'view_content_id': self.content_id})
        return get_filter(
            self,
            url=url,
            source=source,
            select=self.view_filter,
            filter_source="seeproposalamendments",
            filterid=self.viewid)
Beispiel #10
0
    def _add_filter(self, user):
        def source(**args):
            filters = [
                {'metadata_filter': {
                    'content_types': ['challenge']
                }}
            ]
            objects = find_entities(
                user=user, filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(
            self,
            url=url,
            source=source,
            select=[('metadata_filter', ['negation', 'states', 'keywords']),
                    'contribution_filter', 'temporal_filter',
                    'text_filter', 'other_filter'])
    def _add_filter(self, user):
        def source(**args):
            filters = [
                {'metadata_filter': {
                    'interfaces': [ISignalableEntity],
                    'states': ['reported'],
                }}
            ]
            objects = find_entities(
                user=user,filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(
            self,
            url=url,
            source=source,
            select=[('metadata_filter', ['keywords', 'challenges']),
                    'contribution_filter', ('temporal_filter', ['negation', 'created_date']),
                    'text_filter', 'other_filter'])
Beispiel #12
0
    def _add_filter(self, user):
        def source(**args):
            filters = [{
                'metadata_filter': {
                    'interfaces': [ISignalableEntity],
                    'states': ['reported'],
                }
            }]
            objects = find_entities(user=user, filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(self,
                          url=url,
                          source=source,
                          select=[('metadata_filter', ['tree', 'challenges']),
                                  'contribution_filter',
                                  ('temporal_filter',
                                   ['negation', 'created_date']),
                                  'text_filter', 'other_filter'])
Beispiel #13
0
    def _add_filter(self, user):
        def source(**args):
            default_content = [self.content_type]
            filter_ = self._get_validated({
                'metadata_filter':
                    {'content_types': default_content,
                    'states': ['active', 'published']},
            }, user)
            objects = find_entities(user=user, filters=[filter_], **args)
            return objects

        url = self.request.resource_url(
            self.context, '@@novaideoapi',
            query={'view_content_id': self.content_id})
        return get_filter(
            self,
            url=url,
            source=source,
            select=self.view_filter,
            filter_source="home",
            filterid=self.viewid)
Beispiel #14
0
    def _add_filter(self, user):
        def source(**args):
            default_content = [self.content_type]
            filter_ = self._get_validated({
                'metadata_filter':
                    {'content_types': default_content,
                    'states': ['active', 'published']},
            }, user)
            objects = find_entities(user=user, filters=[filter_], **args)
            return objects

        url = self.request.resource_url(
            self.context, '@@novaideoapi',
            query={'view_content_id': self.content_id})
        return get_filter(
            self,
            url=url,
            source=source,
            select=self.view_filter,
            filter_source="home",
            filterid=self.viewid)
    def _add_filter(self, user):
        def source(**args):
            filters = [
                {'metadata_filter': {
                    'content_types': ['proposal'],
                    'states': ['submitted_support']
                }}
            ]
            objects = find_entities(
                user=user, include_site=True, filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(
            self,
            url=url,
            source=source,
            select=[('metadata_filter', ['keywords', 'challenges']),
                    'contribution_filter',
                    ('temporal_filter', ['negation', 'created_date']),
                    'text_filter', 'other_filter'])
Beispiel #16
0
    def _add_filter(self, user):
        def source(**args):
            filters = [
                {'metadata_filter': {
                    'negation': True,
                    'states': ['examined']
                }},
                {'metadata_filter': {
                    'content_types': ['idea'],
                    'states': ['published']
                }}
            ]
            objects = find_entities(
                user=user, include_site=True, filters=filters, **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(
            self,
            url=url,
            source=source,
            select=[('metadata_filter', ['tree']),
                    'contribution_filter', ('temporal_filter', ['negation', 'created_date']),
                    'text_filter', 'other_filter'])
Beispiel #17
0
    def _add_filter(self, user):
        def source(**args):
            filters = [
                {
                    'metadata_filter': {
                        'states': ['published'],
                        'interfaces': [IAnswer]
                    }
                },
            ]
            # Answer is non a searchable element
            # we need add it to the args dict
            args['interfaces'] = [IAnswer]
            objects = find_entities(filters=filters,
                                    user=user,
                                    intersect=self._get_answers(user),
                                    **args)
            return objects

        url = self.request.resource_url(self.context, '@@novaideoapi')
        return get_filter(self,
                          url=url,
                          select=self.selected_filter,
                          source=source)