Change upgrade deadline messaging
This commit is contained in:
@@ -244,7 +244,7 @@ class TestCourseHomePageAccess(CourseHomePageTestCase):
|
||||
expected_count = 1 if (is_enrolled or is_unenrolled_staff) else 0
|
||||
self.assertContains(response, TEST_CHAPTER_NAME, count=expected_count)
|
||||
self.assertContains(response, 'Start Course', count=expected_count)
|
||||
self.assertContains(response, 'Learn About Verified Certificate', count=expected_count)
|
||||
self.assertContains(response, 'Learn About Verified Certificate', count=(1 if is_enrolled else 0))
|
||||
self.assertContains(response, TEST_WELCOME_MESSAGE, count=expected_count)
|
||||
|
||||
# Verify that the expected message is shown to the user
|
||||
@@ -285,7 +285,7 @@ class TestCourseHomePageAccess(CourseHomePageTestCase):
|
||||
expected_count = 1 if (is_enrolled or is_unenrolled_staff) else 0
|
||||
self.assertContains(response, TEST_CHAPTER_NAME, count=expected_count)
|
||||
self.assertContains(response, 'Start Course', count=expected_count)
|
||||
self.assertContains(response, 'Learn About Verified Certificate', count=expected_count)
|
||||
self.assertContains(response, 'Learn About Verified Certificate', count=(1 if is_enrolled else 0))
|
||||
|
||||
# Verify that the expected message is shown to the user
|
||||
self.assertContains(response, '<div class="user-messages">', count=1 if expected_message else 0)
|
||||
|
||||
@@ -3,12 +3,10 @@ Fragment for rendering the course's sock and associated toggle button.
|
||||
"""
|
||||
from django.template.loader import render_to_string
|
||||
from django.utils.translation import get_language
|
||||
from opaque_keys.edx.keys import CourseKey
|
||||
from web_fragments.fragment import Fragment
|
||||
|
||||
from commerce.utils import EcommerceService
|
||||
from course_modes.models import CourseMode, get_cosmetic_verified_display_price
|
||||
from courseware.date_summary import VerifiedUpgradeDeadlineDate
|
||||
from course_modes.models import get_cosmetic_verified_display_price
|
||||
from courseware.date_summary import verified_upgrade_deadline_link, verified_upgrade_link_is_valid
|
||||
from openedx.core.djangoapps.plugin_api.views import EdxFragmentView
|
||||
from student.models import CourseEnrollment
|
||||
|
||||
@@ -25,29 +23,12 @@ class CourseSockFragmentView(EdxFragmentView):
|
||||
html = render_to_string('course_experience/course-sock-fragment.html', context)
|
||||
return Fragment(html)
|
||||
|
||||
def get_verification_context(self, request, course):
|
||||
course_key = CourseKey.from_string(unicode(course.id))
|
||||
|
||||
# Establish whether the course has a verified mode
|
||||
available_modes = CourseMode.modes_for_course_dict(unicode(course.id))
|
||||
has_verified_mode = CourseMode.has_verified_mode(available_modes)
|
||||
|
||||
# Establish whether the user is already enrolled
|
||||
is_already_verified = CourseEnrollment.is_enrolled_as_verified(request.user, course_key)
|
||||
|
||||
# Establish whether the verification deadline has already passed
|
||||
verification_deadline = VerifiedUpgradeDeadlineDate(course, request.user)
|
||||
deadline_has_passed = verification_deadline.deadline_has_passed()
|
||||
|
||||
# If this proves its worth, we can internationalize and display for more than English speakers.
|
||||
show_course_sock = (
|
||||
has_verified_mode and not is_already_verified and
|
||||
not deadline_has_passed and get_language() == 'en'
|
||||
)
|
||||
|
||||
# Get information about the upgrade
|
||||
@staticmethod
|
||||
def get_verification_context(request, course):
|
||||
enrollment = CourseEnrollment.get_enrollment(request.user, course.id)
|
||||
show_course_sock = verified_upgrade_link_is_valid(enrollment) and get_language() == 'en'
|
||||
upgrade_url = verified_upgrade_deadline_link(request.user, course=course)
|
||||
course_price = get_cosmetic_verified_display_price(course)
|
||||
upgrade_url = EcommerceService().upgrade_url(request.user, course_key)
|
||||
|
||||
context = {
|
||||
'show_course_sock': show_course_sock,
|
||||
|
||||
Reference in New Issue
Block a user