Commit c14f0b14 by Diana Huang

Course jump tos should go to the main course home page.

parent 1b6778f6
...@@ -1442,6 +1442,8 @@ class DefaultStatesContentTest(CourseOutlineTest): ...@@ -1442,6 +1442,8 @@ class DefaultStatesContentTest(CourseOutlineTest):
__test__ = True __test__ = True
# TODO: TNL-6546: Removing unified_course_view_flag
# This test will need to be rewritten to point to the new course home page.
def test_view_live(self): def test_view_live(self):
""" """
Scenario: View Live version from course outline Scenario: View Live version from course outline
......
...@@ -9,12 +9,15 @@ from xmodule.modulestore.search import path_to_location, navigation_index ...@@ -9,12 +9,15 @@ from xmodule.modulestore.search import path_to_location, navigation_index
from xmodule.modulestore.django import modulestore from xmodule.modulestore.django import modulestore
def get_redirect_url(course_key, usage_key): # TODO: TNL-6547: Remove unified_course_view parameter
def get_redirect_url(course_key, usage_key, unified_course_view=False):
""" Returns the redirect url back to courseware """ Returns the redirect url back to courseware
Args: Args:
course_id(str): Course Id string course_id(str): Course Id string
location(str): The location id of course component location(str): The location id of course component
unified_course_view (bool): temporary parameter while this feature is behind a waffle flag.
Is the unified_course_view waffle flag on?
Raises: Raises:
ItemNotFoundError if no data at the location or NoPathToItem if location not in any class ItemNotFoundError if no data at the location or NoPathToItem if location not in any class
...@@ -22,6 +25,8 @@ def get_redirect_url(course_key, usage_key): ...@@ -22,6 +25,8 @@ def get_redirect_url(course_key, usage_key):
Returns: Returns:
Redirect url string Redirect url string
""" """
if usage_key.block_type == 'course' and unified_course_view:
return reverse('edx.course_experience.course_home', args=[unicode(course_key)])
( (
course_key, chapter, section, vertical_unused, course_key, chapter, section, vertical_unused,
......
...@@ -4,6 +4,7 @@ Courseware views functions ...@@ -4,6 +4,7 @@ Courseware views functions
import json import json
import logging import logging
import urllib import urllib
import waffle
from collections import OrderedDict, namedtuple from collections import OrderedDict, namedtuple
from datetime import datetime from datetime import datetime
...@@ -210,7 +211,7 @@ def jump_to_id(request, course_id, module_id): ...@@ -210,7 +211,7 @@ def jump_to_id(request, course_id, module_id):
@ensure_csrf_cookie @ensure_csrf_cookie
def jump_to(_request, course_id, location): def jump_to(request, course_id, location):
""" """
Show the page that contains a specific location. Show the page that contains a specific location.
...@@ -225,7 +226,8 @@ def jump_to(_request, course_id, location): ...@@ -225,7 +226,8 @@ def jump_to(_request, course_id, location):
except InvalidKeyError: except InvalidKeyError:
raise Http404(u"Invalid course_key or usage_key") raise Http404(u"Invalid course_key or usage_key")
try: try:
redirect_url = get_redirect_url(course_key, usage_key) unified_course_view = waffle.flag_is_active(request, 'unified_course_view')
redirect_url = get_redirect_url(course_key, usage_key, unified_course_view=unified_course_view)
except ItemNotFoundError: except ItemNotFoundError:
raise Http404(u"No data at this location: {0}".format(usage_key)) raise Http404(u"No data at this location: {0}".format(usage_key))
except NoPathToItem: except NoPathToItem:
......
...@@ -29,7 +29,6 @@ from opaque_keys.edx.keys import CourseKey ...@@ -29,7 +29,6 @@ from opaque_keys.edx.keys import CourseKey
from commerce.utils import EcommerceService from commerce.utils import EcommerceService
from course_modes.models import CourseMode from course_modes.models import CourseMode
from courseware.url_helpers import get_redirect_url
from edx_rest_api_client.exceptions import SlumberBaseException from edx_rest_api_client.exceptions import SlumberBaseException
from edxmako.shortcuts import render_to_response, render_to_string from edxmako.shortcuts import render_to_response, render_to_string
from openedx.core.djangoapps.embargo import api as embargo_api from openedx.core.djangoapps.embargo import api as embargo_api
......
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