Пример #1
0
    def filter_result(self):
        filter_source = self.params('filter_source')
        if filter_source is not None and FILTER_SOURCES.get(filter_source, None):
            view_source = FILTER_SOURCES[filter_source](
                self.context, self.request)
            result = view_source.update()
            body = result['coordinates'][view_source.coordinates][0]['body']
            return {'body': body}

        return {'body': ''}
Пример #2
0
    def filter_result(self):
        filter_source = self.params('filter_source')
        if filter_source is not None and FILTER_SOURCES.get(
                filter_source, None):
            view_source = FILTER_SOURCES[filter_source](self.context,
                                                        self.request)
            result = view_source.update()
            body = result['coordinates'][view_source.coordinates][0]['body']
            return {'body': body}

        return {'body': ''}
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeProposalsToModerate: SeeProposalsToModerateView})


FILTER_SOURCES.update(
    {SeeProposalsToModerateView.name: SeeProposalsToModerateView})
Пример #4
0
CONTENTS_MESSAGES = {
    '0': _(u"""No followed element was found"""),
    '1': _(u"""One followed element was found"""),
    '*': _(u"""${number} followed elements were found""")}


@asyn_component_config(id='novaideoapp_seemyselections')
@view_config(
    name='seemyselections',
    context=NovaIdeoApplication,
    renderer='pontus:templates/views_templates/grid.pt',
    )
class SeeMySelectionsView(SeeMyContentsView):
    title = _('My followings')
    name = 'seemyselections'
    behaviors = [SeeMySelections]
    template = 'novaideo:views/novaideo_view_manager/templates/search_result.pt'
    viewid = 'seemyselections'
    contents_messages = CONTENTS_MESSAGES
    include_archived = False
    content_types = ['all']

    def _get_content_ids(self, user):
        return [get_oid(o) for o in getattr(user, 'selections', [])]


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeMySelections: SeeMySelectionsView})

FILTER_SOURCES.update(
    {SeeMySelectionsView.name: SeeMySelectionsView})
Пример #5
0
                views = (ProposalsView, )

            if 'home-questions' in (delegated_by, view_id):
                views = (QuestionsView, )

        super(HomeView, self)._init_views(views, **kwargs)

    def update_anonymous(self):
        values = {}
        result = {}
        body = self.content(
            args=values, template=self.anonymous_template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        self.title = ''
        self.wrapper_template = 'novaideo:views/novaideo_view_manager/templates/anonymous_view_wrapper.pt'
        return result

    def update(self):
        if not self.request.accessible_to_anonymous:
            return self.update_anonymous()

        return super(HomeView, self).update()


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeHome: HomeView})


FILTER_SOURCES.update(
    {"home": HomeView})
Пример #6
0
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                 'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeOrderedProposal: SeeOrderedProposalView})


FILTER_SOURCES.update(
    {SeeOrderedProposalView.name: SeeOrderedProposalView})
Пример #7
0
    template = 'novaideo:views/novaideo_view_manager/templates/search_result.pt'
    viewid = 'seemysupports'
    contents_messages = CONTENTS_MESSAGES
    selected_filter = [('metadata_filter',
                        ['negation', 'tree', 'states', 'challenges']),
                       ('temporal_filter', ['negation', 'created_date']),
                       'text_filter', 'other_filter']
    include_archived = False
    content_types = ['idea', 'proposal']
    display_state = False

    def _get_title(self, **args):
        user = args.get('user')
        return _(self.contents_messages[args.get('index')],
                 mapping={
                     'number':
                     args.get('len_result'),
                     'tokens':
                     user.get_len_free_tokens() if hasattr(
                         user, 'get_len_free_tokens') else 0
                 })

    def _get_content_ids(self, user):
        return user.allocated_tokens.keys() if hasattr(
            user, 'allocated_tokens') else []


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeMySupports: SeeMySupportsView})

FILTER_SOURCES.update({SeeMySupportsView.name: SeeMySupportsView})
Пример #8
0
    views = (ParticipateView, ChallengeContentsView)


@view_config(
    name='index',
    context=Challenge,
    renderer='pontus:templates/views_templates/grid.pt',
    )
@view_config(
    name='',
    context=Challenge,
    renderer='pontus:templates/views_templates/grid.pt',
    )
