add cert available date to CMS settings
This commit is contained in:
0
openedx/core/djangoapps/certificates/__init__.py
Normal file
0
openedx/core/djangoapps/certificates/__init__.py
Normal file
19
openedx/core/djangoapps/certificates/config/waffle.py
Normal file
19
openedx/core/djangoapps/certificates/config/waffle.py
Normal file
@@ -0,0 +1,19 @@
|
||||
"""
|
||||
This module contains various configuration settings via
|
||||
waffle switches for the Certificates app.
|
||||
"""
|
||||
from openedx.core.djangoapps.waffle_utils import WaffleSwitchNamespace
|
||||
|
||||
# Namespace
|
||||
WAFFLE_NAMESPACE = u'certificates'
|
||||
|
||||
# Switches
|
||||
SELF_PACED_ONLY = u'self_paced_only'
|
||||
INSTRUCTOR_PACED_ONLY = u'instructor_paced_only'
|
||||
|
||||
|
||||
def waffle():
|
||||
"""
|
||||
Returns the namespaced, cached, audited Waffle class for Certificates.
|
||||
"""
|
||||
return WaffleSwitchNamespace(name=WAFFLE_NAMESPACE, log_prefix=u'Certificates: ')
|
||||
@@ -106,6 +106,7 @@ class CourseDetails(object):
|
||||
course_details = cls(course_key.org, course_key.course, course_key.run)
|
||||
course_details.start_date = course_descriptor.start
|
||||
course_details.end_date = course_descriptor.end
|
||||
course_details.certificate_available_date = course_descriptor.certificate_available_date
|
||||
course_details.enrollment_start = course_descriptor.enrollment_start
|
||||
course_details.enrollment_end = course_descriptor.enrollment_end
|
||||
course_details.pre_requisite_courses = course_descriptor.pre_requisite_courses
|
||||
@@ -233,6 +234,15 @@ class CourseDetails(object):
|
||||
dirty = True
|
||||
descriptor.enrollment_end = converted
|
||||
|
||||
if 'certificate_available_date' in jsondict:
|
||||
converted = date.from_json(jsondict['certificate_available_date'])
|
||||
else:
|
||||
converted = None
|
||||
|
||||
if converted != descriptor.certificate_available_date:
|
||||
dirty = True
|
||||
descriptor.certificate_available_date = converted
|
||||
|
||||
if 'course_image_name' in jsondict and jsondict['course_image_name'] != descriptor.course_image:
|
||||
descriptor.course_image = jsondict['course_image_name']
|
||||
dirty = True
|
||||
|
||||
@@ -39,6 +39,10 @@ class CourseDetailsTestCase(ModuleStoreTestCase):
|
||||
self.assertIsNone(
|
||||
details.enrollment_end, "enrollment_end date somehow initialized " + str(details.enrollment_end)
|
||||
)
|
||||
self.assertIsNone(
|
||||
details.certificate_available_date,
|
||||
"certificate_available_date date somehow initialized " + str(details.certificate_available_date)
|
||||
)
|
||||
self.assertIsNone(details.syllabus, "syllabus somehow initialized" + str(details.syllabus))
|
||||
self.assertIsNone(details.intro_video, "intro_video somehow initialized" + str(details.intro_video))
|
||||
self.assertIsNone(details.effort, "effort somehow initialized" + str(details.effort))
|
||||
@@ -90,6 +94,13 @@ class CourseDetailsTestCase(ModuleStoreTestCase):
|
||||
CourseDetails.update_from_json(self.course.id, jsondetails.__dict__, self.user).end_date,
|
||||
jsondetails.end_date
|
||||
)
|
||||
jsondetails.certificate_available_date = datetime.datetime(2010, 10, 1, 0, tzinfo=UTC())
|
||||
self.assertEqual(
|
||||
CourseDetails.update_from_json(
|
||||
self.course.id, jsondetails.__dict__, self.user
|
||||
).certificate_available_date,
|
||||
jsondetails.certificate_available_date
|
||||
)
|
||||
jsondetails.course_image_name = "an_image.jpg"
|
||||
self.assertEqual(
|
||||
CourseDetails.update_from_json(self.course.id, jsondetails.__dict__, self.user).course_image_name,
|
||||
|
||||
Reference in New Issue
Block a user