From 99659ce3d44b73afb8a499ecfb9659e095d2fea1 Mon Sep 17 00:00:00 2001 From: arbisoft Date: Thu, 8 Jan 2015 14:52:31 +0500 Subject: [PATCH] ECOM-528 added donation support for verified courses --- .../djangoapps/student/tests/test_recent_enrollments.py | 8 ++++---- common/djangoapps/student/views.py | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/common/djangoapps/student/tests/test_recent_enrollments.py b/common/djangoapps/student/tests/test_recent_enrollments.py index ccba26e903..6206ca4f86 100644 --- a/common/djangoapps/student/tests/test_recent_enrollments.py +++ b/common/djangoapps/student/tests/test_recent_enrollments.py @@ -112,10 +112,10 @@ class TestRecentEnrollments(ModuleStoreTestCase): recent_course_list = _get_recently_enrolled_courses(courses_list) self.assertEqual(len(recent_course_list), 5) - self.assertEqual(recent_course_list[1], courses[0]) - self.assertEqual(recent_course_list[2], courses[1]) - self.assertEqual(recent_course_list[3], courses[2]) - self.assertEqual(recent_course_list[4], courses[3]) + self.assertEqual(recent_course_list[1][0], courses[0]) + self.assertEqual(recent_course_list[2][0], courses[1]) + self.assertEqual(recent_course_list[3][0], courses[2]) + self.assertEqual(recent_course_list[4][0], courses[3]) def test_dashboard_rendering(self): """ diff --git a/common/djangoapps/student/views.py b/common/djangoapps/student/views.py index f5f75485c8..6d000c299d 100644 --- a/common/djangoapps/student/views.py +++ b/common/djangoapps/student/views.py @@ -712,9 +712,9 @@ def _create_recent_enrollment_message(course_enrollment_pairs, course_modes): { "course_id": course.id, "course_name": course.display_name, - "allow_donation": _allow_donation(course_modes, course.id) + "allow_donation": _allow_donation(course_modes, course.id, enrollment) } - for course in recently_enrolled_courses + for course, enrollment in recently_enrolled_courses ] return render_to_string( @@ -745,7 +745,7 @@ def _get_recently_enrolled_courses(course_enrollment_pairs): ] -def _allow_donation(course_modes, course_id): +def _allow_donation(course_modes, course_id, enrollment): """Determines if the dashboard will request donations for the given course. Check if donations are configured for the platform, and if the current course is accepting donations. @@ -761,7 +761,7 @@ def _allow_donation(course_modes, course_id): donations_enabled = DonationConfiguration.current().enabled is_verified_mode = CourseMode.has_verified_mode(course_modes[course_id]) has_payment_option = CourseMode.has_payment_options(course_id) - return donations_enabled and not is_verified_mode and not has_payment_option + return donations_enabled and (not is_verified_mode or (is_verified_mode and enrollment.mode in ['audit', 'honor']) )and not has_payment_option def try_change_enrollment(request):