class ChallengeView(MultipleView):
    title = ''
    name = 'seechallenge'
    template = 'pontus:templates/views_templates/simple_multipleview.pt'
    viewid = 'challenge'
    css_class = 'panel-transparent'
    views = (DetailChallengeView, ParticipateContentView)
    validators = [SeeChallenge.get_validator()]
    requirements = {'css_links': [],
                    'js_links': ['novaideo:static/js/analytics.js']}


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeChallenge: ChallengeView})


FILTER_SOURCES.update(
    {"challenge": ChallengeView})
Пример #9
0
                views = (ProposalsView, )

            if 'home-questions' in (delegated_by, view_id):
                views = (QuestionsView, )

        super(HomeView, self)._init_views(views, **kwargs)

    def update_anonymous(self):
        values = {}
        result = {}
        body = self.content(
            args=values, template=self.anonymous_template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        self.title = ''
        self.wrapper_template = 'novaideo:views/novaideo_view_manager/templates/anonymous_view_wrapper.pt'
        return result

    def update(self):
        if not self.request.accessible_to_anonymous:
            return self.update_anonymous()

        return super(HomeView, self).update()


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeHome: HomeView})


FILTER_SOURCES.update(
    {"home": HomeView})
        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {
                    'css_links': filter_form['css_links'],
                    'js_links': filter_form['js_links']
                }, result)

        values = {
            'bodies': result_body,
            'batch': batch,
            'filter_body': filter_body,
            'sort_body': sort_body
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeProposalsToModerate: SeeProposalsToModerateView})

FILTER_SOURCES.update(
    {SeeProposalsToModerateView.name: SeeProposalsToModerateView})
Пример #11
0
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeIdeasToModerate: SeeIdeasToModerateView})


FILTER_SOURCES.update(
    {SeeIdeasToModerateView.name: SeeIdeasToModerateView})
Пример #12
0
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        item['messages'] = messages
        item['isactive'] = vote_actions['isactive'] or navbars['isactive']
        result.update(resources)
        result['coordinates'] = {self.coordinates: [item]}
        return result


@view_config(
    name='seequestion',
    context=Question,
    renderer='pontus:templates/views_templates/grid.pt',
)
class SeeQuestionView(MultipleView):
    name = 'seequestion'
    template = 'novaideo:views/templates/entity_multipleview.pt'
    title = ''
    views = (SeeQuestionHeaderView, AnswersDetailsView)
    validators = [SeeQuestion.get_validator()]
    requirements = {
        'css_links': [],
        'js_links': ['novaideo:static/js/ballot_management.js']
    }


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeQuestion: SeeQuestionView})

FILTER_SOURCES.update({AnswersView.name: AnswersView})
Пример #13
0
        if len_result > 1:
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {
                    'css_links': filter_form['css_links'],
                    'js_links': filter_form['js_links']
                }, result)

        values = {
            'bodies': result_body,
            'batch': batch,
            'filter_body': filter_body,
            'sort_body': sort_body
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeIdeasToExamine: SeeIdeasToExamineView})

FILTER_SOURCES.update({SeeIdeasToExamineView.name: SeeIdeasToExamineView})
Пример #14
0
            self.context, self.request.view_name,
            query=posted)
        batch = Batch(objects,
                      self.request,
                      url=url,
                      default_size=BATCH_DEFAULT_SIZE)
        batch.target = "#results"
        len_result = batch.seqlen
        index = str(len_result)
        if len_result > 1:
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        result_body, result = render_listing_objs(
            self.request, batch, user)
        values = {'bodies': result_body,
                  'batch': batch}
                  # 'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update({Search: SearchView})


FILTER_SOURCES.update(
    {"search_source": SearchResultView})
Пример #15
0
        self.title = self._get_title(
            index=index, len_result=len_result, user=user)
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user,
            display_state=getattr(self, 'display_state', True))
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                 'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeMyContents: SeeMyContentsView})


FILTER_SOURCES.update(
    {SeeMyContentsView.name: SeeMyContentsView})
