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
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
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
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