def _get_curated_groups_ids_and_sids(advisor): sids = [] curated_group_ids = [] for curated_group in CuratedGroup.get_curated_groups(advisor.id): curated_group_ids.append(curated_group.id) sids = sids + CuratedGroup.get_all_sids(curated_group.id) return curated_group_ids, sids
def get_my_curated_groups(): benchmark = get_benchmarker('my_curated_groups') curated_groups = [] user_id = current_user.get_id() for curated_group in CuratedGroup.get_curated_groups(owner_id=user_id): students = [{ 'sid': sid } for sid in CuratedGroup.get_all_sids(curated_group.id)] students_with_alerts = Alert.include_alert_counts_for_students( benchmark=benchmark, viewer_user_id=user_id, group={'students': students}, count_only=True, ) curated_groups.append({ **curated_group.to_api_json(include_students=False), 'alertCount': sum(s['alertCount'] for s in students_with_alerts), 'sids': [student['sid'] for student in students], 'totalStudentCount': len(students), }) return curated_groups
def coe_advisor_groups(): advisor = AuthorizedUser.find_by_uid(coe_advisor_uid) return CuratedGroup.get_curated_groups(advisor.id)
def admin_curated_groups(): user = AuthorizedUser.find_by_uid(admin_uid) return CuratedGroup.get_curated_groups(user.id)