Пример #16
0
@view_config(
    name='seemyparticipations',
    context=NovaIdeoApplication,
    renderer='pontus:templates/views_templates/grid.pt',
)
class SeeMyParticipationsView(SeeMyContentsView):
    title = _('My working groups')
    name = 'seemyparticipations'
    behaviors = [SeeMyParticipations]
    template = 'novaideo:views/novaideo_view_manager/templates/search_result.pt'
    viewid = 'seemyparticipations'
    contents_messages = CONTENTS_MESSAGES
    selected_filter = [('metadata_filter',
                        ['keywords', 'states', 'challenges']),
                       ('temporal_filter', ['negation', 'created_date']),
                       'text_filter', 'other_filter']
    include_archived = False
    content_types = ['proposal']
    sorts = ['release_date', 'created_at']

    def _get_content_ids(self, user):
        participations = user.get_participations(user) \
            if hasattr(user, 'get_participations') else []
        return [get_oid(o) for o in participations]


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeMyParticipations: SeeMyParticipationsView})

FILTER_SOURCES.update({SeeMyParticipationsView.name: SeeMyParticipationsView})
Пример #17
0
        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body
                  }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeIdeasToExamine: SeeIdeasToExamineView})


FILTER_SOURCES.update(
    {SeeIdeasToExamineView.name: SeeIdeasToExamineView})
Пример #18
0
        len_result = batch.seqlen
        index = str(len_result)
        if len_result > 1:
            index = '*'

        self.title = self._get_title(index=index,
                                     len_result=len_result,
                                     user=user)
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(self.request, batch, user)
        values = {
            'bodies': result_body,
            'batch': batch,
            'filter_body': filter_body
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        result['css_links'] = filter_form['css_links']
        result['js_links'] = filter_form['js_links']
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeUsers: SeeUsersView})

FILTER_SOURCES.update({
    SeeUsersView.name: SeeUsersView,
    SeeInactiveUsersView.name: SeeInactiveUsersView
})
Пример #19
0
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                 'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeOrderedProposal: SeeOrderedProposalView})


FILTER_SOURCES.update(
    {SeeOrderedProposalView.name: SeeOrderedProposalView})
Пример #20
0
        batch.target = "#results_users"
        len_result = batch.seqlen
        index = str(len_result)
        if len_result > 1:
            index = '*'

        self.title = self._get_title(
            index=index, len_result=len_result, user=user)
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        result['css_links'] = filter_form['css_links']
        result['js_links'] = filter_form['js_links']
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeUsers: SeeUsersView})


FILTER_SOURCES.update(
    {SeeUsersView.name: SeeUsersView,
     SeeInactiveUsersView.name: SeeInactiveUsersView})
Пример #21
0
        body = self.content(args=values, template=template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        if filter_form:
            result['css_links'] = filter_form['css_links']
            result['js_links'] = filter_form['js_links']

        return result

    def before_update(self):
        super(OpenFolderView, self).before_update()
        folderid = self.params('folderid')
        try:
            folder = get_obj(int(folderid))
            if folder:
                self.title = '/'.join([f.title for f in folder.folder_lineage])
        except (TypeError, ValueError):
            self.title = self.request.localizer.translate(_('Folder not valid'))
            user = get_current()
            log.info(
                "Folder not valid. id: ({folderid}) , user: ({user}, {email}) ".format(
                    user=getattr(user, 'title', getattr(user, 'name', 'Anonymous')),
                    email=getattr(user, 'email', 'Anonymous'),
                    folderid=folderid))


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeSmartFolder: SeeSmartFolderView})

FILTER_SOURCES.update({OpenFolderView.name: OpenFolderView})
Пример #22
0
        user = get_current(self.request)
        dace_catalog = find_catalog('dace')
        novaideo_catalog = find_catalog('novaideo')
        object_authors_index = novaideo_catalog['object_authors']
        container_index = dace_catalog['container_oid']
        query = container_index.eq(get_oid(self.context))
        objects = find_entities(
            interfaces=[IAmendment],
            user=user,
            add_query=query)
        query = query & object_authors_index.any([get_oid(user)])
        my_objs = find_entities(
            interfaces=[IAmendment],
            user=user,
            add_query=query)
        len_result = len(objects)
        len_my = len(my_objs)
        len_others = len_result - len_my
        bindings['user'] = user
        bindings['len_result'] = len_result
        bindings['len_my'] = len_my
        bindings['len_others'] = len_others
        setattr(self, '_bindings', bindings)


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeAmendments: AllAmendmentsView})


FILTER_SOURCES.update(
    {"seeproposalamendments": SeeAmendmentsView})
