def update_values(self, user, values): if user and 'most_recent_track' in values: for course in COURSE_LIST: if course.prefix in values['most_recent_track'].path: values['current_course'] = get_total_progress_for_course(user.email().lower(), course.prefix) values['current_course_obj'] = course # Default to course short title break else: values['login'] = {} for course in COURSE_LIST: values['login'][course.prefix] = users.create_login_url(course.get_url()) return
def update_values(self, user, values): if user and 'most_recent_track' in values: for course in COURSE_LIST: if course.prefix in values['most_recent_track'].path: values['current_course'] = get_total_progress_for_course( user.email().lower(), course.prefix) values[ 'current_course_obj'] = course # Default to course short title break else: values['login'] = {} for course in COURSE_LIST: values['login'][course.prefix] = users.create_login_url( course.get_url()) return
def get_total_progress(self, team_progress): """ Gets total ROSEbotics progress for everyone in a team """ user_email = get_user_email() rosebotics_team = team_progress.team_key.get() team_progress.name = rosebotics_team.name # change to filter by visibility? members = RoseboticsTeamMember.query(ancestor=team_progress.team_key) members_progress = [] allowed_visibilies = [TeamVisibility.ALL_MEMBERS] if rosebotics_team.leader == user_email: allowed_visibilies.append(TeamVisibility.TEAM_LEADER) else: is_user_not_in_team = True for member in members: if member.email == user_email: is_user_not_in_team = False break if is_user_not_in_team: raise endpoints.BadRequestException( "You are not allowed to view this team!") courses = rosebotics_team.courses for member in members: if member.visibility in allowed_visibilies or member.email == user_email: mp = MemberProgress() student = RoseboticsStudent.get_by_id(member.email.lower()) if student is None: logging.info(member.email + " being thrown out of sweep!") continue mp.display_name = student.name mp.username = student.username for course in courses: course = get_course(course) if course.coming_soon: continue progress = get_total_progress_for_course( member.email, course.prefix) mp.course_progress.append( create_course_progress(course.short_title, progress, course.prefix)) members_progress.append(mp) team_progress.members_progress = members_progress return team_progress
def get_total_progress(self, team_progress): """ Gets total ROSEbotics progress for everyone in a team """ user_email = get_user_email() rosebotics_team = team_progress.team_key.get() team_progress.name = rosebotics_team.name # change to filter by visibility? members = RoseboticsTeamMember.query(ancestor=team_progress.team_key) members_progress = [] allowed_visibilies = [TeamVisibility.ALL_MEMBERS] if rosebotics_team.leader == user_email: allowed_visibilies.append(TeamVisibility.TEAM_LEADER) else: is_user_not_in_team = True for member in members: if member.email == user_email: is_user_not_in_team = False break if is_user_not_in_team: raise endpoints.BadRequestException("You are not allowed to view this team!") courses = rosebotics_team.courses for member in members: if member.visibility in allowed_visibilies or member.email == user_email: mp = MemberProgress() student = RoseboticsStudent.get_by_id(member.email.lower()) if student is None: logging.info(member.email + " being thrown out of sweep!") continue mp.display_name = student.name mp.username = student.username for course in courses: course = get_course(course) if course.coming_soon: continue progress = get_total_progress_for_course(member.email, course.prefix) mp.course_progress.append(create_course_progress(course.short_title, progress, course.prefix)) members_progress.append(mp) team_progress.members_progress = members_progress return team_progress
def update_values(self, user, values): values['course'] = self.get_course() values["progress"] = progress_utils.get_total_progress_for_course(user.email().lower(), self.get_course().prefix)
def update_values(self, user, values): values['course'] = self.get_course() values["progress"] = progress_utils.get_total_progress_for_course( user.email().lower(), self.get_course().prefix)