예제 #1
0
 def create_idea_pager(self):
     """Get an idea pager that show ideas in this challenge"""
     # FIXME: late import to avoid circular dependencies problem
     from eureka.ui.desktop.idea import IdeaPager
     q = queries.get_published_challenge_ideas(self.challenge_id)
     pager = IdeaPager(self, q)
     pager.specific_challenge()
     return pager
예제 #2
0
 def create_idea_pager(self):
     """Get an idea pager that show ideas in this challenge"""
     # FIXME: late import to avoid circular dependencies problem
     from eureka.ui.desktop.idea import IdeaPager
     q = queries.get_published_challenge_ideas(self.challenge_id)
     pager = IdeaPager(self, q)
     pager.specific_challenge()
     return pager
예제 #3
0
def apply_rule(idea, state, event, context, *args, **kw):
    from eureka.domain.queries import get_published_challenge_ideas
    from eureka.domain.repositories import UserRepository

    # Affect to DI
    di_uid = kw["di"]
    di = UserRepository().get_by_uid(di_uid) or UserRepository().developer
    context.assignated_di = di
    context.publication_date = datetime.now()

    # Give points to creator
    for user in idea.authors:
        user.process_point_event(PointEvent.PUBLISH_IDEA, idea=idea)

        if idea.challenge is not None and [e for e in get_published_challenge_ideas(idea.challenge.id)()] == []:
            user.process_point_event(PointEvent.PUBLISH_CHALLENGE_FIRST_IDEA, idea=idea)

        idea.show_creator = True

    return WFStates.DI_APPRAISAL_STATE
예제 #4
0
def apply_rule(idea, state, event, context, *args, **kw):
    from eureka.domain.queries import get_published_challenge_ideas
    from eureka.domain.repositories import UserRepository

    # Affect to DI
    di_uid = kw['di']
    di = UserRepository().get_by_uid(di_uid) or UserRepository().developer
    context.assignated_di = di
    context.publication_date = datetime.now()

    # Give points to creator
    for user in idea.authors:
        user.process_point_event(PointEvent.PUBLISH_IDEA, idea=idea)

        if (idea.challenge is not None and
           [e for e in get_published_challenge_ideas(idea.challenge.id)()] == []):
            user.process_point_event(PointEvent.PUBLISH_CHALLENGE_FIRST_IDEA, idea=idea)

        idea.show_creator = True

    return WFStates.DI_APPRAISAL_STATE
예제 #5
0
 def _create_pager_all_challenges(self, parent, challenge_id=None):
     q = get_published_challenge_ideas(challenge_id)
     pager = IdeaPager(parent, q)
     pager.all_challenges()
     return pager