Пример #23
0
        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(
            self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {'css_links': filter_form['css_links'],
                'js_links': filter_form['js_links']
                }, result)

        values = {'bodies': result_body,
                  'batch': batch,
                  'filter_body': filter_body,
                  'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        result = merge_dicts(self.requirements_copy, result)
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeReportedContents: SeeReportedContentsView})


FILTER_SOURCES.update(
    {SeeReportedContentsView.name: SeeReportedContentsView})
Пример #24
0
            self.context, self.request.view_name,
            query=posted)
        batch = Batch(objects,
                      self.request,
                      url=url,
                      default_size=BATCH_DEFAULT_SIZE)
        batch.target = "#results"
        len_result = batch.seqlen
        index = str(len_result)
        if len_result > 1:
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        result_body, result = render_listing_objs(
            self.request, batch, user)
        values = {'bodies': result_body,
                  'batch': batch}
                  # 'sort_body': sort_body}
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update({Search: SearchView})


FILTER_SOURCES.update(
    {"search_source": SearchResultView})
Пример #25
0
            index = '*'

        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {
                    'css_links': filter_form['css_links'],
                    'js_links': filter_form['js_links']
                }, result)

        values = {
            'bodies': result_body,
            'batch': batch,
            'filter_body': filter_body,
            'sort_body': sort_body
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeIdeasToModerate: SeeIdeasToModerateView})

FILTER_SOURCES.update({SeeIdeasToModerateView.name: SeeIdeasToModerateView})
Пример #26
0
        batch = Batch(
            objects, self.request, url=url, default_size=BATCH_HOME_DEFAULT_SIZE)
        batch.target = "#results-home-challenges"
        len_result = batch.seqlen
        user = get_current()
        if len_result == 0:
            self.no_challenges = True
            result = {}
            result_body = []
        else:
            self.title = self.request.localizer.translate(self.title)
            result_body, result = render_listing_objs(
                self.request, batch, user, 'card')

        values = {
            'bodies': result_body,
            'batch': batch
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeChallenges: SeeChallengesView})


FILTER_SOURCES.update(
    {SeeChallengesView.name: SeeChallengesView})
Пример #27
0
        self.title = _(CONTENTS_MESSAGES[index],
                       mapping={'number': len_result})
        filter_data['filter_message'] = self.title
        filter_body = self.filter_instance.get_body(filter_data)
        result_body, result = render_listing_objs(self.request, batch, user)
        if filter_form:
            result = merge_dicts(
                {
                    'css_links': filter_form['css_links'],
                    'js_links': filter_form['js_links']
                }, result)

        values = {
            'bodies': result_body,
            'batch': batch,
            'filter_body': filter_body,
            'sort_body': sort_body
        }
        body = self.content(args=values, template=self.template)['body']
        item = self.adapt_item(body, self.viewid)
        result['coordinates'] = {self.coordinates: [item]}
        result = merge_dicts(self.requirements_copy, result)
        return result


DEFAULTMAPPING_ACTIONS_VIEWS.update(
    {SeeReportedContents: SeeReportedContentsView})

FILTER_SOURCES.update({SeeReportedContentsView.name: SeeReportedContentsView})
Пример #28
0
CONTENTS_MESSAGES = {
    '0': _(u"""No followed element was found"""),
    '1': _(u"""One followed element was found"""),
    '*': _(u"""${number} followed elements were found""")
}


@asyn_component_config(id='novaideoapp_seemyselections')
@view_config(
    name='seemyselections',
    context=NovaIdeoApplication,
    renderer='pontus:templates/views_templates/grid.pt',
)
class SeeMySelectionsView(SeeMyContentsView):
    title = _('My followings')
    name = 'seemyselections'
    behaviors = [SeeMySelections]
    template = 'novaideo:views/novaideo_view_manager/templates/search_result.pt'
    viewid = 'seemyselections'
    contents_messages = CONTENTS_MESSAGES
    include_archived = False
    content_types = ['all']

    def _get_content_ids(self, user):
        return [get_oid(o) for o in getattr(user, 'selections', [])]


DEFAULTMAPPING_ACTIONS_VIEWS.update({SeeMySelections: SeeMySelectionsView})

FILTER_SOURCES.update({SeeMySelectionsView.name: SeeMySelectionsView})