From 607b99deced71b388be8ff4b011a9a6b21a0bf19 Mon Sep 17 00:00:00 2001 From: Calen Pennington Date: Fri, 12 Oct 2012 15:03:06 -0400 Subject: [PATCH] Make separate links for lms_preview and lms as needed --- cms/djangoapps/contentstore/utils.py | 8 +- cms/djangoapps/contentstore/views.py | 10 +- cms/envs/dev.py | 2 +- cms/static/sass/_unit.scss | 19 ++-- cms/templates/edit_subsection.html | 133 ++++++++++++++------------- cms/templates/unit.html | 1 + cms/templates/widgets/header.html | 2 +- 7 files changed, 90 insertions(+), 85 deletions(-) diff --git a/cms/djangoapps/contentstore/utils.py b/cms/djangoapps/contentstore/utils.py index fe1a64f5cf..9109efd292 100644 --- a/cms/djangoapps/contentstore/utils.py +++ b/cms/djangoapps/contentstore/utils.py @@ -1,7 +1,6 @@ from django.conf import settings from xmodule.modulestore import Location from xmodule.modulestore.django import modulestore -from xmodule.modulestore.draft import DRAFT from xmodule.modulestore.exceptions import ItemNotFoundError @@ -35,13 +34,14 @@ def get_course_location_for_item(location): return location -def get_lms_link_for_item(location): +def get_lms_link_for_item(location, preview=False): location = Location(location) if settings.LMS_BASE is not None: - lms_link = "{lms_base}/courses/{course_id}/jump_to/{location}".format( + lms_link = "//{preview}{lms_base}/courses/{course_id}/jump_to/{location}".format( + preview='preview.' if preview else '', lms_base=settings.LMS_BASE, # TODO: These will need to be changed to point to the particular instance of this problem in the particular course - course_id = modulestore().get_containing_courses(location)[0].id, + course_id=modulestore().get_containing_courses(location)[0].id, location=location, ) else: diff --git a/cms/djangoapps/contentstore/views.py b/cms/djangoapps/contentstore/views.py index ef9613581b..3e49e9f35a 100644 --- a/cms/djangoapps/contentstore/views.py +++ b/cms/djangoapps/contentstore/views.py @@ -188,6 +188,7 @@ def edit_subsection(request, location): break lms_link = get_lms_link_for_item(location) + preview_link = get_lms_link_for_item(location, preview=True) # make sure that location references a 'sequential', otherwise return BadRequest if item.location.category != 'sequential': @@ -214,7 +215,8 @@ def edit_subsection(request, location): 'context_course': course, 'create_new_unit_template': Location('i4x', 'edx', 'templates', 'vertical', 'Empty'), 'lms_link': lms_link, - 'parent_item' : parent, + 'preview_link': preview_link, + 'parent_item': parent, 'policy_metadata' : policy_metadata }) @@ -240,8 +242,8 @@ def edit_unit(request, location): course.location.course == item.location.course): break - # The non-draft location - lms_link = get_lms_link_for_item(item.location._replace(revision=None)) + lms_link = get_lms_link_for_item(item.location) + preview_lms_link = get_lms_link_for_item(item.location, preview=True) component_templates = defaultdict(list) @@ -282,7 +284,7 @@ def edit_unit(request, location): 'unit_location': location, 'components': components, 'component_templates': component_templates, - 'draft_preview_link': lms_link, + 'draft_preview_link': preview_lms_link, 'published_preview_link': lms_link, 'subsection': containing_subsection, 'section': containing_section, diff --git a/cms/envs/dev.py b/cms/envs/dev.py index faf7dc8886..e29ee62e20 100644 --- a/cms/envs/dev.py +++ b/cms/envs/dev.py @@ -53,7 +53,7 @@ DATABASES = { } } -LMS_BASE = "http://localhost:8000" +LMS_BASE = "localhost:8000" REPOS = { 'edx4edx': { diff --git a/cms/static/sass/_unit.scss b/cms/static/sass/_unit.scss index 5eeefaecaa..0b893e1965 100644 --- a/cms/static/sass/_unit.scss +++ b/cms/static/sass/_unit.scss @@ -310,7 +310,7 @@ } } - .preview-button { + .preview-button, .view-button { @include white-button; margin-bottom: 10px; } @@ -325,7 +325,8 @@ .save-button, .preview-button, - .publish-button { + .publish-button, + .view-button { font-size: 11px; margin-top: 10px; padding: 6px 15px 8px; @@ -427,17 +428,15 @@ } .edit-state-draft { - .visibility { + .visibility, + .edit-draft-message, + .view-button { display: none; } .published-alert { display: block; } - - .edit-draft-message { - display: none; - } } .edit-state-public { @@ -446,7 +445,8 @@ .component-actions, .new-component-item, #published-alert, - .publish-draft-message { + .publish-draft-message, + .preview-button { display: none; } @@ -463,7 +463,8 @@ #delete-draft, #publish-draft, #published-alert, - #create-draft, { + #create-draft, + .view-button { display: none; } } diff --git a/cms/templates/edit_subsection.html b/cms/templates/edit_subsection.html index ec5adc770a..3b70725053 100644 --- a/cms/templates/edit_subsection.html +++ b/cms/templates/edit_subsection.html @@ -19,31 +19,31 @@
-
- - -
-
- - -
-
- - ${units.enum_units(subsection)} -
-
- -
    - % for policy_name in policy_metadata.keys(): -
  1. - -
  2. - % endfor +
    + + +
    +
    + + +
    +
    + + ${units.enum_units(subsection)} +
    +
    + +
      + % for policy_name in policy_metadata.keys(): +
    1. + +
    2. + % endfor New Policy Data -
    -
    +
+
@@ -51,46 +51,47 @@
diff --git a/cms/templates/widgets/header.html b/cms/templates/widgets/header.html index 08e998381a..6c238313a2 100644 --- a/cms/templates/widgets/header.html +++ b/cms/templates/widgets/header.html @@ -13,7 +13,7 @@
  • Pages
  • Assets
  • Users
  • -
  • Import
  • +
  • Import
  • % endif