Commit 7aea7369 by Greg Price

Merge branch 'release'

parents b86ab284 407efdaa
...@@ -9,6 +9,7 @@ from django.conf import settings ...@@ -9,6 +9,7 @@ from django.conf import settings
settings.INSTALLED_APPS # pylint: disable=W0104 settings.INSTALLED_APPS # pylint: disable=W0104
from django_startup import autostartup from django_startup import autostartup
from xmodule.modulestore.django import modulestore
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
...@@ -17,3 +18,8 @@ def run(): ...@@ -17,3 +18,8 @@ def run():
Executed during django startup Executed during django startup
""" """
autostartup() autostartup()
# trigger a forced initialization of our modulestores since this can take a while to complete
# and we want this done before HTTP requests are accepted
for store_name in settings.MODULESTORE:
modulestore(store_name)
...@@ -75,5 +75,15 @@ ...@@ -75,5 +75,15 @@
cycle_modal_tab("#pwd_reset_email", "#pwd_reset_button") cycle_modal_tab("#pwd_reset_email", "#pwd_reset_button")
cycle_modal_tab("#pwd_reset_button", "#forgot-password-modal .close-modal") cycle_modal_tab("#pwd_reset_button", "#forgot-password-modal .close-modal")
// Hitting the ESC key will exit the modal
$("#forgot-password-modal").on("keydown", function(e) {
var keyCode = e.keyCode || e.which;
// 27 is the ESC key
if (keyCode === 27) {
e.preventDefault();
$("#forgot-password-modal .close-modal").click();
}
});
})(this) })(this)
</script> </script>
...@@ -61,7 +61,7 @@ discussion_link = get_discussion_link(course) if course else None ...@@ -61,7 +61,7 @@ discussion_link = get_discussion_link(course) if course else None
<div id="feedback_error" class="modal-form-error" tabindex="-1"></div> <div id="feedback_error" class="modal-form-error" tabindex="-1"></div>
% if not user.is_authenticated(): % if not user.is_authenticated():
<label data-field="name" for="feedback_form_name">${_('Name*')}</label> <label data-field="name" for="feedback_form_name">${_('Name*')}</label>
<input name="name" type="text" id="feedback_form_email" aria-required="true"> <input name="name" type="text" id="feedback_form_name" aria-required="true">
<label data-field="email" for="feedback_form_email">${_('E-mail*')}</label> <label data-field="email" for="feedback_form_email">${_('E-mail*')}</label>
<input name="email" type="text" id="feedback_form_email" aria-required="true"> <input name="email" type="text" id="feedback_form_email" aria-required="true">
% endif % endif
...@@ -80,8 +80,8 @@ discussion_link = get_discussion_link(course) if course else None ...@@ -80,8 +80,8 @@ discussion_link = get_discussion_link(course) if course else None
</form> </form>
</div> </div>
<div class="inner-wrapper" id="feedback_success_wrapper" tabindex="-1"> <div class="inner-wrapper" id="feedback_success_wrapper" tabindex="0">
<a href="#" role="button" class="close-modal" title="${_('Close Modal')}">&#10005;</a> <a href="#" role="button" class="close-modal" title="${_('Close Modal')}" tabindex="0">&#10005;</a>
<header> <header>
<h2>${_('Thank You!')}</h2> <h2>${_('Thank You!')}</h2>
...@@ -106,7 +106,7 @@ discussion_link = get_discussion_link(course) if course else None ...@@ -106,7 +106,7 @@ discussion_link = get_discussion_link(course) if course else None
).format( ).format(
open_time=open_time, open_time=open_time,
close_time=close_time, close_time=close_time,
link_start='<a href="{}" target="_blank" id="feedback-faq-link">'.format(marketing_link('FAQ')), link_start='<a href="{}" target="_blank" id="feedback-faq-link" tabindex="0">'.format(marketing_link('FAQ')),
link_end='</a>' link_end='</a>'
)} )}
</p> </p>
...@@ -119,7 +119,8 @@ discussion_link = get_discussion_link(course) if course else None ...@@ -119,7 +119,8 @@ discussion_link = get_discussion_link(course) if course else None
$(".help-modal .close-modal").off("click"); $(".help-modal .close-modal").off("click");
$("#lean_overlay").off("click"); $("#lean_overlay").off("click");
$("#help-modal").attr("aria-hidden", "true"); $("#help-modal").attr("aria-hidden", "true");
$(".help-tab").focus(); $('area,input,select,textarea,button').removeAttr('tabindex');
$(".help-tab a").focus();
}, },
cycle_modal_tab = function(from_element_name, to_element_name) { cycle_modal_tab = function(from_element_name, to_element_name) {
$(from_element_name).on('keydown', function(e) { $(from_element_name).on('keydown', function(e) {
...@@ -156,7 +157,7 @@ discussion_link = get_discussion_link(course) if course else None ...@@ -156,7 +157,7 @@ discussion_link = get_discussion_link(course) if course else None
}; };
cycle_modal_tab("#feedback_link_question", "#help_wrapper .close-modal"); cycle_modal_tab("#feedback_link_question", "#help_wrapper .close-modal");
cycle_modal_tab("#feedback_submit", "#feedback_form_wrapper .close-modal"); cycle_modal_tab("#feedback_submit", "#feedback_form_wrapper .close-modal");
cycle_modal_tab("#feedback_faq_link", "#feedback_success_wrapper .close-modal"); cycle_modal_tab("#feedback-faq-link", "#feedback_success_wrapper .close-modal");
$("#help-modal").on("keydown", function(e) { $("#help-modal").on("keydown", function(e) {
var keyCode = e.keyCode || e.which; var keyCode = e.keyCode || e.which;
if (keyCode === 27) { if (keyCode === 27) {
...@@ -194,6 +195,8 @@ discussion_link = get_discussion_link(course) if course else None ...@@ -194,6 +195,8 @@ discussion_link = get_discussion_link(course) if course else None
}); });
$("#feedback_form").submit(function() { $("#feedback_form").submit(function() {
$("input[type='submit']", this).attr("disabled", "disabled"); $("input[type='submit']", this).attr("disabled", "disabled");
$('area,input,select,textarea,button').attr('tabindex', -1);
$("#feedback_form_wrapper .close-modal").focus();
}); });
$("#feedback_form").on("ajax:complete", function() { $("#feedback_form").on("ajax:complete", function() {
$("input[type='submit']", this).removeAttr("disabled"); $("input[type='submit']", this).removeAttr("disabled");
......
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