def get_users_to_review(user):
    if not user.is_authenticated:
        return User.objects.none()
    if is_at_phase(Phase.MANAGER_REVIEW):
        qs = User.objects.filter(round=get_active_round())
        return filter_query_set_for_manager_review(user, qs)
    if is_at_phase(Phase.PEER_REVIEW):
        return User.objects.filter(
            projectreview__reviewers=user,
            projectreview__round=get_active_round()).distinct()
    return User.objects.none()
def get_or_create_project_review(project, reviewee):
    if not can_review_project(reviewee, project):
        return None

    project_review, created = ProjectReview.objects.get_or_create(
        round=get_active_round(), project=project, reviewee=reviewee)
    return project_review
def get_all_manager_person_reviews(user):
    if not user.is_authenticated:
        return ManagerPersonReview.objects.none()
    if is_at_phase(Phase.MANAGER_REVIEW):
        qs = ManagerPersonReview.objects.filter(round=get_active_round())
        return filter_query_set_for_manager_review(user, qs, 'reviewee')
    return ManagerPersonReview.objects.none()
def get_all_project_reviews(user):
    if not user.is_authenticated:
        return ProjectReview.objects.none()
    if is_at_phase(Phase.SELF_REVIEW):
        return ProjectReview.objects.filter(round=get_active_round(),
                                            reviewee=user)
    if is_at_phase(Phase.PEER_REVIEW):
        return ProjectReview.objects.filter(round=get_active_round(),
                                            reviewers=user)
    if is_at_phase(Phase.MANAGER_REVIEW):
        qs = ProjectReview.objects.filter(round=get_active_round())
        return filter_query_set_for_manager_review(user, qs, 'reviewee')
    if is_at_phase(Phase.RESULTS):
        return ProjectReview.objects.filter(round=get_active_round(),
                                            reviewee=user)
    return ProjectReview.objects.none()
Esempio n. 5
0
def get_or_create_person_review(*, reviewee, reviewer):
    if not can_review_person(reviewer, reviewee):
        return None

    person_review, created = PersonReview.objects.get_or_create(
        round=get_active_round(), reviewee=reviewee, reviewer=reviewer)
    return person_review
def get_or_create_manager_person_review(*, reviewee, manager):
    if not can_view_manager_person_review(manager, reviewee):
        return None
    manager_person_review, _ = ManagerPersonReview.objects.get_or_create(
        round=get_active_round(),
        reviewee=reviewee,
    )
    return manager_person_review
Esempio n. 7
0
def get_all_manager_project_comments(user):
    if not user.is_authenticated:
        return ManagerProjectComment.objects.none()
    if is_at_phase(Phase.MANAGER_REVIEW):
        qs = ManagerProjectComment.objects.filter(
            project_review__round=get_active_round())
        return filter_query_set_for_manager_review(user, qs,
                                                   'project_review__reviewee')
    return ManagerProjectComment.objects.none()
Esempio n. 8
0
 def resolve_active_round(self, info):
     return get_active_round()
Esempio n. 9
0
def get_all_projects(user):
    if not user.is_authenticated:
        return Project.objects.none()
    return Project.objects.filter(round=get_active_round())