refactor: Switch to using course_overview start and end everywhere

In DE-1822, we believed we needed to switch to start_date and end_date.
It was determined this was not the case, so this updates the comment
to ensure future users use the correct fields (start and end) and
updates any pieces of code that may have used start_date or end_date.
This commit is contained in:
Dillon Dumesnil
2021-05-06 16:42:10 -04:00
parent 599d21b7bb
commit 89c463ff29
6 changed files with 12 additions and 15 deletions

View File

@@ -76,12 +76,15 @@ class CourseOverview(TimeStampedModel):
display_number_with_default = TextField()
display_org_with_default = TextField()
# Start/end dates
# TODO Remove 'start' & 'end' in removing field in column renaming, DE-1822
start = DateTimeField(null=True)
end = DateTimeField(null=True)
# These are deprecated and unused, but cannot be dropped via simple migration due to the size of the downstream
# history table. See DENG-19 for details.
# Please use start and end above for these values.
start_date = DateTimeField(null=True)
end_date = DateTimeField(null=True)
advertised_start = TextField(null=True)
announcement = DateTimeField(null=True)
@@ -194,10 +197,7 @@ class CourseOverview(TimeStampedModel):
course_overview.display_org_with_default = course.display_org_with_default
course_overview.start = start
# Add writes to new fields 'start_date' & 'end_date'.
course_overview.start_date = start
course_overview.end = end
course_overview.end_date = end
course_overview.advertised_start = course.advertised_start
course_overview.announcement = course.announcement

View File

@@ -103,7 +103,7 @@ class CreditService:
course_overview = CourseOverview.get_from_id(course_key)
result.update({
'course_name': course_overview.display_name,
'course_end_date': course_overview.end_date,
'course_end_date': course_overview.end,
})
return result

View File

@@ -172,11 +172,9 @@ def dates_banner_should_display(course_key, user):
return False, False
course_overview = CourseOverview.objects.get(id=str(course_key))
course_end_date = getattr(course_overview, 'end_date', None)
is_self_paced = getattr(course_overview, 'self_paced', False)
# Only display the banner for self-paced courses
if not is_self_paced:
if not course_overview.self_paced:
return False, False
# Only display the banner for enrolled users
@@ -184,7 +182,7 @@ def dates_banner_should_display(course_key, user):
return False, False
# Don't display the banner if the course has ended
if course_end_date and course_end_date < timezone.now():
if course_overview.end and course_overview.end < timezone.now():
return False, False
store = modulestore()