Commit 5122c292 by davestgermain

Merge pull request #2343 from edx/dstgermain/a11y-page-titles

Added more descriptive page titles.
parents 75bd860a 636eab8b
...@@ -202,7 +202,7 @@ class ShibSPTest(ModuleStoreTestCase): ...@@ -202,7 +202,7 @@ class ShibSPTest(ModuleStoreTestCase):
else: else:
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertContains(response, self.assertContains(response,
("<title>Preferences for {platform_name}</title>" ("Preferences for {platform_name}"
.format(platform_name=settings.PLATFORM_NAME))) .format(platform_name=settings.PLATFORM_NAME)))
# no audit logging calls # no audit logging calls
self.assertEquals(len(audit_log_calls), 0) self.assertEquals(len(audit_log_calls), 0)
......
from .templatetags.microsite import page_title_breadcrumbs
"""
Template tags and helper functions for displaying breadcrumbs in page titles
based on the current micro site.
"""
from django import template
from django.conf import settings
from microsite_configuration.middleware import MicrositeConfiguration
register = template.Library()
def page_title_breadcrumbs(*crumbs, **kwargs):
"""
This function creates a suitable page title in the form:
Specific | Less Specific | General | edX
It will output the correct platform name for the request.
Pass in a `separator` kwarg to override the default of " | "
"""
separator = kwargs.get("separator", " | ")
if crumbs:
return '{}{}{}'.format(separator.join(crumbs), separator, platform_name())
else:
return platform_name()
@register.simple_tag(name="page_title_breadcrumbs", takes_context=True)
def page_title_breadcrumbs_tag(context, *crumbs):
"""
Django template that creates breadcrumbs for page titles:
{% page_title_breadcrumbs "Specific" "Less Specific" General %}
"""
return page_title_breadcrumbs(*crumbs)
@register.simple_tag(name="platform_name")
def platform_name():
"""
Django template tag that outputs the current platform name:
{% platform_name %}
"""
return MicrositeConfiguration.get_microsite_configuration_value('platform_name', settings.PLATFORM_NAME)
\ No newline at end of file
...@@ -255,7 +255,7 @@ class ExternalAuthShibTest(ModuleStoreTestCase): ...@@ -255,7 +255,7 @@ class ExternalAuthShibTest(ModuleStoreTestCase):
noshib_response = self.client.get(TARGET_URL, follow=True) noshib_response = self.client.get(TARGET_URL, follow=True)
self.assertEqual(noshib_response.redirect_chain[-1], self.assertEqual(noshib_response.redirect_chain[-1],
('http://testserver/accounts/login?next={url}'.format(url=TARGET_URL), 302)) ('http://testserver/accounts/login?next={url}'.format(url=TARGET_URL), 302))
self.assertContains(noshib_response, ("<title>Log into your {platform_name} Account</title>" self.assertContains(noshib_response, ("Log into your {platform_name} Account | {platform_name}"
.format(platform_name=settings.PLATFORM_NAME))) .format(platform_name=settings.PLATFORM_NAME)))
self.assertEqual(noshib_response.status_code, 200) self.assertEqual(noshib_response.status_code, 200)
......
...@@ -57,7 +57,7 @@ def i_visit_the_dashboard(step): ...@@ -57,7 +57,7 @@ def i_visit_the_dashboard(step):
@step('I should be on the dashboard page$') @step('I should be on the dashboard page$')
def i_should_be_on_the_dashboard(step): def i_should_be_on_the_dashboard(step):
assert world.is_css_present('section.container.dashboard') assert world.is_css_present('section.container.dashboard')
assert world.browser.title == 'Dashboard' assert 'Dashboard' in world.browser.title
@step(u'I (?:visit|access|open) the courses page$') @step(u'I (?:visit|access|open) the courses page$')
......
...@@ -5,6 +5,7 @@ class @Sequence ...@@ -5,6 +5,7 @@ class @Sequence
@num_contents = @contents.length @num_contents = @contents.length
@id = @el.data('id') @id = @el.data('id')
@ajaxUrl = @el.data('ajax-url') @ajaxUrl = @el.data('ajax-url')
@base_page_title = " | " + document.title
@initProgress() @initProgress()
@bind() @bind()
@render parseInt(@el.data('position')) @render parseInt(@el.data('position'))
...@@ -18,7 +19,10 @@ class @Sequence ...@@ -18,7 +19,10 @@ class @Sequence
initProgress: -> initProgress: ->
@progressTable = {} # "#problem_#{id}" -> progress @progressTable = {} # "#problem_#{id}" -> progress
updatePageTitle: ->
# update the page title to include the current section
document.title = @link_for(@position).data('title') + @base_page_title
hookUpProgressEvent: -> hookUpProgressEvent: ->
$('.problems-wrapper').bind 'progressChanged', @updateProgress $('.problems-wrapper').bind 'progressChanged', @updateProgress
...@@ -100,6 +104,7 @@ class @Sequence ...@@ -100,6 +104,7 @@ class @Sequence
@position = new_position @position = new_position
@toggleArrows() @toggleArrows()
@hookUpProgressEvent() @hookUpProgressEvent()
@updatePageTitle()
sequence_links = @$('#seq_content a.seqnav') sequence_links = @$('#seq_content a.seqnav')
sequence_links.click @goto sequence_links.click @goto
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="bodyclass">register verification-process step-select-track ${'is-upgrading' if upgrade else ''}</%block> <%block name="bodyclass">register verification-process step-select-track ${'is-upgrading' if upgrade else ''}</%block>
<%block name="title"> <%block name="pagetitle">
<title>
%if upgrade: %if upgrade:
${_("Upgrade Your Registration for {} | Choose Your Track").format(course_name)} ${_("Upgrade Your Registration for {} | Choose Your Track").format(course_name)}
%else: %else:
${_("Register for {} | Choose Your Track").format(course_name)} ${_("Register for {} | Choose Your Track").format(course_name)}
%endif %endif
</title>
</%block> </%block>
<%block name="js_extra"> <%block name="js_extra">
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
<%block name="title"><title>Terms of Service</title></%block> <%block name="pagetitle">${_("Terms of Service")}</%block>
<section class="static-container tos"> <section class="static-container tos">
<h1>edX Terms of Service</h1> <h1>edX Terms of Service</h1>
......
...@@ -13,6 +13,6 @@ Scenario: I can navigate to all high - level tabs in a course ...@@ -13,6 +13,6 @@ Scenario: I can navigate to all high - level tabs in a course
| TabName | PageTitle | | TabName | PageTitle |
| Courseware | 6.002x Courseware | | Courseware | 6.002x Courseware |
| Course Info | 6.002x Course Info | | Course Info | 6.002x Course Info |
| Custom Tab | 6.002x Custom Tab | | Custom Tab | Custom Tab | 6.002x |
| Wiki | edX Wiki | | Wiki | Wiki | edX |
| Progress | 6.002x Progress | | Progress | 6.002x Progress |
...@@ -72,7 +72,7 @@ class TestMicrosites(ModuleStoreTestCase, LoginEnrollmentTestCase): ...@@ -72,7 +72,7 @@ class TestMicrosites(ModuleStoreTestCase, LoginEnrollmentTestCase):
self.assertContains(resp, 'This is a Test Microsite Overlay') # Overlay test message self.assertContains(resp, 'This is a Test Microsite Overlay') # Overlay test message
self.assertContains(resp, 'test_microsite/images/header-logo.png') # logo swap self.assertContains(resp, 'test_microsite/images/header-logo.png') # logo swap
self.assertContains(resp, 'test_microsite/css/test_microsite.css') # css override self.assertContains(resp, 'test_microsite/css/test_microsite.css') # css override
self.assertContains(resp, '<title>Test Microsite</title>') # page title self.assertContains(resp, 'Test Microsite') # page title
# assert that test course display name is visible # assert that test course display name is visible
self.assertContains(resp, 'Robot_Super_Course') self.assertContains(resp, 'Robot_Super_Course')
......
...@@ -328,7 +328,7 @@ def index(request, course_id, chapter=None, section=None, ...@@ -328,7 +328,7 @@ def index(request, course_id, chapter=None, section=None,
# Save where we are in the chapter # Save where we are in the chapter
save_child_position(chapter_module, section) save_child_position(chapter_module, section)
context['fragment'] = section_module.render('student_view') context['fragment'] = section_module.render('student_view')
context['section_title'] = section_descriptor.display_name_with_default
else: else:
# section is none, so display a message # section is none, so display a message
prev_section = get_current_child(chapter_module) prev_section = get_current_child(chapter_module)
......
...@@ -1068,6 +1068,7 @@ INSTALLED_APPS = ( ...@@ -1068,6 +1068,7 @@ INSTALLED_APPS = (
# Dark-launching languages # Dark-launching languages
'dark_lang', 'dark_lang',
'microsite_configuration',
) )
######################### MARKETING SITE ############################### ######################### MARKETING SITE ###############################
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<html lang="${LANGUAGE_CODE}"> <html lang="${LANGUAGE_CODE}">
<head> <head>
## "edX" should not be translated ## "edX" should not be translated
<%block name="title"><title>edX</title></%block> <%block name="pagetitle"></%block>
<script type="text/javascript" src="/static/js/vendor/jquery.min.js"></script> <script type="text/javascript" src="/static/js/vendor/jquery.min.js"></script>
<script type="text/javascript" src="/static/js/course_groups/cohorts.js"></script> <script type="text/javascript" src="/static/js/course_groups/cohorts.js"></script>
......
...@@ -113,7 +113,7 @@ ...@@ -113,7 +113,7 @@
<script src="${static.url('js/course_info.js')}"></script> <script src="${static.url('js/course_info.js')}"></script>
</%block> </%block>
<%block name="title"><title>${_("About {course.display_number_with_default}").format(course=course) | h}</title></%block> <%block name="pagetitle">${_("About {course.display_number_with_default}").format(course=course) | h}</%block>
<section class="course-info"> <section class="course-info">
<header class="course-profile"> <header class="course-profile">
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
<%block name="title"><title>${_("Courses")}</title></%block> <%block name="pagetitle">${_("Courses")}</%block>
<%! from microsite_configuration.middleware import MicrositeConfiguration %> <%! from microsite_configuration.middleware import MicrositeConfiguration %>
<section class="find-courses"> <section class="find-courses">
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<%inherit file="/main.html" /> <%inherit file="/main.html" />
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
<%block name="bodyclass">courseware</%block> <%block name="bodyclass">courseware</%block>
<%block name="title"><title>${_("Courseware")} - ${settings.PLATFORM_NAME}</title></%block> <%block name="pagetitle">${_("Courseware")}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from microsite_configuration import page_title_breadcrumbs %>
<%inherit file="/main.html" /> <%inherit file="/main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%def name="course_name()">
<% return _("{course_number} Courseware").format(course_number=course.display_number_with_default) %>
</%def>
<%block name="bodyclass">courseware ${course.css_class}</%block> <%block name="bodyclass">courseware ${course.css_class}</%block>
<%block name="title"><title>${_("{course_number} Courseware").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="title"><title>
% if section_title:
${page_title_breadcrumbs(section_title, course_name())}
% else:
${page_title_breadcrumbs(course_name())}
%endif
</title></%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from courseware.courses import get_course_info_section %>
<%inherit file="/main.html" /> <%inherit file="/main.html" />
<%block name="bodyclass">${course.css_class}</%block>
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%block name="pagetitle">${_("{course.display_number_with_default} Course Info").format(course=course) | h}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
<%static:css group='style-course'/> <%static:css group='style-course'/>
</%block> </%block>
<%block name="title"><title>${_("{course.display_number_with_default} Course Info").format(course=course) | h}</title></%block>
<%include file="/courseware/course_navigation.html" args="active_page='info'" /> <%include file="/courseware/course_navigation.html" args="active_page='info'" />
<%!
from courseware.courses import get_course_info_section
%>
<%block name="js_extra"> <%block name="js_extra">
<script type="text/javascript" src="${static.url('js/jquery.treeview.js')}"></script> <script type="text/javascript" src="${static.url('js/jquery.treeview.js')}"></script>
...@@ -23,6 +23,7 @@ $(document).ready(function(){ ...@@ -23,6 +23,7 @@ $(document).ready(function(){
</script> </script>
</%block> </%block>
<%block name="bodyclass">${course.css_class}</%block>
<section class="container"> <section class="container">
<div class="info-wrapper"> <div class="info-wrapper">
% if user.is_authenticated(): % if user.is_authenticated():
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="/main.html" />
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%block name="pagetitle">${_("Instructor Dashboard")}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
<%static:css group='style-course'/> <%static:css group='style-course'/>
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<%inherit file="../mktg_iframe.html" /> <%inherit file="../mktg_iframe.html" />
<%block name="title"><title>${_("About {course_id}").format(course_id=course_id)}</title></%block> <%block name="pagetitle">${_("About {course_id}").format(course_id=course_id)}</%block>
<%block name="bodyclass">view-iframe-content view-partial-mktgregister</%block> <%block name="bodyclass">view-iframe-content view-partial-mktgregister</%block>
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<%inherit file="../mktg_iframe.html" /> <%inherit file="../mktg_iframe.html" />
<%block name="title"><title>${_("About {course_number}").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("About {course_number}").format(course_number=course.display_number_with_default) | h}</%block>
<%block name="bodyclass">view-iframe-content view-partial-mktgregister</%block> <%block name="bodyclass">view-iframe-content view-partial-mktgregister</%block>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
<%block name="bodyclass">courseware news</%block> <%block name="bodyclass">courseware news</%block>
<%block name="title"><title>${_("News - MITx 6.002x")}</title></%block> <%block name="pagetitle">${_("News - MITx 6.002x")}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<%namespace name="progress_graph" file="/courseware/progress_graph.js"/> <%namespace name="progress_graph" file="/courseware/progress_graph.js"/>
<%block name="title"><title>${_("{course_number} Progress").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("{course_number} Progress").format(course_number=course.display_number_with_default) | h}</%block>
<%! <%!
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<%static:css group='style-course'/> <%static:css group='style-course'/>
</%block> </%block>
<%block name="title"><title>${course.display_number_with_default | h} ${tab['name']}</title></%block> <%block name="pagetitle">${tab['name']} | ${course.display_number_with_default | h}</%block>
<%include file="/courseware/course_navigation.html" args="active_page='static_tab_{0}'.format(tab['url_slug'])" /> <%include file="/courseware/course_navigation.html" args="active_page='static_tab_{0}'.format(tab['url_slug'])" />
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<%static:css group='style-course'/> <%static:css group='style-course'/>
</%block> </%block>
<%block name="title"><title>${_("{course.display_number_with_default} Course Info").format(course=course) | h}</title></%block> <%block name="pagetitle">${_("{course.display_number_with_default} Course Info").format(course=course) | h}</%block>
<%include file="/courseware/course_navigation.html" args="active_page='syllabus'" /> <%include file="/courseware/course_navigation.html" args="active_page='syllabus'" />
<%! <%!
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<%namespace name='static' file='static_content.html'/> <%namespace name='static' file='static_content.html'/>
<%block name="title"><title>${_("Dashboard")}</title></%block> <%block name="pagetitle">${_("Dashboard")}</%block>
<%block name="bodyclass">view-dashboard is-authenticated</%block> <%block name="bodyclass">view-dashboard is-authenticated</%block>
<%block name="js_extra"> <%block name="js_extra">
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
<%block name="bodyclass">discussion</%block> <%block name="bodyclass">discussion</%block>
<%block name="title"><title>${_("Discussion - {course_number}").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("Discussion - {course_number}").format(course_number=course.display_number_with_default) | h}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
<%block name="bodyclass">discussion</%block> <%block name="bodyclass">discussion</%block>
<%block name="title"><title>${_("Discussion - {course_number}").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("Discussion - {course_number}").format(course_number=course.display_number_with_default) | h}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="/main.html" />
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="/main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
## ----- Tips on adding something to the new instructor dashboard ----- ## ----- Tips on adding something to the new instructor dashboard -----
...@@ -16,6 +17,8 @@ ...@@ -16,6 +17,8 @@
## 5. Implement your standard django/python in lms/djangoapps/instructor/views/api.py ## 5. Implement your standard django/python in lms/djangoapps/instructor/views/api.py
## 6. And tests go in lms/djangoapps/instructor/tests/ ## 6. And tests go in lms/djangoapps/instructor/tests/
<%block name="pagetitle">${_("Instructor Dashboard")}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
<%static:css group='style-course'/> <%static:css group='style-course'/>
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<script type="text/javascript" src="${static.url('js/vendor/underscore-min.js')}"></script> <script type="text/javascript" src="${static.url('js/vendor/underscore-min.js')}"></script>
</%block> </%block>
<%block name="title"><title>${_("{course_number} Staff Grading").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("{course_number} Staff Grading").format(course_number=course.display_number_with_default) | h}</%block>
<%include file="/courseware/course_navigation.html" args="active_page='staff_grading'" /> <%include file="/courseware/course_navigation.html" args="active_page='staff_grading'" />
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%block name="title"><title>${_("Log into your {platform_name} Account").format(platform_name=platform_name)}</title></%block> <%block name="pagetitle">${_("Log into your {platform_name} Account").format(platform_name=platform_name)}</%block>
<%block name="js_extra"> <%block name="js_extra">
<script type="text/javascript"> <script type="text/javascript">
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from microsite_configuration.middleware import MicrositeConfiguration %> <%! from microsite_configuration.middleware import MicrositeConfiguration %>
<%! from microsite_configuration import page_title_breadcrumbs %>
<%namespace name='static' file='static_content.html'/> <%namespace name='static' file='static_content.html'/>
<%! from django.utils import html %> <%! from django.utils import html %>
...@@ -28,11 +29,14 @@ ...@@ -28,11 +29,14 @@
<!--[if gt IE 9]><!--><html lang="${LANGUAGE_CODE}"><!--<![endif]--> <!--[if gt IE 9]><!--><html lang="${LANGUAGE_CODE}"><!--<![endif]-->
<head> <head>
<%block name="title"> <%block name="title">
<title>
% if stanford_theme_enabled(): % if stanford_theme_enabled():
<title>${_("Home")} | class.stanford.edu</title> ${_("Home")} | class.stanford.edu
% else: % else:
## "edX" should not be translated ${page_title_breadcrumbs(self.pagetitle())}
<title>${MicrositeConfiguration.get_microsite_configuration_value('platform_name', settings.PLATFORM_NAME)}</title> </title>
## this needs to be here to prevent the title from mysteriously appearing in the body, in one case
<!--<%block name="pagetitle" />-->
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
......
<!DOCTYPE html> <!DOCTYPE html>
{% load compressed %}{% load sekizai_tags i18n %}{% load url from future %}{% load staticfiles %} {% load compressed %}{% load sekizai_tags i18n microsite %}{% load url from future %}{% load staticfiles %}
<html lang="{{LANGUAGE_CODE}}"> <html lang="{{LANGUAGE_CODE}}">
<head> <head>
{# "edX" should *not* be translated #} {% block title %}<title>{% platform_name %}</title>{% endblock %}
{% block title %}<title>edX</title>{% endblock %}
<link rel="icon" type="image/x-icon" href="{% static "images/favicon.ico" %}" /> <link rel="icon" type="image/x-icon" href="{% static "images/favicon.ico" %}" />
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<%static:css group='style-course'/> <%static:css group='style-course'/>
</%block> </%block>
<%block name="title"><title>${_("{course_number} Combined Notifications").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("{course_number} Combined Notifications").format(course_number=course.display_number_with_default)}</%block>
<%include file="/courseware/course_navigation.html" args="active_page='open_ended'" /> <%include file="/courseware/course_navigation.html" args="active_page='open_ended'" />
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<%static:css group='style-course'/> <%static:css group='style-course'/>
</%block> </%block>
<%block name="title"><title>${_("{course_number} Flagged Open Ended Problems").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("{course_number} Flagged Open Ended Problems").format(course_number=course.display_number_with_default)}</%block>
<%include file="/courseware/course_navigation.html" args="active_page='open_ended_flagged_problems'" /> <%include file="/courseware/course_navigation.html" args="active_page='open_ended_flagged_problems'" />
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<%static:css group='style-course'/> <%static:css group='style-course'/>
</%block> </%block>
<%block name="title"><title>${_("{course_number} Open Ended Problems").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("{course_number} Open Ended Problems").format(course_number=course.display_number_with_default)}</%block>
<%include file="/courseware/course_navigation.html" args="active_page='open_ended_problems'" /> <%include file="/courseware/course_navigation.html" args="active_page='open_ended_problems'" />
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
<%! from datetime import date %> <%! from datetime import date %>
<%! import calendar %> <%! import calendar %>
<%block name="title"><title>${_("Preferences for {platform_name}").format(platform_name=settings.PLATFORM_NAME)}</title></%block> <%block name="pagetitle">${_("Preferences for {platform_name}").format(platform_name=settings.PLATFORM_NAME)}</%block>
<%block name="js_extra"> <%block name="js_extra">
<script type="text/javascript"> <script type="text/javascript">
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
<%! from datetime import date %> <%! from datetime import date %>
<%! import calendar %> <%! import calendar %>
<%block name="title"><title>${_("Register for {platform_name}").format(platform_name=platform_name)}</title></%block> <%block name="pagetitle">${_("Register for {platform_name}").format(platform_name=platform_name)}</%block>
<%block name="js_extra"> <%block name="js_extra">
<script type="text/javascript"> <script type="text/javascript">
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
<a class="seq_${item['type']} inactive progress-${item['progress_status']}" <a class="seq_${item['type']} inactive progress-${item['progress_status']}"
data-id="${item['id']}" data-id="${item['id']}"
data-element="${idx+1}" data-element="${idx+1}"
data-title="${item['title']}"
href="javascript:void(0);"> href="javascript:void(0);">
<p aria-hidden="false">${item['title']}<span class="sr">, ${item['type']}</span></p> <p aria-hidden="false">${item['title']}<span class="sr">, ${item['type']}</span></p>
</a> </a>
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<%! from django.conf import settings %> <%! from django.conf import settings %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Download CSV Reports")}</title></%block> <%block name="pagetitle">${_("Download CSV Reports")}</%block>
<section class="container"> <section class="container">
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Payment Error")}</title></%block> <%block name="pagetitle">${_("Payment Error")}</%block>
<section class="container"> <section class="container">
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Your Shopping Cart")}</title></%block> <%block name="pagetitle">${_("Your Shopping Cart")}</%block>
<section class="container cart-list"> <section class="container cart-list">
<h2>${_("Your selected items:")}</h2> <h2>${_("Your selected items:")}</h2>
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="bodyclass">purchase-receipt</%block> <%block name="bodyclass">purchase-receipt</%block>
<%block name="title"><title>${_("Register for [Course Name] | Receipt (Order")} ${order.id})</title></%block> <%block name="pagetitle">${_("Register for [Course Name] | Receipt (Order")} ${order.id})</%block>
<%block name="content"> <%block name="content">
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="bodyclass">register verification-process step-confirmation</%block> <%block name="bodyclass">register verification-process step-confirmation</%block>
<%block name="title"><title>${_("Receipt (Order")} ${order.id})</title></%block> <%block name="pagetitle">${_("Receipt (Order")} ${order.id})</%block>
<%block name="content"> <%block name="content">
% if notification is not UNDEFINED: % if notification is not UNDEFINED:
......
...@@ -2,8 +2,7 @@ ...@@ -2,8 +2,7 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%namespace name='static' file='static_content.html'/> <%namespace name='static' file='static_content.html'/>
<%block name="title"><title>${_('{course_number} Textbook').format(course_number=course.display_number_with_default) | h}</title> <%block name="pagetitle">${_('{course_number} Textbook').format(course_number=course.display_number_with_default) | h}</%block>
</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
...@@ -2,13 +2,11 @@ ...@@ -2,13 +2,11 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%namespace name='static' file='static_content.html'/> <%namespace name='static' file='static_content.html'/>
<%block name="title"> <%block name="pagetitle">${_('{course_number} Textbook').format(course_number=course.display_number_with_default) | h}</%block>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>${_('{course_number} Textbook').format(course_number=course.display_number_with_default) | h}</title>
</%block>
<%block name="headextra"> <%block name="headextra">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
<%static:css group='style-course'/> <%static:css group='style-course'/>
<%static:js group='courseware'/> <%static:js group='courseware'/>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>404</title></%block> <%block name="pagetitle">${_("Page Not Found")}</%block>
<section class="outside-app"> <section class="outside-app">
<h1>${_("Page not found")}</h1> <h1>${_("Page not found")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Vision")}</title></%block> <%block name="pagetitle">${_("Vision")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Vision")}</h1> <h1>${_("Vision")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Contact")}</title></%block> <%block name="pagetitle">${_("Contact")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Contact")}</h1> <h1>${_("Contact")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Copyright")}</title></%block> <%block name="pagetitle">${_("Copyright")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Copyright")}</h1> <h1>${_("Copyright")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("FAQ")}</title></%block> <%block name="pagetitle">${_("FAQ")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("FAQ")}</h1> <h1>${_("FAQ")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Help")}</title></%block> <%block name="pagetitle">${_("Help")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Help")}</h1> <h1>${_("Help")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Honor Code")}</title></%block> <%block name="pagetitle">${_("Honor Code")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Honor Code")}</h1> <h1>${_("Honor Code")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Jobs")}</title></%block> <%block name="pagetitle">${_("Jobs")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Jobs")}</h1> <h1>${_("Jobs")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Media Kit")}</title></%block> <%block name="pagetitle">${_("Media Kit")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Media Kit")}</h1> <h1>${_("Media Kit")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("In the Press")}</title></%block> <%block name="pagetitle">${_("In the Press")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("In the Press")}</h1> <h1>${_("In the Press")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Privacy Policy")}</title></%block> <%block name="pagetitle">${_("Privacy Policy")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Privacy Policy")}</h1> <h1>${_("Privacy Policy")}</h1>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="title"><title>${_("Terms of Service")}</title></%block> <%block name="pagetitle">${_("Terms of Service")}</%block>
<section class="container about"> <section class="container about">
<h1>${_("Terms of Service")}</h1> <h1>${_("Terms of Service")}</h1>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%namespace name='static' file='static_content.html'/> <%namespace name='static' file='static_content.html'/>
<%block name="title"><title>${_("{course_number} Textbook").format(course_number=course.display_number_with_default) | h}</title></%block> <%block name="pagetitle">${_("{course_number} Textbook").format(course_number=course.display_number_with_default) | h}</%block>
<%block name="headextra"> <%block name="headextra">
<%static:css group='style-course-vendor'/> <%static:css group='style-course-vendor'/>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%block name="title"><title>${_("edX edge")}</title></%block> <%block name="pagetitle">${_("edX edge")}</%block>
<%block name="bodyclass">no-header edge-landing</%block> <%block name="bodyclass">no-header edge-landing</%block>
<%block name="content"> <%block name="content">
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%block name="bodyclass">register verification-process is-not-verified step-photos</%block> <%block name="bodyclass">register verification-process is-not-verified step-photos</%block>
<%block name="title"><title>${_("Re-Verification")}</title></%block> <%block name="pagetitle">${_("Re-Verification")}</%block>
<%block name="js_extra"> <%block name="js_extra">
<script src="${static.url('js/vendor/responsive-carousel/responsive-carousel.js')}"></script> <script src="${static.url('js/vendor/responsive-carousel/responsive-carousel.js')}"></script>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%block name="bodyclass">register verification-process step-photos ${'is-upgrading' if upgrade else ''}</%block> <%block name="bodyclass">register verification-process step-photos ${'is-upgrading' if upgrade else ''}</%block>
<%block name="title"> <%block name="pagetitle">
<title>
%if upgrade: %if upgrade:
${_("Upgrade Your Registration for {} | Verification").format(course_name)} ${_("Upgrade Your Registration for {} | Verification").format(course_name)}
%else: %else:
${_("Register for {} | Verification").format(course_name)} ${_("Register for {} | Verification").format(course_name)}
%endif %endif
</title>
</%block> </%block>
<%block name="js_extra"> <%block name="js_extra">
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%block name="bodyclass">register verification-process is-not-verified step-confirmation</%block> <%block name="bodyclass">register verification-process is-not-verified step-confirmation</%block>
<%block name="title"><title>${_("Re-Verification Submission Confirmation")}</title></%block> <%block name="pagetitle">${_("Re-Verification Submission Confirmation")}</%block>
<%block name="js_extra"> <%block name="js_extra">
<script src="${static.url('js/vendor/responsive-carousel/responsive-carousel.js')}"></script> <script src="${static.url('js/vendor/responsive-carousel/responsive-carousel.js')}"></script>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%block name="bodyclass">register verification-process step-requirements ${'is-upgrading' if upgrade else ''}</%block> <%block name="bodyclass">register verification-process step-requirements ${'is-upgrading' if upgrade else ''}</%block>
<%block name="title"> <%block name="pagetitle">
<title>
%if upgrade: %if upgrade:
${_("Upgrade Your Registration for {}").format(course_name)} ${_("Upgrade Your Registration for {}").format(course_name)}
%else: %else:
${_("Register for {}").format(course_name)} ${_("Register for {}").format(course_name)}
%endif %endif
</title>
</%block> </%block>
<%block name="content"> <%block name="content">
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from django.core.urlresolvers import reverse %> <%! from django.core.urlresolvers import reverse %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='/static_content.html'/> <%namespace name='static' file='/static_content.html'/>
<%block name="bodyclass">register verification-process is-verified</%block> <%block name="bodyclass">register verification-process is-verified</%block>
<%block name="title"><title>${_("Register for {} | Verification").format(course_name)}</title></%block> <%block name="pagetitle">${_("Register for {} | Verification").format(course_name)}</%block>
<%block name="js_extra"> <%block name="js_extra">
<script type="text/javascript"> <script type="text/javascript">
......
{% extends "main_django.html" %} {% extends "main_django.html" %}
{% load compressed %}{% load sekizai_tags i18n %}{% load url from future %}{% load staticfiles %} {% load compressed %}{% load sekizai_tags i18n microsite %}{% load url from future %}{% load staticfiles %}
{% block title %}<title>{% block pagetitle %}{% endblock %} | edX Wiki</title>{% endblock %} {% block title %}<title>{% block pagetitle %}{% endblock %} | Wiki | {% platform_name %}</title>{% endblock %}
{% block headextra %} {% block headextra %}
{% compressed_css 'course' %} {% compressed_css 'course' %}
......
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