Commit d60117d7 by Calen Pennington

Make Studio CoursePage objects generate the correct CourseLocator based on…

Make Studio CoursePage objects generate the correct CourseLocator based on whether the DEFAULT_STORE is set or not
parent 3f065a5f
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
Base class for pages specific to a course in Studio. Base class for pages specific to a course in Studio.
""" """
import os
from opaque_keys.edx.locator import CourseLocator
from bok_choy.page_object import PageObject from bok_choy.page_object import PageObject
from . import BASE_URL from . import BASE_URL
...@@ -34,5 +36,12 @@ class CoursePage(PageObject): ...@@ -34,5 +36,12 @@ class CoursePage(PageObject):
""" """
Construct a URL to the page within the course. Construct a URL to the page within the course.
""" """
course_key = "{course_org}/{course_num}/{course_run}".format(**self.course_info) # TODO - is there a better way to make this agnostic to the underlying default module store?
return "/".join([BASE_URL, self.url_path, course_key]) default_store = os.environ.get('DEFAULT_STORE', 'draft')
course_key = CourseLocator(
self.course_info['course_org'],
self.course_info['course_num'],
self.course_info['course_run'],
deprecated=(default_store == 'draft')
)
return "/".join([BASE_URL, self.url_path, unicode(course_key)])
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment