Merge pull request #16933 from edx/HarryRein/LEARNER-3636-dont-show-expired-entitlements-unenrolled

Do not show expired, unfulfilled entitlements on dashboards.
This commit is contained in:
Harry Rein
2017-12-18 16:26:43 -05:00
committed by GitHub
9 changed files with 62 additions and 44 deletions

View File

@@ -221,16 +221,20 @@ class ProgramProgressMeter(object):
completed, in_progress, not_started = [], [], []
for course in program_copy['courses']:
entitlement = CourseEntitlement.objects.filter(user=self.user,
course_uuid=course['uuid']).first()
active_entitlement = CourseEntitlement.get_entitlement_if_active(
user=self.user,
course_uuid=course['uuid']
)
if self._is_course_complete(course):
completed.append(course)
elif self._is_course_enrolled(course) or entitlement:
# Show all currently enrolled courses and entitlements as in progress
if entitlement:
course['user_entitlement'] = entitlement.to_dict()
course['enroll_url'] = reverse('entitlements_api:v1:enrollments', args=[str(entitlement.uuid)])
elif self._is_course_enrolled(course) or active_entitlement:
# Show all currently enrolled courses and active entitlements as in progress
if active_entitlement:
course['user_entitlement'] = active_entitlement.to_dict()
course['enroll_url'] = reverse(
'entitlements_api:v1:enrollments',
args=[str(active_entitlement.uuid)]
)
in_progress.append(course)
else:
course_in_progress = self._is_course_in_progress(now, course)