Commit 0c73c8f6 by Douglas Hall Committed by GitHub

Merge pull request #4 from edx/hasnain-naveed/WL-613

WL-613 | Example theme.
parents 7f16033b c5b92605
(function(require) {
'use strict';
require(['edx-ui-toolkit/js/utils/html-utils'], function(HtmlUtils) {
function addSlider() {
var isMobileResolution = $(window).width() < 768,
sliderExists = $('.about-list').hasClass('slick-slider');
$('.about-list').toggleClass('slidable', isMobileResolution);
if (isMobileResolution) {
if (!sliderExists) {
$('.about-list').find('.about-list-item').removeClass('col col-4');
$('.slidable').slick({
nextArrow: '<i class="fa fa-angle-right"></i>',
prevArrow: '<i class="fa fa-angle-left"></i>'
});
}
} else {
HtmlUtils.setHtml('.about-container', HtmlUtils.HTML($('#about-content').html()));
}
}
$(function() {
HtmlUtils.setHtml('.about-container', HtmlUtils.HTML($('#about-content').html()));
addSlider();
});
$(window).resize(function() {
addSlider();
});
});
}).call(this, require || RequireJS.require);
$(document).ready(function() {
'use strict';
var div = '';
$('.back-to-top').on('click', function(event) {
event.preventDefault();
$('html, body').animate({scrollTop: 0}, 300);
});
$('ul.list-divided li.item a').on('click', function(event) {
event.preventDefault();
div = $(this).attr('href');
$('html, body').animate({scrollTop: $(div).offset().top}, 300);
});
});
(function(require) {
'use strict';
require(['edx-ui-toolkit/js/utils/html-utils', 'edx-ui-toolkit/js/utils/string-utils'],
function(HtmlUtils, StringUtils) {
var errorMessages = {
name: 'Please provide your name.',
email: 'Please provide a valid e-mail.',
details: 'Please provide message.',
subject: 'Please provide an inquiry type.'
};
function addErrorDiv(id) {
var start = HtmlUtils.HTML('<div class="has-error field-message"><span class="field-message-content">'),
errorDiv = StringUtils.interpolate(
'{start}{errorMessage}{end}',
{
start: start,
errorMessage: errorMessages[id],
end: HtmlUtils.HTML('</span></div>')
}
);
$('#' + id).addClass('has-error');
$('#' + id).parent().append(HtmlUtils.template(errorDiv)().toString());
}
function submitForm(data) {
$.post('/submit_feedback', data, function() {
$('#success-message-btn').click();
setTimeout(function() {
$('#lean_overlay').trigger('click');
$('#contact_form').trigger('reset');
}, 2000);
}).fail(function(xhr) {
var responseData = jQuery.parseJSON(xhr.responseText);
addErrorDiv(responseData.field);
});
}
function removeErrorDiv(id) {
$('#' + id).removeClass('has-error');
$($('#' + id).next()).remove();
}
function validateForm() {
var optionalFields = ['user_type']; // Optional fields array
var formValues = $('#contact_form').find(':input'),
i = 0,
data = {},
value = '',
id = '',
response = {
is_form_validate: true,
data: ''
};
for (i = 0; i < formValues.length - 2; i++) {
value = $(formValues[i]).val();
id = $(formValues[i]).attr('id');
removeErrorDiv(id);
if (value && value !== '') {
data[id] = value;
} else {
if ($.inArray(id, optionalFields) === -1) {
response.is_form_validate = false;
addErrorDiv(id);
}
}
}
response.data = data;
return response;
}
$(function() {
var validateFormData = '';
$('#submit_btn').click(function(e) {
e.preventDefault();
validateFormData = validateForm();
if (validateFormData.is_form_validate) {
submitForm(validateFormData.data);
}
});
});
});
}).call(this, require || RequireJS.require);
(function(require) {
'use strict';
require([
'edx-ui-toolkit/js/utils/html-utils',
'/static/example/js/leanModal.js'
], function(HtmlUtils) { // eslint-disable-line no-unused-vars // jshint ignore:line
function expandDescription(entireDescriptionContent) {
var showLessLinkHtml = '<a id="description_less" href="#" class="brand-link">Less</a>';
HtmlUtils.setHtml('.course-description', HtmlUtils.HTML(entireDescriptionContent + showLessLinkHtml));
$('#description_less').click(function(event) {
event.preventDefault();
truncateDescription(entireDescriptionContent); // eslint-disable-line no-use-before-define
});
}
function truncateDescription(entireDescriptionContent) {
var showMoreLink = '',
truncatedContent = '';
if (entireDescriptionContent.length > 500) {
showMoreLink = '... <a id="description_show" href="#" class="brand-link">See More</a>';
truncatedContent = entireDescriptionContent.substring(0, entireDescriptionContent.indexOf(' ', 500));
HtmlUtils.setHtml('.course-description', HtmlUtils.HTML(truncatedContent + showMoreLink));
$('#description_show').click(function(event) {
event.preventDefault();
expandDescription(entireDescriptionContent);
});
}
}
function expandLearningPoints(entireLearningContent) {
var showLessLinkHtml = '<a id="learning_less" href="#" class="brand-link learning-points-btn">Less</a>';
HtmlUtils.setHtml(
'.course-learning .list-bulleted',
HtmlUtils.HTML(entireLearningContent + showLessLinkHtml)
);
$('#learning_less').click(function() {
truncateLearningPoints(entireLearningContent); // eslint-disable-line no-use-before-define
});
}
function truncateLearningPoints(entireLearningContent) {
var learningPointsCount = $('.course-learning .list-bulleted').children().length,
points = '',
showMoreLink = '';
if (learningPointsCount > 6) {
points = $('.course-learning .list-bulleted').children().slice((6 - learningPointsCount));
points.remove();
showMoreLink = '<a id="learning_show" href="#" class="brand-link learning-points-btn">See More</a>';
HtmlUtils.append('.course-learning .list-bulleted', HtmlUtils.HTML(showMoreLink));
$('#learning_show').click(function(event) {
event.preventDefault();
expandLearningPoints(entireLearningContent);
});
}
}
function init() {
var entireDescriptionContent = $('.course-description').html(),
entireLearningContent = $('.course-learning .list-bulleted').html();
// Truncating the Course Description
truncateDescription(entireDescriptionContent);
// Truncating the Course learning points
truncateLearningPoints(entireLearningContent);
// Instructor Modal
$('.instructor-image').leanModal({closeButton: '.modal_close', top: '10%'});
}
init();
});
}).call(this, require || RequireJS.require);
/*eslint-disable */
(function(require) {
"use strict";
require(['edx-ui-toolkit/js/utils/html-utils'], function(HtmlUtils) {
$.fn.extend({
/*
* leanModal prepares an element to be a modal dialog. Call it once on the
* element that launches the dialog, when the page is ready. This function
* will add a .click() handler that properly opens the dialog.
*
* The launching element must:
* - be an <a> element, not a button,
* - have an href= attribute identifying the id of the dialog element,
* - have rel='leanModal'.
*/
leanModal: function(options) {
var defaults = {
top: 100,
overlay: 0.5,
closeButton: null,
position: 'fixed'
};
if ($("#lean_overlay").length === 0) {
var overlay = $("<div id='lean_overlay'></div>");
$("body").append(HtmlUtils.template(overlay)().toString());
}
options = $.extend(defaults, options);
return this.each(function() {
var o = options;
$(this).click(function(e) {
$(".modal").hide();
var modal_id = $(this).attr("href");
if ($(modal_id).hasClass("video-modal")) {
//Video modals need to be cloned before being presented as a modal
//This is because actions on the video get recorded in the history.
//Deleting the video (clone) prevents the odd back button behavior.
var modal_clone = $(modal_id).clone(true,
true);
modal_clone.attr('id', 'modal_clone');
$(modal_id).after(HtmlUtils.ensureHtml(modal_clone).toString());
modal_id = '#modal_clone';
}
$("#lean_overlay").click(function(e) {
close_modal(modal_id, e);
});
$(o.closeButton).click(function(e) {
close_modal(modal_id, e);
});
// To enable closing of email modal when copy button hit
$(o.copyEmailButton).click(function(e) {
close_modal(modal_id, e);
});
var modal_width = $(modal_id).outerWidth();
$('#lean_overlay').css({
'display': 'block',
opacity: 0
});
$('#lean_overlay').fadeTo(200, o.overlay);
$('iframe', modal_id).attr('src', $('iframe',
modal_id).data('src'));
if ($(modal_id).hasClass("email-modal")) {
$(modal_id).css({
'width': 80 + '%',
'height': 80 + '%',
'position': o.position,
'opacity': 0,
'z-index': 11000,
'left': 10 + '%',
'top': 10 + '%'
});
} else {
$(modal_id).css({
'position': o.position,
'opacity': 0,
'z-index': 11000,
'left': 50 + '%',
'margin-left': -(modal_width / 2) +
"px",
'top': o.top + "px"
});
}
$(modal_id).show().fadeTo(200, 1);
$(modal_id).find(".notice").hide().html("");
var notice = $(this).data('notice');
if (notice !== undefined) {
var $notice = $(modal_id).find(".notice");
$notice.show();
$notice.append(HtmlUtils.ensureHtml(notice).toString());
// This is for activating leanModal links that were in the notice. We should have a cleaner way of
// allowing all dynamically added leanmodal links to work.
$notice.find("a[rel*=leanModal]").leanModal({
top: 120,
overlay: 1,
closeButton: ".close-modal",
position: 'absolute'
});
}
e.preventDefault();
});
});
function close_modal(modal_id, e) {
$("#lean_overlay").fadeOut(200);
$('iframe', modal_id).attr('src', '');
$(modal_id).css({
'display': 'none'
});
if (modal_id === '#modal_clone') {
$(modal_id).remove();
}
e.preventDefault();
}
}
});
$(document).ready(function($) {
$("a[rel*=leanModal]").each(function() {
$(this).leanModal({
top: 120,
overlay: 1,
closeButton: ".close-modal",
position: 'absolute'
});
var embed = $($(this).attr('href')).find('iframe');
if (embed.length > 0 && embed.attr('src')) {
var sep = (embed.attr('src').indexOf("?") > 0) ? '&' :
'?';
embed.data('src', embed.attr('src') + sep +
'autoplay=1&rel=0');
embed.attr('src', '');
}
});
});
});
}).call(
this,
typeof define === 'function' && define.amd ? define :
(typeof RequireJS !== 'undefined' ? RequireJS.define : "")
);
/*
_ _ _ _
___| (_) ___| | __ (_)___
/ __| | |/ __| |/ / | / __|
\__ \ | | (__| < _ | \__ \
|___/_|_|\___|_|\_(_)/ |___/
|__/
Version: 1.5.9
Author: Ken Wheeler
Website: http://kenwheeler.github.io
Docs: http://kenwheeler.github.io/slick
Repo: http://github.com/kenwheeler/slick
Issues: http://github.com/kenwheeler/slick/issues
*/
/* jshint ignore:start */
!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):"undefined"!=typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){"use strict";var b=window.Slick||{};b=function(){function c(c,d){var f,e=this;e.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:a(c),appendDots:a(c),arrows:!0,asNavFor:null,prevArrow:'<button type="button" data-role="none" class="slick-prev" aria-label="Previous" tabindex="0" role="button">Previous</button>',nextArrow:'<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(a,b){return'<button type="button" data-role="none" role="button" aria-required="false" tabindex="0">'+(b+1)+"</button>"},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!1,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},e.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},a.extend(e,e.initials),e.activeBreakpoint=null,e.animType=null,e.animProp=null,e.breakpoints=[],e.breakpointSettings=[],e.cssTransitions=!1,e.hidden="hidden",e.paused=!1,e.positionProp=null,e.respondTo=null,e.rowCount=1,e.shouldClick=!0,e.$slider=a(c),e.$slidesCache=null,e.transformType=null,e.transitionType=null,e.visibilityChange="visibilitychange",e.windowWidth=0,e.windowTimer=null,f=a(c).data("slick")||{},e.options=a.extend({},e.defaults,f,d),e.currentSlide=e.options.initialSlide,e.originalSettings=e.options,"undefined"!=typeof document.mozHidden?(e.hidden="mozHidden",e.visibilityChange="mozvisibilitychange"):"undefined"!=typeof document.webkitHidden&&(e.hidden="webkitHidden",e.visibilityChange="webkitvisibilitychange"),e.autoPlay=a.proxy(e.autoPlay,e),e.autoPlayClear=a.proxy(e.autoPlayClear,e),e.changeSlide=a.proxy(e.changeSlide,e),e.clickHandler=a.proxy(e.clickHandler,e),e.selectHandler=a.proxy(e.selectHandler,e),e.setPosition=a.proxy(e.setPosition,e),e.swipeHandler=a.proxy(e.swipeHandler,e),e.dragHandler=a.proxy(e.dragHandler,e),e.keyHandler=a.proxy(e.keyHandler,e),e.autoPlayIterator=a.proxy(e.autoPlayIterator,e),e.instanceUid=b++,e.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,e.registerBreakpoints(),e.init(!0),e.checkResponsive(!0)}var b=0;return c}(),b.prototype.addSlide=b.prototype.slickAdd=function(b,c,d){var e=this;if("boolean"==typeof c)d=c,c=null;else if(0>c||c>=e.slideCount)return!1;e.unload(),"number"==typeof c?0===c&&0===e.$slides.length?a(b).appendTo(e.$slideTrack):d?a(b).insertBefore(e.$slides.eq(c)):a(b).insertAfter(e.$slides.eq(c)):d===!0?a(b).prependTo(e.$slideTrack):a(b).appendTo(e.$slideTrack),e.$slides=e.$slideTrack.children(this.options.slide),e.$slideTrack.children(this.options.slide).detach(),e.$slideTrack.append(e.$slides),e.$slides.each(function(b,c){a(c).attr("data-slick-index",b)}),e.$slidesCache=e.$slides,e.reinit()},b.prototype.animateHeight=function(){var a=this;if(1===a.options.slidesToShow&&a.options.adaptiveHeight===!0&&a.options.vertical===!1){var b=a.$slides.eq(a.currentSlide).outerHeight(!0);a.$list.animate({height:b},a.options.speed)}},b.prototype.animateSlide=function(b,c){var d={},e=this;e.animateHeight(),e.options.rtl===!0&&e.options.vertical===!1&&(b=-b),e.transformsEnabled===!1?e.options.vertical===!1?e.$slideTrack.animate({left:b},e.options.speed,e.options.easing,c):e.$slideTrack.animate({top:b},e.options.speed,e.options.easing,c):e.cssTransitions===!1?(e.options.rtl===!0&&(e.currentLeft=-e.currentLeft),a({animStart:e.currentLeft}).animate({animStart:b},{duration:e.options.speed,easing:e.options.easing,step:function(a){a=Math.ceil(a),e.options.vertical===!1?(d[e.animType]="translate("+a+"px, 0px)",e.$slideTrack.css(d)):(d[e.animType]="translate(0px,"+a+"px)",e.$slideTrack.css(d))},complete:function(){c&&c.call()}})):(e.applyTransition(),b=Math.ceil(b),e.options.vertical===!1?d[e.animType]="translate3d("+b+"px, 0px, 0px)":d[e.animType]="translate3d(0px,"+b+"px, 0px)",e.$slideTrack.css(d),c&&setTimeout(function(){e.disableTransition(),c.call()},e.options.speed))},b.prototype.asNavFor=function(b){var c=this,d=c.options.asNavFor;d&&null!==d&&(d=a(d).not(c.$slider)),null!==d&&"object"==typeof d&&d.each(function(){var c=a(this).slick("getSlick");c.unslicked||c.slideHandler(b,!0)})},b.prototype.applyTransition=function(a){var b=this,c={};b.options.fade===!1?c[b.transitionType]=b.transformType+" "+b.options.speed+"ms "+b.options.cssEase:c[b.transitionType]="opacity "+b.options.speed+"ms "+b.options.cssEase,b.options.fade===!1?b.$slideTrack.css(c):b.$slides.eq(a).css(c)},b.prototype.autoPlay=function(){var a=this;a.autoPlayTimer&&clearInterval(a.autoPlayTimer),a.slideCount>a.options.slidesToShow&&a.paused!==!0&&(a.autoPlayTimer=setInterval(a.autoPlayIterator,a.options.autoplaySpeed))},b.prototype.autoPlayClear=function(){var a=this;a.autoPlayTimer&&clearInterval(a.autoPlayTimer)},b.prototype.autoPlayIterator=function(){var a=this;a.options.infinite===!1?1===a.direction?(a.currentSlide+1===a.slideCount-1&&(a.direction=0),a.slideHandler(a.currentSlide+a.options.slidesToScroll)):(a.currentSlide-1===0&&(a.direction=1),a.slideHandler(a.currentSlide-a.options.slidesToScroll)):a.slideHandler(a.currentSlide+a.options.slidesToScroll)},b.prototype.buildArrows=function(){var b=this;b.options.arrows===!0&&(b.$prevArrow=a(b.options.prevArrow).addClass("slick-arrow"),b.$nextArrow=a(b.options.nextArrow).addClass("slick-arrow"),b.slideCount>b.options.slidesToShow?(b.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),b.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),b.htmlExpr.test(b.options.prevArrow)&&b.$prevArrow.prependTo(b.options.appendArrows),b.htmlExpr.test(b.options.nextArrow)&&b.$nextArrow.appendTo(b.options.appendArrows),b.options.infinite!==!0&&b.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):b.$prevArrow.add(b.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},b.prototype.buildDots=function(){var c,d,b=this;if(b.options.dots===!0&&b.slideCount>b.options.slidesToShow){for(d='<ul class="'+b.options.dotsClass+'">',c=0;c<=b.getDotCount();c+=1)d+="<li>"+b.options.customPaging.call(this,b,c)+"</li>";d+="</ul>",b.$dots=a(d).appendTo(b.options.appendDots),b.$dots.find("li").first().addClass("slick-active").attr("aria-hidden","false")}},b.prototype.buildOut=function(){var b=this;b.$slides=b.$slider.children(b.options.slide+":not(.slick-cloned)").addClass("slick-slide"),b.slideCount=b.$slides.length,b.$slides.each(function(b,c){a(c).attr("data-slick-index",b).data("originalStyling",a(c).attr("style")||"")}),b.$slider.addClass("slick-slider"),b.$slideTrack=0===b.slideCount?a('<div class="slick-track"/>').appendTo(b.$slider):b.$slides.wrapAll('<div class="slick-track"/>').parent(),b.$list=b.$slideTrack.wrap('<div aria-live="polite" class="slick-list"/>').parent(),b.$slideTrack.css("opacity",0),(b.options.centerMode===!0||b.options.swipeToSlide===!0)&&(b.options.slidesToScroll=1),a("img[data-lazy]",b.$slider).not("[src]").addClass("slick-loading"),b.setupInfinite(),b.buildArrows(),b.buildDots(),b.updateDots(),b.setSlideClasses("number"==typeof b.currentSlide?b.currentSlide:0),b.options.draggable===!0&&b.$list.addClass("draggable")},b.prototype.buildRows=function(){var b,c,d,e,f,g,h,a=this;if(e=document.createDocumentFragment(),g=a.$slider.children(),a.options.rows>1){for(h=a.options.slidesPerRow*a.options.rows,f=Math.ceil(g.length/h),b=0;f>b;b++){var i=document.createElement("div");for(c=0;c<a.options.rows;c++){var j=document.createElement("div");for(d=0;d<a.options.slidesPerRow;d++){var k=b*h+(c*a.options.slidesPerRow+d);g.get(k)&&j.appendChild(g.get(k))}i.appendChild(j)}e.appendChild(i)}a.$slider.html(e),a.$slider.children().children().children().css({width:100/a.options.slidesPerRow+"%",display:"inline-block"})}},b.prototype.checkResponsive=function(b,c){var e,f,g,d=this,h=!1,i=d.$slider.width(),j=window.innerWidth||a(window).width();if("window"===d.respondTo?g=j:"slider"===d.respondTo?g=i:"min"===d.respondTo&&(g=Math.min(j,i)),d.options.responsive&&d.options.responsive.length&&null!==d.options.responsive){f=null;for(e in d.breakpoints)d.breakpoints.hasOwnProperty(e)&&(d.originalSettings.mobileFirst===!1?g<d.breakpoints[e]&&(f=d.breakpoints[e]):g>d.breakpoints[e]&&(f=d.breakpoints[e]));null!==f?null!==d.activeBreakpoint?(f!==d.activeBreakpoint||c)&&(d.activeBreakpoint=f,"unslick"===d.breakpointSettings[f]?d.unslick(f):(d.options=a.extend({},d.originalSettings,d.breakpointSettings[f]),b===!0&&(d.currentSlide=d.options.initialSlide),d.refresh(b)),h=f):(d.activeBreakpoint=f,"unslick"===d.breakpointSettings[f]?d.unslick(f):(d.options=a.extend({},d.originalSettings,d.breakpointSettings[f]),b===!0&&(d.currentSlide=d.options.initialSlide),d.refresh(b)),h=f):null!==d.activeBreakpoint&&(d.activeBreakpoint=null,d.options=d.originalSettings,b===!0&&(d.currentSlide=d.options.initialSlide),d.refresh(b),h=f),b||h===!1||d.$slider.trigger("breakpoint",[d,h])}},b.prototype.changeSlide=function(b,c){var f,g,h,d=this,e=a(b.target);switch(e.is("a")&&b.preventDefault(),e.is("li")||(e=e.closest("li")),h=d.slideCount%d.options.slidesToScroll!==0,f=h?0:(d.slideCount-d.currentSlide)%d.options.slidesToScroll,b.data.message){case"previous":g=0===f?d.options.slidesToScroll:d.options.slidesToShow-f,d.slideCount>d.options.slidesToShow&&d.slideHandler(d.currentSlide-g,!1,c);break;case"next":g=0===f?d.options.slidesToScroll:f,d.slideCount>d.options.slidesToShow&&d.slideHandler(d.currentSlide+g,!1,c);break;case"index":var i=0===b.data.index?0:b.data.index||e.index()*d.options.slidesToScroll;d.slideHandler(d.checkNavigable(i),!1,c),e.children().trigger("focus");break;default:return}},b.prototype.checkNavigable=function(a){var c,d,b=this;if(c=b.getNavigableIndexes(),d=0,a>c[c.length-1])a=c[c.length-1];else for(var e in c){if(a<c[e]){a=d;break}d=c[e]}return a},b.prototype.cleanUpEvents=function(){var b=this;b.options.dots&&null!==b.$dots&&(a("li",b.$dots).off("click.slick",b.changeSlide),b.options.pauseOnDotsHover===!0&&b.options.autoplay===!0&&a("li",b.$dots).off("mouseenter.slick",a.proxy(b.setPaused,b,!0)).off("mouseleave.slick",a.proxy(b.setPaused,b,!1))),b.options.arrows===!0&&b.slideCount>b.options.slidesToShow&&(b.$prevArrow&&b.$prevArrow.off("click.slick",b.changeSlide),b.$nextArrow&&b.$nextArrow.off("click.slick",b.changeSlide)),b.$list.off("touchstart.slick mousedown.slick",b.swipeHandler),b.$list.off("touchmove.slick mousemove.slick",b.swipeHandler),b.$list.off("touchend.slick mouseup.slick",b.swipeHandler),b.$list.off("touchcancel.slick mouseleave.slick",b.swipeHandler),b.$list.off("click.slick",b.clickHandler),a(document).off(b.visibilityChange,b.visibility),b.$list.off("mouseenter.slick",a.proxy(b.setPaused,b,!0)),b.$list.off("mouseleave.slick",a.proxy(b.setPaused,b,!1)),b.options.accessibility===!0&&b.$list.off("keydown.slick",b.keyHandler),b.options.focusOnSelect===!0&&a(b.$slideTrack).children().off("click.slick",b.selectHandler),a(window).off("orientationchange.slick.slick-"+b.instanceUid,b.orientationChange),a(window).off("resize.slick.slick-"+b.instanceUid,b.resize),a("[draggable!=true]",b.$slideTrack).off("dragstart",b.preventDefault),a(window).off("load.slick.slick-"+b.instanceUid,b.setPosition),a(document).off("ready.slick.slick-"+b.instanceUid,b.setPosition)},b.prototype.cleanUpRows=function(){var b,a=this;a.options.rows>1&&(b=a.$slides.children().children(),b.removeAttr("style"),a.$slider.html(b))},b.prototype.clickHandler=function(a){var b=this;b.shouldClick===!1&&(a.stopImmediatePropagation(),a.stopPropagation(),a.preventDefault())},b.prototype.destroy=function(b){var c=this;c.autoPlayClear(),c.touchObject={},c.cleanUpEvents(),a(".slick-cloned",c.$slider).detach(),c.$dots&&c.$dots.remove(),c.$prevArrow&&c.$prevArrow.length&&(c.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),c.htmlExpr.test(c.options.prevArrow)&&c.$prevArrow.remove()),c.$nextArrow&&c.$nextArrow.length&&(c.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),c.htmlExpr.test(c.options.nextArrow)&&c.$nextArrow.remove()),c.$slides&&(c.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){a(this).attr("style",a(this).data("originalStyling"))}),c.$slideTrack.children(this.options.slide).detach(),c.$slideTrack.detach(),c.$list.detach(),c.$slider.append(c.$slides)),c.cleanUpRows(),c.$slider.removeClass("slick-slider"),c.$slider.removeClass("slick-initialized"),c.unslicked=!0,b||c.$slider.trigger("destroy",[c])},b.prototype.disableTransition=function(a){var b=this,c={};c[b.transitionType]="",b.options.fade===!1?b.$slideTrack.css(c):b.$slides.eq(a).css(c)},b.prototype.fadeSlide=function(a,b){var c=this;c.cssTransitions===!1?(c.$slides.eq(a).css({zIndex:c.options.zIndex}),c.$slides.eq(a).animate({opacity:1},c.options.speed,c.options.easing,b)):(c.applyTransition(a),c.$slides.eq(a).css({opacity:1,zIndex:c.options.zIndex}),b&&setTimeout(function(){c.disableTransition(a),b.call()},c.options.speed))},b.prototype.fadeSlideOut=function(a){var b=this;b.cssTransitions===!1?b.$slides.eq(a).animate({opacity:0,zIndex:b.options.zIndex-2},b.options.speed,b.options.easing):(b.applyTransition(a),b.$slides.eq(a).css({opacity:0,zIndex:b.options.zIndex-2}))},b.prototype.filterSlides=b.prototype.slickFilter=function(a){var b=this;null!==a&&(b.$slidesCache=b.$slides,b.unload(),b.$slideTrack.children(this.options.slide).detach(),b.$slidesCache.filter(a).appendTo(b.$slideTrack),b.reinit())},b.prototype.getCurrent=b.prototype.slickCurrentSlide=function(){var a=this;return a.currentSlide},b.prototype.getDotCount=function(){var a=this,b=0,c=0,d=0;if(a.options.infinite===!0)for(;b<a.slideCount;)++d,b=c+a.options.slidesToScroll,c+=a.options.slidesToScroll<=a.options.slidesToShow?a.options.slidesToScroll:a.options.slidesToShow;else if(a.options.centerMode===!0)d=a.slideCount;else for(;b<a.slideCount;)++d,b=c+a.options.slidesToScroll,c+=a.options.slidesToScroll<=a.options.slidesToShow?a.options.slidesToScroll:a.options.slidesToShow;return d-1},b.prototype.getLeft=function(a){var c,d,f,b=this,e=0;return b.slideOffset=0,d=b.$slides.first().outerHeight(!0),b.options.infinite===!0?(b.slideCount>b.options.slidesToShow&&(b.slideOffset=b.slideWidth*b.options.slidesToShow*-1,e=d*b.options.slidesToShow*-1),b.slideCount%b.options.slidesToScroll!==0&&a+b.options.slidesToScroll>b.slideCount&&b.slideCount>b.options.slidesToShow&&(a>b.slideCount?(b.slideOffset=(b.options.slidesToShow-(a-b.slideCount))*b.slideWidth*-1,e=(b.options.slidesToShow-(a-b.slideCount))*d*-1):(b.slideOffset=b.slideCount%b.options.slidesToScroll*b.slideWidth*-1,e=b.slideCount%b.options.slidesToScroll*d*-1))):a+b.options.slidesToShow>b.slideCount&&(b.slideOffset=(a+b.options.slidesToShow-b.slideCount)*b.slideWidth,e=(a+b.options.slidesToShow-b.slideCount)*d),b.slideCount<=b.options.slidesToShow&&(b.slideOffset=0,e=0),b.options.centerMode===!0&&b.options.infinite===!0?b.slideOffset+=b.slideWidth*Math.floor(b.options.slidesToShow/2)-b.slideWidth:b.options.centerMode===!0&&(b.slideOffset=0,b.slideOffset+=b.slideWidth*Math.floor(b.options.slidesToShow/2)),c=b.options.vertical===!1?a*b.slideWidth*-1+b.slideOffset:a*d*-1+e,b.options.variableWidth===!0&&(f=b.slideCount<=b.options.slidesToShow||b.options.infinite===!1?b.$slideTrack.children(".slick-slide").eq(a):b.$slideTrack.children(".slick-slide").eq(a+b.options.slidesToShow),c=b.options.rtl===!0?f[0]?-1*(b.$slideTrack.width()-f[0].offsetLeft-f.width()):0:f[0]?-1*f[0].offsetLeft:0,b.options.centerMode===!0&&(f=b.slideCount<=b.options.slidesToShow||b.options.infinite===!1?b.$slideTrack.children(".slick-slide").eq(a):b.$slideTrack.children(".slick-slide").eq(a+b.options.slidesToShow+1),c=b.options.rtl===!0?f[0]?-1*(b.$slideTrack.width()-f[0].offsetLeft-f.width()):0:f[0]?-1*f[0].offsetLeft:0,c+=(b.$list.width()-f.outerWidth())/2)),c},b.prototype.getOption=b.prototype.slickGetOption=function(a){var b=this;return b.options[a]},b.prototype.getNavigableIndexes=function(){var e,a=this,b=0,c=0,d=[];for(a.options.infinite===!1?e=a.slideCount:(b=-1*a.options.slidesToScroll,c=-1*a.options.slidesToScroll,e=2*a.slideCount);e>b;)d.push(b),b=c+a.options.slidesToScroll,c+=a.options.slidesToScroll<=a.options.slidesToShow?a.options.slidesToScroll:a.options.slidesToShow;return d},b.prototype.getSlick=function(){return this},b.prototype.getSlideCount=function(){var c,d,e,b=this;return e=b.options.centerMode===!0?b.slideWidth*Math.floor(b.options.slidesToShow/2):0,b.options.swipeToSlide===!0?(b.$slideTrack.find(".slick-slide").each(function(c,f){return f.offsetLeft-e+a(f).outerWidth()/2>-1*b.swipeLeft?(d=f,!1):void 0}),c=Math.abs(a(d).attr("data-slick-index")-b.currentSlide)||1):b.options.slidesToScroll},b.prototype.goTo=b.prototype.slickGoTo=function(a,b){var c=this;c.changeSlide({data:{message:"index",index:parseInt(a)}},b)},b.prototype.init=function(b){var c=this;a(c.$slider).hasClass("slick-initialized")||(a(c.$slider).addClass("slick-initialized"),c.buildRows(),c.buildOut(),c.setProps(),c.startLoad(),c.loadSlider(),c.initializeEvents(),c.updateArrows(),c.updateDots()),b&&c.$slider.trigger("init",[c]),c.options.accessibility===!0&&c.initADA()},b.prototype.initArrowEvents=function(){var a=this;a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&(a.$prevArrow.on("click.slick",{message:"previous"},a.changeSlide),a.$nextArrow.on("click.slick",{message:"next"},a.changeSlide))},b.prototype.initDotEvents=function(){var b=this;b.options.dots===!0&&b.slideCount>b.options.slidesToShow&&a("li",b.$dots).on("click.slick",{message:"index"},b.changeSlide),b.options.dots===!0&&b.options.pauseOnDotsHover===!0&&b.options.autoplay===!0&&a("li",b.$dots).on("mouseenter.slick",a.proxy(b.setPaused,b,!0)).on("mouseleave.slick",a.proxy(b.setPaused,b,!1))},b.prototype.initializeEvents=function(){var b=this;b.initArrowEvents(),b.initDotEvents(),b.$list.on("touchstart.slick mousedown.slick",{action:"start"},b.swipeHandler),b.$list.on("touchmove.slick mousemove.slick",{action:"move"},b.swipeHandler),b.$list.on("touchend.slick mouseup.slick",{action:"end"},b.swipeHandler),b.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},b.swipeHandler),b.$list.on("click.slick",b.clickHandler),a(document).on(b.visibilityChange,a.proxy(b.visibility,b)),b.$list.on("mouseenter.slick",a.proxy(b.setPaused,b,!0)),b.$list.on("mouseleave.slick",a.proxy(b.setPaused,b,!1)),b.options.accessibility===!0&&b.$list.on("keydown.slick",b.keyHandler),b.options.focusOnSelect===!0&&a(b.$slideTrack).children().on("click.slick",b.selectHandler),a(window).on("orientationchange.slick.slick-"+b.instanceUid,a.proxy(b.orientationChange,b)),a(window).on("resize.slick.slick-"+b.instanceUid,a.proxy(b.resize,b)),a("[draggable!=true]",b.$slideTrack).on("dragstart",b.preventDefault),a(window).on("load.slick.slick-"+b.instanceUid,b.setPosition),a(document).on("ready.slick.slick-"+b.instanceUid,b.setPosition)},b.prototype.initUI=function(){var a=this;a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&(a.$prevArrow.show(),a.$nextArrow.show()),a.options.dots===!0&&a.slideCount>a.options.slidesToShow&&a.$dots.show(),a.options.autoplay===!0&&a.autoPlay()},b.prototype.keyHandler=function(a){var b=this;a.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===a.keyCode&&b.options.accessibility===!0?b.changeSlide({data:{message:"previous"}}):39===a.keyCode&&b.options.accessibility===!0&&b.changeSlide({data:{message:"next"}}))},b.prototype.lazyLoad=function(){function g(b){a("img[data-lazy]",b).each(function(){var b=a(this),c=a(this).attr("data-lazy"),d=document.createElement("img");d.onload=function(){b.animate({opacity:0},100,function(){b.attr("src",c).animate({opacity:1},200,function(){b.removeAttr("data-lazy").removeClass("slick-loading")})})},d.src=c})}var c,d,e,f,b=this;b.options.centerMode===!0?b.options.infinite===!0?(e=b.currentSlide+(b.options.slidesToShow/2+1),f=e+b.options.slidesToShow+2):(e=Math.max(0,b.currentSlide-(b.options.slidesToShow/2+1)),f=2+(b.options.slidesToShow/2+1)+b.currentSlide):(e=b.options.infinite?b.options.slidesToShow+b.currentSlide:b.currentSlide,f=e+b.options.slidesToShow,b.options.fade===!0&&(e>0&&e--,f<=b.slideCount&&f++)),c=b.$slider.find(".slick-slide").slice(e,f),g(c),b.slideCount<=b.options.slidesToShow?(d=b.$slider.find(".slick-slide"),g(d)):b.currentSlide>=b.slideCount-b.options.slidesToShow?(d=b.$slider.find(".slick-cloned").slice(0,b.options.slidesToShow),g(d)):0===b.currentSlide&&(d=b.$slider.find(".slick-cloned").slice(-1*b.options.slidesToShow),g(d))},b.prototype.loadSlider=function(){var a=this;a.setPosition(),a.$slideTrack.css({opacity:1}),a.$slider.removeClass("slick-loading"),a.initUI(),"progressive"===a.options.lazyLoad&&a.progressiveLazyLoad()},b.prototype.next=b.prototype.slickNext=function(){var a=this;a.changeSlide({data:{message:"next"}})},b.prototype.orientationChange=function(){var a=this;a.checkResponsive(),a.setPosition()},b.prototype.pause=b.prototype.slickPause=function(){var a=this;a.autoPlayClear(),a.paused=!0},b.prototype.play=b.prototype.slickPlay=function(){var a=this;a.paused=!1,a.autoPlay()},b.prototype.postSlide=function(a){var b=this;b.$slider.trigger("afterChange",[b,a]),b.animating=!1,b.setPosition(),b.swipeLeft=null,b.options.autoplay===!0&&b.paused===!1&&b.autoPlay(),b.options.accessibility===!0&&b.initADA()},b.prototype.prev=b.prototype.slickPrev=function(){var a=this;a.changeSlide({data:{message:"previous"}})},b.prototype.preventDefault=function(a){a.preventDefault()},b.prototype.progressiveLazyLoad=function(){var c,d,b=this;c=a("img[data-lazy]",b.$slider).length,c>0&&(d=a("img[data-lazy]",b.$slider).first(),d.attr("src",null),d.attr("src",d.attr("data-lazy")).removeClass("slick-loading").load(function(){d.removeAttr("data-lazy"),b.progressiveLazyLoad(),b.options.adaptiveHeight===!0&&b.setPosition()}).error(function(){d.removeAttr("data-lazy"),b.progressiveLazyLoad()}))},b.prototype.refresh=function(b){var d,e,c=this;e=c.slideCount-c.options.slidesToShow,c.options.infinite||(c.slideCount<=c.options.slidesToShow?c.currentSlide=0:c.currentSlide>e&&(c.currentSlide=e)),d=c.currentSlide,c.destroy(!0),a.extend(c,c.initials,{currentSlide:d}),c.init(),b||c.changeSlide({data:{message:"index",index:d}},!1)},b.prototype.registerBreakpoints=function(){var c,d,e,b=this,f=b.options.responsive||null;if("array"===a.type(f)&&f.length){b.respondTo=b.options.respondTo||"window";for(c in f)if(e=b.breakpoints.length-1,d=f[c].breakpoint,f.hasOwnProperty(c)){for(;e>=0;)b.breakpoints[e]&&b.breakpoints[e]===d&&b.breakpoints.splice(e,1),e--;b.breakpoints.push(d),b.breakpointSettings[d]=f[c].settings}b.breakpoints.sort(function(a,c){return b.options.mobileFirst?a-c:c-a})}},b.prototype.reinit=function(){var b=this;b.$slides=b.$slideTrack.children(b.options.slide).addClass("slick-slide"),b.slideCount=b.$slides.length,b.currentSlide>=b.slideCount&&0!==b.currentSlide&&(b.currentSlide=b.currentSlide-b.options.slidesToScroll),b.slideCount<=b.options.slidesToShow&&(b.currentSlide=0),b.registerBreakpoints(),b.setProps(),b.setupInfinite(),b.buildArrows(),b.updateArrows(),b.initArrowEvents(),b.buildDots(),b.updateDots(),b.initDotEvents(),b.checkResponsive(!1,!0),b.options.focusOnSelect===!0&&a(b.$slideTrack).children().on("click.slick",b.selectHandler),b.setSlideClasses(0),b.setPosition(),b.$slider.trigger("reInit",[b]),b.options.autoplay===!0&&b.focusHandler()},b.prototype.resize=function(){var b=this;a(window).width()!==b.windowWidth&&(clearTimeout(b.windowDelay),b.windowDelay=window.setTimeout(function(){b.windowWidth=a(window).width(),b.checkResponsive(),b.unslicked||b.setPosition()},50))},b.prototype.removeSlide=b.prototype.slickRemove=function(a,b,c){var d=this;return"boolean"==typeof a?(b=a,a=b===!0?0:d.slideCount-1):a=b===!0?--a:a,d.slideCount<1||0>a||a>d.slideCount-1?!1:(d.unload(),c===!0?d.$slideTrack.children().remove():d.$slideTrack.children(this.options.slide).eq(a).remove(),d.$slides=d.$slideTrack.children(this.options.slide),d.$slideTrack.children(this.options.slide).detach(),d.$slideTrack.append(d.$slides),d.$slidesCache=d.$slides,void d.reinit())},b.prototype.setCSS=function(a){var d,e,b=this,c={};b.options.rtl===!0&&(a=-a),d="left"==b.positionProp?Math.ceil(a)+"px":"0px",e="top"==b.positionProp?Math.ceil(a)+"px":"0px",c[b.positionProp]=a,b.transformsEnabled===!1?b.$slideTrack.css(c):(c={},b.cssTransitions===!1?(c[b.animType]="translate("+d+", "+e+")",b.$slideTrack.css(c)):(c[b.animType]="translate3d("+d+", "+e+", 0px)",b.$slideTrack.css(c)))},b.prototype.setDimensions=function(){var a=this;a.options.vertical===!1?a.options.centerMode===!0&&a.$list.css({padding:"0px "+a.options.centerPadding}):(a.$list.height(a.$slides.first().outerHeight(!0)*a.options.slidesToShow),a.options.centerMode===!0&&a.$list.css({padding:a.options.centerPadding+" 0px"})),a.listWidth=a.$list.width(),a.listHeight=a.$list.height(),a.options.vertical===!1&&a.options.variableWidth===!1?(a.slideWidth=Math.ceil(a.listWidth/a.options.slidesToShow),a.$slideTrack.width(Math.ceil(a.slideWidth*a.$slideTrack.children(".slick-slide").length))):a.options.variableWidth===!0?a.$slideTrack.width(5e3*a.slideCount):(a.slideWidth=Math.ceil(a.listWidth),a.$slideTrack.height(Math.ceil(a.$slides.first().outerHeight(!0)*a.$slideTrack.children(".slick-slide").length)));var b=a.$slides.first().outerWidth(!0)-a.$slides.first().width();a.options.variableWidth===!1&&a.$slideTrack.children(".slick-slide").width(a.slideWidth-b)},b.prototype.setFade=function(){var c,b=this;b.$slides.each(function(d,e){c=b.slideWidth*d*-1,b.options.rtl===!0?a(e).css({position:"relative",right:c,top:0,zIndex:b.options.zIndex-2,opacity:0}):a(e).css({position:"relative",left:c,top:0,zIndex:b.options.zIndex-2,opacity:0})}),b.$slides.eq(b.currentSlide).css({zIndex:b.options.zIndex-1,opacity:1})},b.prototype.setHeight=function(){var a=this;if(1===a.options.slidesToShow&&a.options.adaptiveHeight===!0&&a.options.vertical===!1){var b=a.$slides.eq(a.currentSlide).outerHeight(!0);a.$list.css("height",b)}},b.prototype.setOption=b.prototype.slickSetOption=function(b,c,d){var f,g,e=this;if("responsive"===b&&"array"===a.type(c))for(g in c)if("array"!==a.type(e.options.responsive))e.options.responsive=[c[g]];else{for(f=e.options.responsive.length-1;f>=0;)e.options.responsive[f].breakpoint===c[g].breakpoint&&e.options.responsive.splice(f,1),f--;e.options.responsive.push(c[g])}else e.options[b]=c;d===!0&&(e.unload(),e.reinit())},b.prototype.setPosition=function(){var a=this;a.setDimensions(),a.setHeight(),a.options.fade===!1?a.setCSS(a.getLeft(a.currentSlide)):a.setFade(),a.$slider.trigger("setPosition",[a])},b.prototype.setProps=function(){var a=this,b=document.body.style;a.positionProp=a.options.vertical===!0?"top":"left","top"===a.positionProp?a.$slider.addClass("slick-vertical"):a.$slider.removeClass("slick-vertical"),(void 0!==b.WebkitTransition||void 0!==b.MozTransition||void 0!==b.msTransition)&&a.options.useCSS===!0&&(a.cssTransitions=!0),a.options.fade&&("number"==typeof a.options.zIndex?a.options.zIndex<3&&(a.options.zIndex=3):a.options.zIndex=a.defaults.zIndex),void 0!==b.OTransform&&(a.animType="OTransform",a.transformType="-o-transform",a.transitionType="OTransition",void 0===b.perspectiveProperty&&void 0===b.webkitPerspective&&(a.animType=!1)),void 0!==b.MozTransform&&(a.animType="MozTransform",a.transformType="-moz-transform",a.transitionType="MozTransition",void 0===b.perspectiveProperty&&void 0===b.MozPerspective&&(a.animType=!1)),void 0!==b.webkitTransform&&(a.animType="webkitTransform",a.transformType="-webkit-transform",a.transitionType="webkitTransition",void 0===b.perspectiveProperty&&void 0===b.webkitPerspective&&(a.animType=!1)),void 0!==b.msTransform&&(a.animType="msTransform",a.transformType="-ms-transform",a.transitionType="msTransition",void 0===b.msTransform&&(a.animType=!1)),void 0!==b.transform&&a.animType!==!1&&(a.animType="transform",a.transformType="transform",a.transitionType="transition"),a.transformsEnabled=a.options.useTransform&&null!==a.animType&&a.animType!==!1},b.prototype.setSlideClasses=function(a){var c,d,e,f,b=this;d=b.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),b.$slides.eq(a).addClass("slick-current"),b.options.centerMode===!0?(c=Math.floor(b.options.slidesToShow/2),b.options.infinite===!0&&(a>=c&&a<=b.slideCount-1-c?b.$slides.slice(a-c,a+c+1).addClass("slick-active").attr("aria-hidden","false"):(e=b.options.slidesToShow+a,d.slice(e-c+1,e+c+2).addClass("slick-active").attr("aria-hidden","false")),0===a?d.eq(d.length-1-b.options.slidesToShow).addClass("slick-center"):a===b.slideCount-1&&d.eq(b.options.slidesToShow).addClass("slick-center")),b.$slides.eq(a).addClass("slick-center")):a>=0&&a<=b.slideCount-b.options.slidesToShow?b.$slides.slice(a,a+b.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):d.length<=b.options.slidesToShow?d.addClass("slick-active").attr("aria-hidden","false"):(f=b.slideCount%b.options.slidesToShow,e=b.options.infinite===!0?b.options.slidesToShow+a:a,b.options.slidesToShow==b.options.slidesToScroll&&b.slideCount-a<b.options.slidesToShow?d.slice(e-(b.options.slidesToShow-f),e+f).addClass("slick-active").attr("aria-hidden","false"):d.slice(e,e+b.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false")),"ondemand"===b.options.lazyLoad&&b.lazyLoad()},b.prototype.setupInfinite=function(){var c,d,e,b=this;if(b.options.fade===!0&&(b.options.centerMode=!1),b.options.infinite===!0&&b.options.fade===!1&&(d=null,b.slideCount>b.options.slidesToShow)){for(e=b.options.centerMode===!0?b.options.slidesToShow+1:b.options.slidesToShow,c=b.slideCount;c>b.slideCount-e;c-=1)d=c-1,a(b.$slides[d]).clone(!0).attr("id","").attr("data-slick-index",d-b.slideCount).prependTo(b.$slideTrack).addClass("slick-cloned");for(c=0;e>c;c+=1)d=c,a(b.$slides[d]).clone(!0).attr("id","").attr("data-slick-index",d+b.slideCount).appendTo(b.$slideTrack).addClass("slick-cloned");b.$slideTrack.find(".slick-cloned").find("[id]").each(function(){a(this).attr("id","")})}},b.prototype.setPaused=function(a){var b=this;b.options.autoplay===!0&&b.options.pauseOnHover===!0&&(b.paused=a,a?b.autoPlayClear():b.autoPlay())},b.prototype.selectHandler=function(b){var c=this,d=a(b.target).is(".slick-slide")?a(b.target):a(b.target).parents(".slick-slide"),e=parseInt(d.attr("data-slick-index"));return e||(e=0),c.slideCount<=c.options.slidesToShow?(c.setSlideClasses(e),void c.asNavFor(e)):void c.slideHandler(e)},b.prototype.slideHandler=function(a,b,c){var d,e,f,g,h=null,i=this;return b=b||!1,i.animating===!0&&i.options.waitForAnimate===!0||i.options.fade===!0&&i.currentSlide===a||i.slideCount<=i.options.slidesToShow?void 0:(b===!1&&i.asNavFor(a),d=a,h=i.getLeft(d),g=i.getLeft(i.currentSlide),i.currentLeft=null===i.swipeLeft?g:i.swipeLeft,i.options.infinite===!1&&i.options.centerMode===!1&&(0>a||a>i.getDotCount()*i.options.slidesToScroll)?void(i.options.fade===!1&&(d=i.currentSlide,c!==!0?i.animateSlide(g,function(){i.postSlide(d);
}):i.postSlide(d))):i.options.infinite===!1&&i.options.centerMode===!0&&(0>a||a>i.slideCount-i.options.slidesToScroll)?void(i.options.fade===!1&&(d=i.currentSlide,c!==!0?i.animateSlide(g,function(){i.postSlide(d)}):i.postSlide(d))):(i.options.autoplay===!0&&clearInterval(i.autoPlayTimer),e=0>d?i.slideCount%i.options.slidesToScroll!==0?i.slideCount-i.slideCount%i.options.slidesToScroll:i.slideCount+d:d>=i.slideCount?i.slideCount%i.options.slidesToScroll!==0?0:d-i.slideCount:d,i.animating=!0,i.$slider.trigger("beforeChange",[i,i.currentSlide,e]),f=i.currentSlide,i.currentSlide=e,i.setSlideClasses(i.currentSlide),i.updateDots(),i.updateArrows(),i.options.fade===!0?(c!==!0?(i.fadeSlideOut(f),i.fadeSlide(e,function(){i.postSlide(e)})):i.postSlide(e),void i.animateHeight()):void(c!==!0?i.animateSlide(h,function(){i.postSlide(e)}):i.postSlide(e))))},b.prototype.startLoad=function(){var a=this;a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&(a.$prevArrow.hide(),a.$nextArrow.hide()),a.options.dots===!0&&a.slideCount>a.options.slidesToShow&&a.$dots.hide(),a.$slider.addClass("slick-loading")},b.prototype.swipeDirection=function(){var a,b,c,d,e=this;return a=e.touchObject.startX-e.touchObject.curX,b=e.touchObject.startY-e.touchObject.curY,c=Math.atan2(b,a),d=Math.round(180*c/Math.PI),0>d&&(d=360-Math.abs(d)),45>=d&&d>=0?e.options.rtl===!1?"left":"right":360>=d&&d>=315?e.options.rtl===!1?"left":"right":d>=135&&225>=d?e.options.rtl===!1?"right":"left":e.options.verticalSwiping===!0?d>=35&&135>=d?"left":"right":"vertical"},b.prototype.swipeEnd=function(a){var c,b=this;if(b.dragging=!1,b.shouldClick=b.touchObject.swipeLength>10?!1:!0,void 0===b.touchObject.curX)return!1;if(b.touchObject.edgeHit===!0&&b.$slider.trigger("edge",[b,b.swipeDirection()]),b.touchObject.swipeLength>=b.touchObject.minSwipe)switch(b.swipeDirection()){case"left":c=b.options.swipeToSlide?b.checkNavigable(b.currentSlide+b.getSlideCount()):b.currentSlide+b.getSlideCount(),b.slideHandler(c),b.currentDirection=0,b.touchObject={},b.$slider.trigger("swipe",[b,"left"]);break;case"right":c=b.options.swipeToSlide?b.checkNavigable(b.currentSlide-b.getSlideCount()):b.currentSlide-b.getSlideCount(),b.slideHandler(c),b.currentDirection=1,b.touchObject={},b.$slider.trigger("swipe",[b,"right"])}else b.touchObject.startX!==b.touchObject.curX&&(b.slideHandler(b.currentSlide),b.touchObject={})},b.prototype.swipeHandler=function(a){var b=this;if(!(b.options.swipe===!1||"ontouchend"in document&&b.options.swipe===!1||b.options.draggable===!1&&-1!==a.type.indexOf("mouse")))switch(b.touchObject.fingerCount=a.originalEvent&&void 0!==a.originalEvent.touches?a.originalEvent.touches.length:1,b.touchObject.minSwipe=b.listWidth/b.options.touchThreshold,b.options.verticalSwiping===!0&&(b.touchObject.minSwipe=b.listHeight/b.options.touchThreshold),a.data.action){case"start":b.swipeStart(a);break;case"move":b.swipeMove(a);break;case"end":b.swipeEnd(a)}},b.prototype.swipeMove=function(a){var d,e,f,g,h,b=this;return h=void 0!==a.originalEvent?a.originalEvent.touches:null,!b.dragging||h&&1!==h.length?!1:(d=b.getLeft(b.currentSlide),b.touchObject.curX=void 0!==h?h[0].pageX:a.clientX,b.touchObject.curY=void 0!==h?h[0].pageY:a.clientY,b.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(b.touchObject.curX-b.touchObject.startX,2))),b.options.verticalSwiping===!0&&(b.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(b.touchObject.curY-b.touchObject.startY,2)))),e=b.swipeDirection(),"vertical"!==e?(void 0!==a.originalEvent&&b.touchObject.swipeLength>4&&a.preventDefault(),g=(b.options.rtl===!1?1:-1)*(b.touchObject.curX>b.touchObject.startX?1:-1),b.options.verticalSwiping===!0&&(g=b.touchObject.curY>b.touchObject.startY?1:-1),f=b.touchObject.swipeLength,b.touchObject.edgeHit=!1,b.options.infinite===!1&&(0===b.currentSlide&&"right"===e||b.currentSlide>=b.getDotCount()&&"left"===e)&&(f=b.touchObject.swipeLength*b.options.edgeFriction,b.touchObject.edgeHit=!0),b.options.vertical===!1?b.swipeLeft=d+f*g:b.swipeLeft=d+f*(b.$list.height()/b.listWidth)*g,b.options.verticalSwiping===!0&&(b.swipeLeft=d+f*g),b.options.fade===!0||b.options.touchMove===!1?!1:b.animating===!0?(b.swipeLeft=null,!1):void b.setCSS(b.swipeLeft)):void 0)},b.prototype.swipeStart=function(a){var c,b=this;return 1!==b.touchObject.fingerCount||b.slideCount<=b.options.slidesToShow?(b.touchObject={},!1):(void 0!==a.originalEvent&&void 0!==a.originalEvent.touches&&(c=a.originalEvent.touches[0]),b.touchObject.startX=b.touchObject.curX=void 0!==c?c.pageX:a.clientX,b.touchObject.startY=b.touchObject.curY=void 0!==c?c.pageY:a.clientY,void(b.dragging=!0))},b.prototype.unfilterSlides=b.prototype.slickUnfilter=function(){var a=this;null!==a.$slidesCache&&(a.unload(),a.$slideTrack.children(this.options.slide).detach(),a.$slidesCache.appendTo(a.$slideTrack),a.reinit())},b.prototype.unload=function(){var b=this;a(".slick-cloned",b.$slider).remove(),b.$dots&&b.$dots.remove(),b.$prevArrow&&b.htmlExpr.test(b.options.prevArrow)&&b.$prevArrow.remove(),b.$nextArrow&&b.htmlExpr.test(b.options.nextArrow)&&b.$nextArrow.remove(),b.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},b.prototype.unslick=function(a){var b=this;b.$slider.trigger("unslick",[b,a]),b.destroy()},b.prototype.updateArrows=function(){var b,a=this;b=Math.floor(a.options.slidesToShow/2),a.options.arrows===!0&&a.slideCount>a.options.slidesToShow&&!a.options.infinite&&(a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),a.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===a.currentSlide?(a.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),a.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):a.currentSlide>=a.slideCount-a.options.slidesToShow&&a.options.centerMode===!1?(a.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):a.currentSlide>=a.slideCount-1&&a.options.centerMode===!0&&(a.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},b.prototype.updateDots=function(){var a=this;null!==a.$dots&&(a.$dots.find("li").removeClass("slick-active").attr("aria-hidden","true"),a.$dots.find("li").eq(Math.floor(a.currentSlide/a.options.slidesToScroll)).addClass("slick-active").attr("aria-hidden","false"))},b.prototype.visibility=function(){var a=this;document[a.hidden]?(a.paused=!0,a.autoPlayClear()):a.options.autoplay===!0&&(a.paused=!1,a.autoPlay())},b.prototype.initADA=function(){var b=this;b.$slides.add(b.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),b.$slideTrack.attr("role","listbox"),b.$slides.not(b.$slideTrack.find(".slick-cloned")).each(function(c){a(this).attr({role:"option","aria-describedby":"slick-slide"+b.instanceUid+c})}),null!==b.$dots&&b.$dots.attr("role","tablist").find("li").each(function(c){a(this).attr({role:"presentation","aria-selected":"false","aria-controls":"navigation"+b.instanceUid+c,id:"slick-slide"+b.instanceUid+c})}).first().attr("aria-selected","true").end().find("button").attr("role","button").end().closest("div").attr("role","toolbar"),b.activateADA()},b.prototype.activateADA=function(){var a=this;a.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},b.prototype.focusHandler=function(){var b=this;b.$slider.on("focus.slick blur.slick","*",function(c){c.stopImmediatePropagation();var d=a(this);setTimeout(function(){b.isPlay&&(d.is(":focus")?(b.autoPlayClear(),b.paused=!0):(b.paused=!1,b.autoPlay()))},0)})},a.fn.slick=function(){var f,g,a=this,c=arguments[0],d=Array.prototype.slice.call(arguments,1),e=a.length;for(f=0;e>f;f++)if("object"==typeof c||"undefined"==typeof c?a[f].slick=new b(a[f],c):g=a[f].slick[c].apply(a[f].slick,d),"undefined"!=typeof g)return g;return a}});
/* jshint ignore:end */
/* jshint strict: false */
var $el = $('#sticky'),
stickyBarTop = $('#sticky').offset().top,
MIN_WEB_WIDTH = 768;
$(document).ready(function() {
'use strict';
var makeSticky = function() {
$el.css({
position: 'fixed',
top: 0,
width: '100%',
'z-index': '10',
'box-shadow': '0px 1px 5px rgba(0,0,0,0.5)'
});
$('.sticky-course-title').removeClass('hidden');
$('.course-run').addClass('hidden');
};
var removeSticky = function() {
$el.css({
position: 'static',
'z-index': '0',
'box-shadow': 'none'
});
$('.sticky-course-title').addClass('hidden');
$('.course-run').removeClass('hidden');
};
var initializeSticky = function() {
var windowTop = '';
if ($el.length) { // Element should exist
$(window).scroll(function() {
if ($(window).width() >= MIN_WEB_WIDTH) {
windowTop = $(window).scrollTop();
if (stickyBarTop < windowTop) {
makeSticky();
} else {
removeSticky();
}
}
});
}
};
initializeSticky();
$(window).resize(function() {
if ($(window).width() >= MIN_WEB_WIDTH) {
makeSticky();
} else {
removeSticky();
}
});
});
.tabcordion{
padding: 1rem 0;
min-height: 500px;
margin: 1rem 0 0;
h2{
font-size: 1.5rem;
color: $black;
letter-spacing: 0;
}
ul {
margin: 0;
padding: 0;
position: relative;
li {
list-style: none;
display: block;
margin-left: 0;
overflow: hidden;
margin-bottom: 3px;
vertical-align: top;
a {
border: 0;
background: #d2d0d0;
display: block;
padding: 1.25rem 2rem 1.25rem 1rem;
position: relative;
color: $black;
&:hover, &.active, &:focus {
color: $black;
}
&:after{
content: "\f0da";
position: absolute;
right: 20px;
top: 22px;
font-family: 'FontAwesome';
font-size: 1.3rem;
color: #9b9b9b;
}
&.active{
&:after{
content: "\f0dd";
top: 18px;
}
}
}
ul {
li {
a {
padding: 10px 25px;
border-bottom: 1px dotted #ccc;
}
}
}
&:first-child{
margin-left: 0;
a{
padding-left: 1rem;
}
}
}
section {
display: none; /* I NEED TO FIX THIS */
float: left;
overflow: hidden;
padding: 1rem;
background-color: transparent;
p{
line-height: 1.75rem;
}
}
}
}
@media only screen and (min-width: 30em) {
.tabcordion {
ul {
position: relative;
border: none;
li {
display: inline-block;
margin-left: -4px;
margin-bottom: 0;
a {
display: inline-block;
padding: 1.25rem 1rem;
text-decoration: none;
background-color: transparent;
color: $brand-color;
font-size: 1.1rem;
z-index: 1;
position: relative;
&:hover, &.active {
color: $black;
border-bottom: 5px solid $brand-color;
&:after{
content: "";
display: none;
}
}
&:after{
content: "";
display: none;
}
}
&:first-child{
margin-left: -4px;
display: inline-block;
a{
padding-left: 0;
}
}
}
section {
padding: 2% 0;
position: absolute;
top: 42px;
left: 0;
border-top: 5px solid $dark;
margin-top: 14px;
z-index: 0;
}
}
}
}
body{
background-color: $body-background-color !important;
*{
&:focus{
outline: 0;
}
}
.content-wrapper{
max-width: none;
}
}
//Helper Classes
.pull-left{
float: left !important;
}
.pull-right{
float: right !important;
}
.block{
display: block;
}
img{
max-width: 100%;
}
a{
&:hover{
text-decoration: none;
opacity: 0.8;
}
&:focus{
text-decoration: none;
outline: none;
}
&.brand-link{
color: $brand-color !important;
}
}
#success-message{
padding: 0;
.alert {
min-width: 0;
border-left-width: 0;
border-right-width: 0;
border-bottom-width: 0;
box-shadow: none;
}
}
.grid-container{
padding: 0 1rem;
}
.show-user-menu{
display: block !important;
}
.hidden-mobile{
display: none;
}
.visible-mobile{
display: block;
}
.light-bg{
background-color: $course-section-background-color;
}
.btn-client{
background-color: $brand-color !important;
border-color: $brand-color !important;
font-weight: normal !important;
box-shadow: none !important;
color: $white !important;
text-shadow: none !important;
&:hover{
background-color: lighten($brand-color, 10%) !important;
background-image: none !important;
}
&.btn-elevated{
box-shadow: inset 0 -3px 0 0 darken($brand-color, 15%) !important;
}
}
.btn-success{
background-color: $success-base !important;
color: $white !important;
border-color: $success-base;
&:hover{
background-color: lighten($success-base, 10%) !important;
}
}
.btn-block{
width: 100% !important;
}
.inner-container{
padding: 0 1.25rem;
}
h2{
font-size: 1.5rem;
font-family: $brand-font;
margin: 1.25rem 0;
text-transform: none;
}
h1, h2, h3, h4, h5, h6{
font-family: $brand-font;
}
.col-centered{
float: none !important;
margin-left: auto !important;
margin-right: auto !important;
}
.input-group{
margin-bottom: 1.25rem;
}
.text-light{
color: $base !important;
}
.input-lg{
line-height: 55px !important;
height: 55px !important;
padding: 0 1.25rem !important;
}
.form-block{
label, input, select, button, textarea{
display: block;
width: 100%;
font-family: $brand-font;
font-style: normal;
margin-bottom: 0.5rem !important;
&.has-error{
border-color: $error-base;
border-radius: 4px 4px 0 0;
margin-bottom: 0 !important;
+ .field-message{
border-radius: 0 0 4px 4px;
width: 100%;
}
}
}
input{
box-shadow: none;
border: 1px solid $light;
border-radius: 4px;
font-size: 1rem;
width: 100%;
&:focus, &:active{
box-shadow: none;
border-color: $dark;
}
}
select{
-webkit-appearance: none;
-moz-appearance: none;
border-color: $light;
appearance: none;
&::-ms-expand{
display: none;
}
}
.custom-select{
position: relative;
select{
padding-right: 3rem !important;
}
&:after{
content: "\f0da";
position: absolute;
right: 20px;
top: 20px;
font-family: 'FontAwesome';
font-size: 1.3rem;
color: $base;
}
}
textarea{
height: 280px;
border-color: $light;
box-shadow: none;
resize: none;
padding: 1rem;
}
button{
margin-top: 2.5rem;
padding: 1.25rem;
}
}
.list-bulleted{
li{
margin-bottom: 0.2rem !important;
padding-left: 0.5rem !important;
line-height: 1.5rem;
.brand-link{
display: inline;
}
}
}
.btn-enroll-mobile{
margin-bottom: 2rem;
.btn-enroll{
max-width: 95%;
margin: auto;
border-radius: 3px;
}
}
//Modals
.modal {
border-radius: 0px !important;
background: #FFFFFF !important;
.inner-wrapper {
padding: 0px !important;
border: none !important;
}
}
.modal-custom {
width: 320px;
background-color: $white;
padding: 30px 30px;
position: fixed !important;
overflow: auto;
overflow-x: hidden;
top: 10%;
bottom: 10%;
left: calc(50% - 160px) !important;
margin-left: 0 !important;
z-index: 999;
.btn-close {
position: absolute !important;
right: 20px !important;
top: 20px !important;
cursor: pointer;
.fa {
font-size: 1.75em;
color: $x-dark;
}
}
&.custom-video-modal {
padding: 10px;
max-height: 360px;
.inner-wrapper, iframe {
height: 100%;
width: 100%;
}
}
.modal-body{
overflow: hidden !important;
position: relative !important;
width: 100%;
.modal-header{
display: block;
width: 100%;
margin-bottom: 2rem !important;
margin-left: 0 !important;
margin-right: 0 !important;
.instructor-data{
display: block;
.thumbnail{
display: block;
width: 100%;
padding-bottom: 0;
img{
border-radius: 50%;
border: 5px solid $light;
margin-bottom: 1rem;
}
}
h3{
display: block;
width: 100%;
vertical-align: middle;
font-size: 1.5em;
line-height: normal;
color:$black;
margin-bottom: 0;
span{
display: block;
font-size: 1rem;
line-height: 1.1rem;
color: $x-dark;
&:last-child{
color: $dark;
font-size: .8rem;
line-height: 1.1rem;
margin-top: 5px;
}
}
}
}
}
.instructor-bio{
line-height: 1.5rem;
margin-bottom: 2rem;
color: $x-dark;
margin: 0 !important;
font-size: 1rem;
color: $dark;
}
.links{
a{
margin-right: 0;
display: block;
margin-bottom: 0.5rem;
}
}
}
}
//Header
header.header-main {
min-height: 100px;
.navbar-collapse{
.collapsed-button{
position: absolute;
right: 20px;
top: 38px;
cursor: pointer;
float: right;
span{
display: block;
width: 25px;
height:4px;
background-color: $x-dark;
margin-bottom: 3px;
}
}
ul{
display: none;
&.show-menu{
display: block;
}
.language-selection {
display: inline-block;
position: relative;
}
.language-selection select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: transparent;
border: 0;
color: $brand-color;
font-family: $brand-font;
font-weight: 400;
font-style: normal;
padding: 0 20px;
position: relative;
z-index: 1;
}
.language-selection select::ms-expand {
display: none;
}
.language-selection .fa-globe {
position: absolute;
z-index: 0;
top: 4px;
left: 2px;
color: #8d1221;
}
.language-selection .fa-angle-down {
position: absolute;
right: 5px;
top: 4px;
color: #8d1221;
}
}
}
.logo{
line-height: 94px;
margin-left: 0;
a{
border-bottom: 0 !important;
img{
vertical-align: middle;
width: auto;
height: auto;
}
}
}
.list-inline{
transition: all .2s;
position: absolute;
top: 100px;
border-top: 1px solid $light;
right: 0;
left: 0;
background-color: $white;
z-index: 10;
box-shadow: 0px 2px 3px $light;
padding: 1rem 0;
li{
float: right;
display: inline-block;
vertical-align: middle;
line-height: normal;
padding: 0.5rem;
font-size: 1rem;
width: 100%;
text-align: center;
a{
line-height: normal;
color: $x-dark;
}
&.user-account{
margin-right: 1rem;
position: relative;
.user-img{
display: inline-block;
width: 50px;
height: 50px;
line-height: 100px;
vertical-align: middle;
margin-right: 0.6rem;
img {
vertical-align: top;
width: 100%;
}
}
.user-name{
cursor: pointer;
position: relative;
display: inline-block;
&:after{
content: "\f0d7";
position: absolute;
right: -1rem;
font-family: 'FontAwesome';
top: 0.2rem;
}
}
ul{
display: none;
position: relative;
background-color: $white;
box-shadow: 0px 2px 24px rgba(0,0,0,0.3);
width: 50%;
margin: auto;
margin-top: 0.5rem;
border: 1px solid $light;
li{
border-bottom: 1px solid lighten($light, 10%);
background: $white;
float: none;
a{
display: block;
}
}
&:before{
content: "\f0d8";
position: absolute;
font-family: 'FontAwesome';
right: 1rem;
top: -20px;
color: $white;
font-size: 2rem;
line-height: normal;
}
}
}
}
}
}
//Hero
.hero {
min-height: 22em;
position: relative;
z-index: 0;
background-size: cover !important;
.tint-dark {
min-height: 22em;
max-height: 350px;
background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=1); /* IE6-9 */
.grid-manual {
position: relative;
.text-tint {
position: absolute;
top: 0;
bottom: 0;
height: 352px;
display: flex;
align-items: center;
p {
font-size: 1.5rem;
color: $white;
line-height: 1.5em;
span {
display: block;
font-size: 1rem;
}
.btn-neutral {
border-color: $white;
padding: 0.8em 2em;
color: $white;
margin-left: 2px;
font-weight: normal;
background-color: transparent;
i.fa {
font-size: 0.6em;
margin-left: 1.5em;
vertical-align: middle;
margin-top: 1px;
}
&:hover{
text-decoration: none;
}
}
}
&.small{
height: 250px;
}
}
}
&.no-background-mobile{
background: none;
}
}
&.hero-main{
background: url("../images/hero-home-page.png") no-repeat top center !important;
background-size: cover !important;
}
&.hero-catalog{
background: url("../images/hero-course-catalog.jpg") no-repeat top center !important;
background-size: cover !important;
}
&.hero-video{
background: none;
.hero-image {
display: none;
position: absolute;
right: 0;
left: 0;
min-height: 22em;
}
.grid-container{
.row{
height: auto;
.description{
.data{
padding: 7% 0 0 0;
h1{
font-size: 1.5rem;
color: $black;
line-height: normal;
padding-left: 1rem;
text-align: left;
span{
display: block;
}
}
p{
font-size: 1rem;
padding-left: 1rem;
color: $x-dark;
line-height: normal;
margin-top: 1.2rem;
padding-bottom: 2rem;
}
}
}
.video{
float: none;
.video-data{
position: relative;
text-align: center;
line-height: normal;
max-width: none;
img{
border: 0;
width: 100%;
}
.play-btn{
content: "";
background: url("../images/vid-btn.png") no-repeat center center;
width: 80px;
height: 80px;
position: absolute;
left: calc(50% - 40px);
top: calc(50% - 40px);
z-index: 1;
}
}
}
}
}
}
&.hero-small {
min-height: 15.625rem;
.tint-dark{
min-height: 15.625rem;
}
}
}
//Courses
.courses-section {
background-color: $course-section-background-color;
.courses-container {
max-width: 1128px;
padding: 0 1.04167%;
.highlighted-courses {
.courses {
float: none;
padding: 1.5rem 0;
h2{
.course-list-heading{
font-size: 1.5rem;
}
}
.course-title{
color: $brand-color;
font-size: 1.25rem;
padding: 0 1.25rem;
margin: 5px 0;
max-height: 72px;
overflow: hidden;
}
.course-list{
padding: 1.5rem 0;
.courses-listing-item{
padding: 0 5%;
.cover-image{
height: 176px;
&:before{
height: 176px;
}
.learn-more{
top: 62px;
}
}
.course-info{
height: 165px;
.course-organization{
padding: 5px 20px;
font-size: 1rem;
color: $x-dark;
}
.course-date{
color: $base;
font-size: 1rem;
padding: 0 1.25rem;
span{
display: block;
color: $x-dark;
}
}
}
.course{
border: 0;
box-shadow: none;
background-color: $white;
border-bottom: 6px solid $brand-color;
}
}
}
}
}
}
}
//About
.about-container{
max-width: 70.5em;
padding: 1.5em 1.04167% 3em;
margin-left: auto;
margin-right: auto;
.about-list{
padding: 1.5rem 0;
.about-icon{
img{
width: 150px;
}
span{
font-weight: bold;
}
}
p{
padding: 1.25rem 1.25rem 0;
line-height: 1.4em;
font-size: 1rem;
color: $x-dark;
span{
display: block;
}
}
&.slidable {
.slick-arrow{
position: absolute;
background-color: $brand-color;
width: 40px;
height: 60px;
z-index: 1;
text-align: center;
line-height: 60px;
color: $white;
font-size: 2rem;
top: 65px;
cursor: pointer;
&[class*="left"]{
left: 0;
border-radius: 0 2px 2px 0;
}
&[class*="right"]{
right: 0;
border-radius: 2px 0 0 2px;
}
}
.slick-slide img {
display: inline-block;
}
*:focus, *:active{
outline: none;
}
}
}
.btn-neutral{
border-color: $brand-color;
color: $brand-color;
&:hover{
background-color: $brand-color;
color: $white;
}
}
}
//About Us
.main-heading {
background-color: red;
height: 70px;
margin-bottom: 20px;
}
.message-image {
border: 3px solid gray;
border-radius: 50%;
}
//Testimonials
.testimonial-main{
padding: 1.5em 1.04167%;
background-color: $course-section-background-color;
.grid-manual{
max-width: 70.5em;
margin-left: auto;
margin-right: auto;
padding: 1.5em 1.04167%;
}
p{
line-height: 1.5em;
text-align: center;
&:last-child{
margin-bottom: 0;
}
}
img{
margin-bottom: 1.25rem;
}
}
//Course Details
.course-info{
.course-detail{
clear: both;
.inner-container{
padding: 1.8rem 1.25rem;
.sticky-course-title{
line-height: 1.5rem;
height: 45px;
display: flex;
align-items: center;
margin-top: 0;
word-break: break-word;
}
}
[class*="col"]{
padding-top: 0.5rem;
margin-bottom: 1rem;
span{
display: block;
color: $black;
font-size: 1.25rem;
margin-top: .4rem;
}
&:last-child{
padding-top: 0;
}
}
.btn-enroll{
border-radius: 3px;
text-align: center;
margin-top: 1rem;
padding: 1rem 1.875rem !important;
}
}
.description-container{
padding: 0.5rem 0;
.learning-points-btn{
display: block;
padding: 1rem 0.6rem;
}
h2{
color: $black;
font-size: 1.25rem;
}
p{
line-height: 1.5rem;
margin-bottom: 1rem;
}
ul{
margin-left: 2rem;
li{
margin-bottom: 0.8rem;
padding-left: 0.5rem;
}
}
.extras{
margin-top: 1.5rem;
h3{
font-size: 0.9rem;
}
.sponsored-logo{
margin-bottom: 3rem;
}
.social-icons{
margin-bottom: 3rem;
margin-left: 0;
overflow: hidden;
li{
list-style-type: none;
padding-left: 0.5rem !important;
float: left;
.icon{
background-color: $brand-color;
border-radius: 50%;
text-align: center;
width: 50px;
height: 50px;
line-height: 60px;
.fa{
color: $white;
font-size: 1.9rem;
&.fa-google-plus{
line-height: 54px;
}
}
}
}
}
.course-features{
margin-top: 2rem;
background-color: #fafafa;
padding: 2rem;
border-radius: 10px;
font-size: 1rem;
.row{
padding: .8rem 0;
border-bottom: 1px solid $light;
&:last-child{
border-bottom: 0;
}
}
&.group-purchase{
h2{
margin-top: 0;
}
a.btn-enroll{
border-radius: 3px;
padding: 1rem;
text-align: center;
margin-bottom: 1rem;
}
}
}
}
.instructors{
display: table;
width: 100%;
.modal {
.btn-close {
position: relative;
top: -30px;
right: -30px;
float: right;
z-index: 11000;
color: #FFFFFF;
cursor: pointer;
}
.modal-body {
position: absolute;
overflow: scroll;
top: 5%;
bottom: 5%;
font-size: 14px;
line-height: 20px;
& > div {
margin: 0 20px;
}
}
}
[class*="col"]{
display: table-row;
.thumbnail{
display: table-cell;
vertical-align: middle;
margin-right: 1.3rem;
padding-bottom: 1.5rem;
width: 120px;
img {
border-radius: 50%;
border: 6px solid #D3D3D3;
}
}
p{
display: table-cell;
vertical-align: middle;
margin-bottom: 0;
margin-top: 0;
color: $brand-color;
line-height: 1rem;
padding-left: 1.3rem;
padding-bottom: 1.5rem;
font-size: 0.8rem;
span{
display: block;
color: $dark;
margin-top: 0.6rem;
&.organization {
font-weight: bold;
}
}
}
}
}
}
}
// Profile page
.account-settings-container {
.wrapper-profile-section-two {
margin-bottom: 5rem;
}
}
.view-profile {
.profile-image-field {
.image-wrapper {
.upload-button-input{
top: 0;
opacity: 0;
}
}
}
}
// Static pages
.page-heading{
height: 110px;
background: url("../images/page-heading.jpg") center center no-repeat;
background-size: cover;
h1{
background-color: rgba($brand-color , 0.7);
text-align: center;
line-height: 110px;
color: $white;
font-size: 1.5rem;
margin: 0;
}
}
.static-content{
padding: 3rem 0;
h1{
font-size: 1.5rem;
margin-top: 1rem;
color: $black;
text-align: left;
letter-spacing: 0;
}
.honor-code-heading{
text-align: center !important;
}
h2{
font-size: 1.25rem;
color: $black;
line-height: 1.6rem;
text-transform: uppercase;
}
h3{
font-size: 1rem;
color: $black;
line-height: 1.6rem;
text-transform: uppercase;
}
.brand-link{
display: block;
margin: 2rem 0;
}
p{
margin-top: 1rem;
margin-bottom: 2rem;
color: $dark;
line-height: 1.5rem;
.brand-link {
display: inline;
margin: 0;
}
}
.mission-statement{
margin-top: 1rem;
img {
border-radius: 50%;
border: 6px solid #D3D3D3;
width: 120px;
}
p{
font-size: 1.05rem;
}
h3{
font-size: 1rem;
color: $black;
span{
color: $dark;
display: block;
}
}
}
hr{
border-top: 3px solid $course-section-background-color;
margin-bottom: 4rem;
}
.edx-intro{
p{
margin-top: 2.5rem;
}
}
.bordered-list{
margin: 0.5rem 0 2rem;
li{
list-style-type: none;
margin-bottom: 0;
border-bottom: 2px solid $course-section-background-color;
a{
padding: 0.8rem 0.5rem 0.8rem 0;
line-height: 1.5rem;
color: $brand-color;
font-size: 1rem;
display: inline-block;
word-break: break-word;
}
}
}
.list-divided {
text-transform: capitalize;
margin-bottom: 2rem !important;
.brand-link{
display: inline;
line-height: 1.4rem;
}
}
.response {
.question{
color: $brand-color;
cursor: pointer;
}
.answer {
overflow: hidden;
display: none;
}
}
#list-bulleted{
margin-bottom: 2rem;
li{
line-height: 1.5rem;
}
.brand-link{
display: inline;
}
}
}
//Footer
.footer-main{
padding: 2em 0;
border-top: 3px solid $course-section-background-color;
.logo{
margin-bottom: 1em;
}
ul{
list-style: none;
margin-left: 1.5em;
li{
color: $dark;
padding: .3em 0;
a{
font-size: 1em;
color: $dark !important;
&:hover{
color: $dark !important;
text-decoration: none;
}
}
&:first-child{
font-weight:bold;
}
&:last-child{
margin-bottom: 2em;
}
}
}
.footer-logo{
text-align: center;
img{
margin-bottom: 1.5rem;
width: auto;
height: 44px;
}
}
.open-edx-logo{
ul{
li{
text-align: left;
img{
max-width: 80%;
}
}
}
}
}
// Shopping Cart
%shopping_cart_btn {
background: $brand-color !important;
border-color: $brand-color !important;
box-shadow: none;
font-weight: normal;
text-shadow: none;
}
.shopping-cart {
.discount button.blue {
@extend %shopping_cart_btn;
}
div[name='billing'] button[name='billing-details'] {
@extend %shopping_cart_btn;
}
form button[type='submit'] {
@extend %shopping_cart_btn;
}
a.blue {
@extend %shopping_cart_btn;
}
}
// Dashboard
.dashboard {
.wrapper-action-more {
width: inherit;
}
.wrapper-find-courses {
margin-top: 66px;
}
}
// Courseware
.view-in-course {
.home {
box-sizing: content-box;
}
.course-tabs {
li {
margin-bottom: 0;
}
}
#content {
padding-bottom: 60px;
}
section.wiki .wiki-wrapper>header {
box-sizing: content-box;
}
}
.discussion {
#content {
padding-bottom: 60px;
}
}
//Media Queries
@media screen and (min-width: 30em){
.hero{
.tint-dark {
.grid-manual {
.text-tint {
.btn-neutral {
padding: 0.8em 2em;
}
}
}
}
}
.courses-section {
.courses-container {
.highlighted-courses {
.courses {
.course-info{
height: 165px;
}
.course-list{
.courses-listing-item{
padding: 0;
}
}
}
}
}
}
.footer-main{
.footer-logo{
text-align: center;
}
}
.visible-mobile{
display: none;
}
.hidden-mobile{
display: block;
}
.testimonial-main{
p{
text-align: left;
}
img{
margin-bottom: 0;
}
}
}
@media screen and (min-width: 48em){
.btn-enroll-mobile{
display: none;
}
header.header-main{
.logo a img {
height: 44px;
}
.collapsed-button{
display: none;
}
.navbar-collapse{
ul{
display: block;
transition: all .2s;
position: relative;
top: inherit;
right: inherit;
left: inherit;
border-top: 0;
background-color: transparent;
box-shadow: none;
padding: 0;
li{
width: auto;
text-align: left;
line-height: 100px;
padding: 0 0.9rem;
a{
&.btn-neutral{
padding: 0.625rem 1.25rem;
}
}
&.user-account{
ul{
position: absolute;
right: 1rem;
top: 100%;
width: 100%;
margin-top: -1rem;
li{
display: block;
float: none;
line-height: normal;
a{
padding: 0.5rem;
display: inline-block;
}
}
}
}
}
}
}
}
.footer-main{
.footer-logo{
text-align: left;
}
.open-edx-logo{
ul{
li{
text-align: right;
img{
max-width: 80%;
}
}
}
}
}
.hero {
.tint-dark {
.grid-manual {
.text-tint {
p {
font-size: 40px;
span {
display: block;
font-size: 1.5rem;
}
}
}
}
}
&.hero-video{
background: rgba(0,0,0,0.6);
.hero-image {
display: block;
background-size: cover !important;
}
.tint-dark {
background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=1); /* IE6-9 */
}
.grid-container{
.row{
height: 22rem;
.description{
.data{
padding: 11.5% 2% 0 0;
h1{
color: $white;
font-size: 2.5rem;
}
p{
color: $white;
font-size: 1.3rem;
}
}
}
.video{
float: right;
.video-data{
line-height: 352px;
max-width: 95%;
img{
border: 3px solid $white;
width: auto;
}
}
}
}
}
}
}
.course-info {
.course-detail {
[class*="col"] {
margin-bottom: 0;
}
.btn-enroll{
margin-top: 0;
}
}
.description-container{
.expandable{
max-height: 224px;
}
}
}
.modal-custom{
display:none;
width: 540px;
padding: 30px 30px;
left: calc(50% - 270px) !important;
.modal-body{
.modal-header{
display: table;
width: 100%;
.instructor-data{
display: table-row;
.thumbnail{
display: table-cell;
width: 25%;
padding-bottom: 0;
img{
margin-bottom: 0;
}
}
h3{
display: table-cell;
width: 65%;
padding: 1rem;
}
}
}
.links{
a{
margin-right: 1.5rem;
display: inline-block;
margin-bottom: 0;
}
}
}
}
}
@media screen and (min-width: 64em){ /* 980px */
.footer-main {
.footer-logo {
text-align: left;
}
}
}
@media screen and (min-width: 80em){
.footer-main {
.footer-logo {
text-align: left;
}
}
}
@import 'lms/static/sass/partials/base/variables';
$white: #ffffff;
$body-background-color: $white;
$x-dark: #34383a;
$light: #d2d0d0;
$dark: #6b6969;
$course-section-background-color: #f7f7f7;
$brand-color: $dark;;
$base: #9b9b9b;
$success-base: #25b85a;
$error-base: #b20610;
$brand-font: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
$action-primary-fg: $brand-color;
$action-primary-bg: lighten($brand-color, 10%);
$action-primary-shadow: $brand-color !default;
$link-color: $brand-color !default;
// LMS - CSS application architecture
// Version 1 styling (pre-Pattern Library)
// ====================
// libs and resets *do not edit*
@import 'bourbon/bourbon'; // lib - bourbon
@import 'vendor/bi-app/bi-app-ltr'; // set the layout for left to right languages
// BASE *default edX offerings*
// ====================
// base - utilities
@import 'base/reset';
@import 'base/variables';
@import 'base/mixins';
// This comment is used by preprocess_assets.py to include resources from a
// theme, for old-style deprecated theming.
//<THEME-OVERRIDE>
@import 'build-lms-v1'; // shared app style assets/rendering
// ------------------------------
// LMS main styling
// Version 2 - introduces the Pattern Library
// NOTE: This is the left-to-right (LTR) configured style compile.
// It should mirror lms-main-v2-rtl w/ the exception of bi-app references.
// Load the LTR version of the edX Pattern Library
$pattern-library-path: '../../edx-pattern-library' !default;
@import 'edx-pattern-library/pattern-library/sass/edx-pattern-library-ltr';
// base - utilities
@import 'base/variables';
// Load the shared build
@import 'build-lms-v2';
// Load overrides
@import "overrides";
@import "accordion";
/* Slider */
.slick-slider {
position: relative;
display: block;
-moz-box-sizing: border-box;
box-sizing: border-box;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}
.slick-list {
position: relative;
overflow: hidden;
display: block;
margin: 0;
padding: 0;
&:focus {
outline: none;
}
&.dragging {
cursor: pointer;
cursor: hand;
}
}
.slick-slider .slick-track,
.slick-slider .slick-list {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
.slick-track {
position: relative;
left: 0;
top: 0;
display: block;
&:before,
&:after {
content: "";
display: table;
}
&:after {
clear: both;
}
.slick-loading & {
visibility: hidden;
}
}
.slick-slide {
float: left;
height: 100%;
min-height: 1px;
[dir="rtl"] & {
float: right;
}
img {
display: block;
}
&.slick-loading img {
display: none;
}
display: none;
&.dragging img {
pointer-events: none;
}
.slick-initialized & {
display: block;
}
.slick-loading & {
visibility: hidden;
}
.slick-vertical & {
display: block;
height: auto;
border: 1px solid transparent;
}
}
.slick-arrow.slick-hidden {
display: none;
}
## mako
<%page expression_filter="h"/>
<%namespace name='static' file='static_content.html'/>
<script type="text/template" id="about-content">
<div class="grid-manual">
<div class="row">
<div class="col col-12 text-center">
<h2>Lorem ipsum dolor sit amet, ad mea dictas audiam</h2>
</div>
</div>
<div class="row about-list text-center">
<div class="col col-4 about-list-item">
<div class="about-icon">
<img src="${static.url('images/about-img.png')}" alt="Students" />
<p>
<span>Participants</span>
Lorem ipsum dolor sit amet, ad mea dictas audiam, nec id graecis explicari.
</p>
</div>
</div>
<div class="col col-4 about-list-item">
<div class="about-icon">
<img src="${static.url('images/about-img.png')}" alt="Faculty" />
<p>
<span>Faculty</span>
Lorem ipsum dolor sit amet, ad mea dictas audiam, nec id graecis explicari.
</p>
</div>
</div>
<div class="col col-4 about-list-item">
<div class="about-icon">
<img src="${static.url('images/about-img.png')}" alt="Courses" />
<p>
<span>Courses</span>
Lorem ipsum dolor sit amet, ad mea dictas audiam, nec id graecis explicari.
</p>
</div>
</div>
</div>
<div class="row hidden more-about-btn">
<div class="col col-12 text-center">
<a href="/about" class="btn-neutral">More about this site</a>
</div>
</div>
</div>
</script>
<script src="${static.url('js/about-site.js')}"></script>
## mako
<%namespace name='static' file='static_content.html'/>
<%!
from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse
%>
<%page args="course" expression_filter="h"/>
<article class="course" id="${course.id}" role="region" aria-label="${course.display_name_with_default}">
<a href="${reverse('about_course', args=[course.id.to_deprecated_string()])}">
<header class="course-image">
<div class="cover-image">
<img src="${course.course_image_url}" alt="${course.display_name_with_default} ${course.display_number_with_default}" />
<div class="learn-more" aria-hidden=true>${_("LEARN MORE")}</div>
</div>
</header>
<div class="course-info" aria-hidden="true">
<h2 class="course-name">
<span class="course-organization">${course.display_org_with_default}</span>
<span class="course-title">${course.display_name}</span>
</h2>
<div class="course-date" aria-hidden="true">${course.start_datetime_text()} - ${course.end_datetime_text()}</div>
</div>
<div class="sr">
<ul>
<li>${course.display_org_with_default}</li>
<li>${course.display_name}</li>
<li>${_("Starts")}: <time itemprop="startDate" datetime="${course.start_datetime_text()}">${course.start_datetime_text()}</time></li>
</ul>
</div>
</a>
</article>
## mako
<%page expression_filter="h"/>
<%namespace name='static' file='static_content.html'/>
<%! from django.utils.translation import ugettext as _ %>
<section class="courses-section">
<div class="courses-container">
<div class="highlighted-courses">
% if settings.FEATURES.get('COURSES_ARE_BROWSABLE'):
<section class="courses">
<div class="grid-manual">
<div class="row">
<div class="col col-12 text-center">
<h2>
<span class="course-list-heading"> Lorem ipsum dolor sit amet</span>
</h2>
</div>
</div>
<div class="row course-list">
%for course in courses[:6]:
<div class="col col-12 sm-col-12 md-col-4 lg-col-4">
<div class="courses-listing-item">
<%include file="course.html" args="course=course" />
</div>
</div>
%endfor
</div>
</div>
</section>
% endif
</div>
</div>
</section>
## mako
<%page expression_filter="h"/>
<%namespace name='static' file='../static_content.html'/>
<%!
from itertools import izip_longest
from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse
from courseware.courses import get_course_about_section
from django.conf import settings
from edxmako.shortcuts import marketing_link
from openedx.core.lib.courses import course_image_url
from openedx.core.djangolib.markup import HTML, Text
from openedx.core.djangolib.js_utils import js_escaped_string
%>
<%inherit file="../main.html" />
<%block name="headextra">
<link rel="stylesheet" type="text/css" href="${static.url('css/slick.css')}"/>
## OG (Open Graph) title and description added below to give social media info to display
## (https://developers.facebook.com/docs/opengraph/howtos/maximizing-distribution-media-content#tags)
<meta property="og:title" content="${course.display_name_with_default}" />
<meta property="og:description" content="${get_course_about_section(request, course, 'short_description')}" />
</%block>
<%block name="js_extra">
## CourseTalk widget js script
% if show_coursetalk_widget:
<script src="//d3q6qq2zt8nhwv.cloudfront.net/s/js/widgets/coursetalk-read-reviews.js"></script>
% endif
<script src="${static.url('js/course-about.js')}"></script>
<script type="text/javascript">
(function() {
(function(require) {
require(['edx-ui-toolkit/js/utils/html-utils'], function(HtmlUtils) {
"use strict";
// Listen for click events on element tagged with the 'register' class
// Submit the hidden enrolllment form, and include information about which
// purchasing workflow is being executed (based on which button is clicked)
$(".register").click(function(event) {
var purchase_workflow = "single";
if (event.currentTarget.id.includes("bulk")) {
purchase_workflow = "bulk";
}
var event_target_input = $("<input>")
.attr("type", "hidden")
.attr("id", "purchase_workflow")
.attr("name", "purchase_workflow").val(purchase_workflow);
HtmlUtils.append("#class_enroll_form", HtmlUtils.HTML($(event_target_input)));
var enroll_form = $("#class_enroll_form");
enroll_form.submit();
event.preventDefault();
});
% if can_add_course_to_cart:
add_course_complete_handler = function(jqXHR, textStatus) {
if (jqXHR.status == 200) {
location.href = "${cart_link | n, js_escaped_string}";
}
if (jqXHR.status == 400) {
HtmlUtils.setHtml("#register_error", HtmlUtils.HTML(jqXHR.responseText ? jqXHR.responseText : "${_("An error occurred. Please try again later.")| n, js_escaped_string}"));
$("#register_error").css("display", "block");
}
else if (jqXHR.status == 403) {
location.href = "${reg_then_add_to_cart_link| n, js_escaped_string}";
}
};
$("#add_to_cart_post").click(function(event){
$.ajax({
url: "${reverse('add_course_to_cart', args=[course.id.to_deprecated_string()]) | n, js_escaped_string}",
type: "POST",
/* Rant: HAD TO USE COMPLETE B/C PROMISE.DONE FOR SOME REASON DOES NOT WORK ON THIS PAGE. */
complete: add_course_complete_handler
})
event.preventDefault();
});
% endif
## making the conditional around this entire JS block for sanity
%if settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
<%
perms_error = Text(_('The currently logged-in user account does not have permission to enroll in this course. '
'You may need to {start_logout_tag}log out{end_tag} then try the enroll button again. '
'Please visit the {start_help_tag}help page{end_tag} for a possible solution.')).format(
start_help_tag=HTML("<a href='/faq'>"), end_tag=HTML('</a>'),
start_logout_tag=HTML("<a href='/logout'>")
)
%>
$('#class_enroll_form').on('ajax:complete', function(event, xhr) {
if(xhr.status == 200) {
location.href = "${reverse('dashboard')| n, js_escaped_string}";
} else if (xhr.status == 403) {
location.href = "${reverse('course-specific-register', args=[course.id.to_deprecated_string()])| n, js_escaped_string}?course_id=${course.id | n, js_escaped_string}&enrollment_action=enroll";
} else if (xhr.status == 400) { //This means the user did not have permission
HtmlUtils.setHtml("#register_error", HtmlUtils.HTML("${perms_error| n, js_escaped_string}"));
$('#register_error').css("display", "block");
} else {
HtmlUtils.setHtml("#register_error", HtmlUtils.HTML(xhr.responseText ? xhr.responseText : "${_("An error occurred. Please try again later.")| n, js_escaped_string}"));
$('#register_error').css("display", "block");
}
});
%else:
$('#class_enroll_form').on('ajax:complete', function(event, xhr) {
if(xhr.status == 200) {
if (xhr.responseText == "") {
location.href = "${reverse('dashboard')| n, js_escaped_string}";
}
else {
location.href = xhr.responseText;
}
} else if (xhr.status == 403) {
// If the form submission receives a Forbidden response, the user is not currently authenticated
// Include the purchase workflow context along with the regular user registration location information
var purchase_workflow = "&purchase_workflow=" + $("input#purchase_workflow").val();
location.href = "${reverse('register_user')| n, js_escaped_string}?course_id=${course.id | n, js_escaped_string}&enrollment_action=enroll" + purchase_workflow;
} else {
HtmlUtils.setHtml("#register_error", HtmlUtils.HTML(xhr.responseText ? xhr.responseText : "${_("An error occurred. Please try again later.")| n, js_escaped_string}"));
$('#register_error').css("display", "block");
}
});
%endif
});
}).call(this, require || RequireJS.require);
</script>
<%include file="../about_site.html" />
<script src="${static.url('js/course_info.js')}"></script>
<script src="${static.url('js/slick.min.js')}"></script>
<script src="${static.url('js/sticky.js')}"></script>
</%block>
<%block name="pagetitle">${course.display_name_with_default}</%block>
<section class="course-info" xmlns="http://www.w3.org/1999/html">
<header class="hero hero-video grid-manual">
<div class="hero-image" style="background: url('${static.url(course_details.banner_image_asset_path)}') no-repeat center right;">
<div class="tint-dark no-background-mobile"></div>
</div>
<div class="tint-dark no-background-mobile">
<div class="grid-container grid-manual">
<div class="row">
<div class="col col-12 sm-col-12 md-col-4 lg-col-4 xl-col-4 video">
<div class="video-data">
<a href="#video-modal" class="media" rel="leanModal">
<img src="${static.url(course_details.video_thumbnail_image_asset_path)}" alt="${course_details.video_thumbnail_image_name}">
<span class="play-btn"></span>
</a>
</div>
</div>
<div class="col col-12 sm-col-12 md-col-8 lg-col-8 xl-col-8 description">
<div class="data">
<h1>${course_details.title or course.display_name}</h1>
<p>${course_details.subtitle}</p>
</div>
</div>
</div>
</div>
</div>
</header>
<div id="sticky" class="course-detail light-bg">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-6 sticky-course-title hidden">
<span>${course_details.title or course.display_name}</span>
</div>
<div class="col col-12 sm-col-12 md-col-3 course-run">
Start Date:
<span>${course_details.start_date.strftime('%b %-d, %Y')}</span>
</div>
<div class="col col-12 sm-col-12 md-col-3 course-run">
Duration:
<span>${course_details.duration}</span>
</div>
<div class="col col-12 sm-col-12 md-col-2">
Price:
<span>${course_price}</span>
</div>
<%
btn_text = 'Enroll Now'
btn_href = '#'
btn_class = ''
btn_class_bulk = ''
btn_id = ''
%>
% if user.is_authenticated() and registered:
<%
btn_text = "You are enrolled in this course"
btn_class = "disabled"
%>
% elif in_cart:
<%
btn_text = "This course is in your cart"
btn_href = cart_link
%>
% elif is_course_full:
<%
btn_text = "Course is full"
btn_class = "disabled"
btn_class_bulk = btn_class
%>
% elif invitation_only and not can_enroll:
<%
btn_text = "Enrollment in this course is by invitation only"
btn_class = "disabled"
btn_class_bulk = btn_class
%>
% elif not is_shib_course and not can_enroll:
<%
btn_text = "Enrollment is Closed"
btn_class = "disabled"
btn_class_bulk = btn_class
%>
% elif can_add_course_to_cart:
<%
btn_class = "add-to-cart"
btn_text = "Enroll Now"
%>
% if user.is_authenticated():
% if user.is_active:
<%
btn_href = "#"
btn_id = "add_to_cart_post"
%>
% else:
<%
btn_text = "Please Activate Your Account"
btn_class = "disabled"
%>
% endif
% else:
<%
btn_href = reg_then_add_to_cart_link
btn_id = "reg_then_add_to_cart"
%>
% endif
% if ecommerce_checkout and ecommerce_checkout_link and user.is_authenticated():
<%
btn_href = ecommerce_checkout_link
%>
% endif
% else:
% if ecommerce_checkout:
% if ecommerce_checkout_link:
<% btn_href = ecommerce_checkout_link %>
% else:
<% btn_href="#" %>
% endif
% if professional_mode:
% if user.is_authenticated():
<% btn_class = "add-to-cart" %>
% else:
<%
btn_class = "register"
btn_class_bulk = btn_class
%>
% endif
% endif
% endif
% endif
<div class="col col-12 sm-col-12 md-col-4">
<a href="${btn_href}" id="${btn_id}" class="btn-block btn-success btn-large btn-enroll ${btn_class}">
${_(btn_text)}
</a>
</div>
</div>
</div>
</div>
</div>
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="description-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-8">
<h2> Course Description</h2>
<div class="course-description">
<p>${course_details.description}</p>
</div>
<h2> What you'll learn</h2>
<div class="course-learning">
<ul class="list-bulleted">
% for item in course_details.learning_info:
<li>${item}</li>
%endfor
</ul>
</div>
</div>
% if can_enroll and not is_course_full:
<div class="col col-12 sm-col-12 md-col-4 pull-right extras">
<div class="course-features group-purchase">
<h2>${_("Want to purchase this course for a group?")} </h2>
<p>${_("You can purchase enrollment codes for this course to distribute to your team")}</p>
% if ecommerce_bulk_checkout_link:
<%
url = "mailto:harvardxplus@harvard.edu?Subject={course_id}%20{run}%20Bulk%20Discount".format(course_id=course_details.course_id, run=course_details.run)
link_start = HTML("<a href='{url}'>").format(url=Text(url))
%>
<a href="${ecommerce_bulk_checkout_link}" id="ecommerce_bulk_checkout_button" class="btn-block btn-success btn-large btn-enroll ${btn_class_bulk}">${_("Purchase for a Group")}</a>
<p>
${Text(_("Bulk discounts may apply for groups larger than 10. Contact {link_start}harvardxplus@harvard.edu{link_end} for more information.")).format(
link_start=HTML(link_start),
link_end=HTML('</a>')
)}
</p>
% else:
<%
url = "mailto:harvardxplus@harvard.edu?Subject={course_id}%20{run}%20Group%20Purchase".format(
course_id=course_details.course_id, run=course_details.run)
%>
<a href="${url}" class="btn-block btn-success btn-large btn-enroll">${_("Email Us")}</a>
% endif
</div>
</div>
% endif
</div>
<div class="col col-12"><h2>Instructors</h2></div>
<% index = 0 %>
% for instructors in izip_longest(*([iter(course_details.instructor_info['instructors'])] * 2)):
<div class="row instructors">
% for instructor in [i for i in instructors if i is not None]:
<% index += 1 %>
<div class="col col-12 sm-col-12 md-col-6 lg-col-6 xl-col-6">
<div class="thumbnail">
<a href="#instructor-details-${index}" class="instructor-image"><img src="${static.url(instructor['image'])}" alt="${instructor['name']}"></a>
</div>
<p>${instructor['name']} <span>${instructor['title']}</span></p>
<div class="modal modal-custom" id="instructor-details-${index}">
<div class="btn-close modal_close"><i class="fa fa-close"></i></div>
<div class="modal-body">
<div class="modal-header">
<div class="instructor-data">
<div class="thumbnail">
<img src="${instructor['image']}" alt="${instructor['name']}">
</div>
<h3>
<span class="instructor-name">${instructor['name']}</span>
<span>${instructor['title']}
% if instructor['organization']:
at ${instructor['organization']}
% endif
</span>
</h3>
</div>
</div>
<div class="instructor-bio">${instructor['bio']}</div>
</div>
</div>
</div>
% endfor
</div>
% endfor
</div>
</div>
</div>
<div class="light-bg course-about">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12">
${HTML(course_details.overview)}
</div>
</div>
</div>
</div>
</div>
</section>
<section class="about-section">
<div class="about-container"></div>
<div class="grid-manual">
<div class="row">
<div class="col col-12 sm-col-12 md-col-4 text-center btn-enroll-mobile">
<a href="${btn_href}" id="${btn_id}" class="btn-block btn-success btn-large btn-enroll ${btn_class}">
${_(btn_text)}
</a>
</div>
</div>
</div>
</section>
## Need to put this hidden form on the page so that the registration button works.
## Since it's no harm to display a hidden form, we display it with the most permissive conditional
## which is when the student is not registered.
%if active_reg_button or is_shib_course:
<div style="display: none;">
<form id="class_enroll_form" method="post" data-remote="true" action="${reverse('change_enrollment')}">
<fieldset class="enroll_fieldset">
<legend class="sr">${_("Enroll")}</legend>
<input name="course_id" type="hidden" value="${course.id}">
<input name="enrollment_action" type="hidden" value="enroll">
</fieldset>
<div class="submit">
<input name="submit" type="submit" value="${_('enroll')}">
</div>
</form>
</div>
%endif
% if course_details.intro_video and course_details.video_thumbnail_image_name:
<section id="video-modal" class="modal modal-custom custom-video-modal">
<div class="inner-wrapper">
<iframe title="YouTube Video" width="640" height="360"
src="//www.youtube.com/embed/${course_details.intro_video}?showinfo=0"
frameborder="0" allowfullscreen></iframe>
</div>
</section>
% endif
## mako
<%page expression_filter="h"/>
<%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" />
<%namespace name='static' file='../static_content.html'/>
<section class="home">
<header class="hero-catalog hero-small hero">
<div class="tint-dark">
<div class="grid-container grid-manual">
<div class="row">
<div class="col col-10 sm-col-10 md-col-10 lg-col-8 xl-col-6 text-tint">
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur.</p>
</div>
</div>
</div>
</div>
</header>
<section class="courses-section">
<div class="courses-container">
<div class="highlighted-courses">
<section class="courses">
<div class="grid-manual">
<div class="row">
<div class="col col-12 text-center">
<h2>
<span> ${_('Lorem ipsum dolor sit amet.')}</span>
</h2>
</div>
</div>
<div class="row course-list">
%for course in courses:
<div class="col col-12 sm-col-12 md-col-4 lg-col-4">
<div class="courses-listing-item">
<%include file="../course.html" args="course=course"/>
</div>
</div>
%endfor
</div>
</div>
</section>
</div>
</div>
</section>
</section>
## mako
<%page expression_filter="h"/>
<%namespace name='static' file='static_content.html'/>
<section class="footer-main">
<div class="grid-manual grid-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-4 footer-logo">
<ul>
<li><a href="/"><img src="http://placehold.it/190x60" alt="Logo" /></a></li>
<li><a href="#">More about Lorem Ipsum</a></li>
</ul>
</div>
<div class="col col-12 sm-col-12 md-col-4">
<div class="col col-6">
<ul>
<li>About</li>
<li><a href="/about">About this Site</a></li>
<li><a href="/faq">FAQ</a></li>
<li><a href="/contact">Contact Us</a></li>
</ul>
</div>
<div class="col col-6">
<ul>
<li>Support</li>
<li><a href="/tos">Terms of Service</a></li>
<li><a href="/privacy">Privacy Policy</a></li>
<li><a href="/honor">Honor Code</a></li>
</ul>
</div>
</div>
<div class="col col-12 sm-col-12 md-col-4">
<div class="col col-6">
<ul>
<li>Connect</li>
<li><a href="#">Facebook</a></li>
<li><a href="#">Twitter</a></li>
<li><a href="#">LinkedIn</a></li>
<li><a href="#">YouTube</a></li>
</ul>
</div>
<div class="col col-6 open-edx-logo">
<ul>
<li>
<a href="https://open.edx.org">
<img src="${static.url('images/openedx-logo-tag.png')}" alt="openedx-logo" />
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</section>
## mako
<%page expression_filter="h"/>
<%namespace name='static' file='static_content.html'/>
<link rel="stylesheet" type="text/css" href="${static.url('css/lms-main-v2.css')}"/>
<!-- Hack to prevent font awesome icons from being overridden -->
<script>
var observer = new MutationObserver(function(mutations, obv){
mutations.forEach(function(mutation) {
if (mutation.target.classList.contains('edx-icons')) {
mutation.target.classList.remove('edx-icons');
observer.disconnect();
}
});
});
observer.observe(document.querySelector('html'), {attributes: true});
</script>
## mako
<%page expression_filter="h"/>
<%namespace name='static' file='static_content.html'/>
<%namespace file='main.html' import="login_query"/>
<%!
from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse
from openedx.core.djangoapps.user_api.accounts.image_helpers import get_profile_image_urls_for_user
%>
<header id="global-navigation" class="header-main" >
<nav class="nav-wrapper" aria-label="${_('Global')}">
<div class="grid-manual grid-container">
<div class="row">
<div class="col col-6 sm-col-4 md-col-4 lg-col-3 xl-col-3">
<div class="logo">
<a href="${marketing_link('ROOT')}">
<img src="http://placehold.it/190x60" alt="Home Page" />
</a>
</div>
</div>
<div class="col col-6 sm-col-8 md-col-8 lg-col-6 xl-col-6 pull-right">
<div class="navbar-collapse">
<div class="collapsed-button">
<span></span><span></span><span></span>
</div>
<ul class="list-inline">
% if user.is_authenticated():
<%
username = user.username
profile_image_url = get_profile_image_urls_for_user(user)['medium']
%>
<li class="user-account">
<span class="user-img"><img src="${profile_image_url}" alt=""></span>
<span class="user-name">${username}</span>
<ul>
<li><a href="${reverse('dashboard')}">${_("Dashboard")}</a></li>
<li><a href="${reverse('learner_profile', kwargs={'username': user.username})}">${_("Profile")}</a></li>
<li><a href="${reverse('account_settings')}">${_("Account")}</a></li>
<li><a href="${reverse('logout')}">${_("Sign Out")}</a></li>
</ul>
</li>
% else:
<li>
<a class="btn-brand btn-client" href="/register${login_query()}">${_("Create Account")}</a>
</li>
<li>
<a href="/login${login_query()}" class="brand-link">${_("Sign in")}</a>
</li>
% endif
<li>
<a href="/courses" class="brand-link">${_("Courses")}</a>
</li>
</ul>
</div>
</div>
</div>
</nav>
</header>
<script>
$( ".collapsed-button" ).click(function() {
$(".navbar-collapse .list-inline").toggleClass("show-menu");
});
$(".user-account .user-name").click(function(){
$(".user-account ul").toggleClass("show-user-menu");
});
</script>
## mako
<%page expression_filter="h"/>
<%inherit file="main.html" />
<%namespace name='static' file='static_content.html'/>
<%!
from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse
%>
<%block name="headextra">
<link rel="stylesheet" type="text/css" href="${static.url('css/slick.css')}"/>
</%block>
<%block name="js_extra">
<script type="text/javascript">
$(window).load(function () {
$(".more-about-btn").removeClass("hidden");
if (getParameterByName('next')) {
$('#login').trigger("click");
}
})
</script>
<%include file="about_site.html" />
<script type="text/javascript" src="${static.url('js/slick.min.js')}"></script>
</%block>
<section class="home">
<header class="hero-main hero">
<div class="tint-dark">
<div class="grid-container grid-manual">
<div class="row">
<div class="col col-10 sm-col-10 md-col-10 lg-col-8 xl-col-6 text-tint">
<p>Lorem ipsum dolor sit amet, ad mea dictas audiam, nec id graecis explicari hasnain</p>
% if show_homepage_promo_video:
<a href="#video-modal" class="btn-neutral btn-large" rel="leanModal">Watch video <i class="fa fa-play"></i></a>
% endif
</div>
</div>
</div>
</div>
</header>
<%include file="${courses_list}" />
<section class="about-section">
<div class="about-container"></div>
</section>
</section>
% if show_homepage_promo_video:
<section id="video-modal" class="modal modal-custom custom-video-modal">
<div class="inner-wrapper">
<iframe title="YouTube Video" width="640" height="360"
src="//www.youtube.com/embed/${homepage_promo_video_youtube_id}?showinfo=0" frameborder="0"
allowfullscreen></iframe>
</div>
</section>
% endif
% if show_signup_immediately is not UNDEFINED:
## NOTE: This won't work in production, because anonymous views are cached, so it will
## show either with or without this extra js for 3 minutes at a time.
<script type="text/javascript">
$(window).load(function () {
$('#signup_action').trigger("click");
});
</script>
% endif
## mako
<%page expression_filter="h"/>
<%! from django.utils.translation import ugettext as _ %>
<%namespace name='static' file='../static_content.html'/>
<%inherit file="../main.html" />
<%block name="pagetitle">${_("About Us")}</%block>
<div class="page-heading">
<h1>${_("About Us")}</h1>
</div>
<section class="static-content">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-8">
<h1>Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet</h1>
<h2>Lorem ipsum dolor sit amet</h2>
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti sed.
Pro ei bonorum commune, ea impedit pericula cum. Ex mea dolor maiorum. Et oblique vocibus quo, atqui facete
doctus sed an. Ei sed denique periculis, ad error alterum duo. Veritus eligendi pri ne, cibo vocent abhorreant
ad eum, nam iuvaret electram prodesset ea. Sed in detracto pericula..</p>
<h2>Lorem ipsum dolor sit amet</h2>
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti sed.
Pro ei bonorum commune, ea impedit pericula cum. Ex mea dolor maiorum. Et oblique vocibus quo, atqui facete
doctus sed an. Ei sed denique periculis, ad error alterum duo. Veritus eligendi pri ne, cibo vocent abhorreant
ad eum, nam iuvaret electram prodesset ea. Sed in detracto pericula..</p>
<h2>Lorem ipsum dolor sit amet</h2>
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti sed.
Pro ei bonorum commune, ea impedit pericula cum. Ex mea dolor maiorum. Et oblique vocibus quo, atqui facete
doctus sed an. Ei sed denique periculis, ad error alterum duo. Veritus eligendi pri ne, cibo vocent abhorreant
ad eum, nam iuvaret electram prodesset ea. Sed in detracto pericula..</p>
<h3>Lorem ipsum dolor sit amet</h3>
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti sed.
Pro ei bonorum commune, ea impedit pericula cum. Ex mea dolor maiorum. Et oblique vocibus quo, atqui facete
doctus sed an. Ei sed denique periculis, ad error alterum duo. Veritus eligendi pri ne, cibo vocent abhorreant
ad eum, nam iuvaret electram prodesset ea. Sed in detracto pericula..</p>
<h3>Lorem ipsum dolor sit amet</h3>
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti sed.
Pro ei bonorum commune, ea impedit pericula cum. Ex mea dolor maiorum. Et oblique vocibus quo, atqui facete
doctus sed an. Ei sed denique periculis, ad error alterum duo. Veritus eligendi pri ne, cibo vocent abhorreant
ad eum, nam iuvaret electram prodesset ea. Sed in detracto pericula..</p>
<h3>Lorem ipsum dolor sit amet</h3>
<p>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti sed.
Pro ei bonorum commune, ea impedit pericula cum. Ex mea dolor maiorum. Et oblique vocibus quo, atqui facete
doctus sed an. Ei sed denique periculis, ad error alterum duo. Veritus eligendi pri ne, cibo vocent abhorreant
ad eum, nam iuvaret electram prodesset ea. Sed in detracto pericula..</p>
<h2>Media Inquiries</h2>
<p>Lorem ipsum dolor sit amet<br />
Tel.: 123-456-7890<br />
<a href="" class="brand-link">loremIpsem@lorem.edu</a><br />
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet:
<a href="#" target="_blank" class="brand-link">Lorem ipsum dolor sit amet</a>.</p>
</p>
</div>
<div class="col col-12 sm-col-4 mission-statement">
<img src="${static.url('images/user-thumbnail.png')}" alt="Mission Statement">
<p>"Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit."</p>
<p>
<strong>Lorem ipsum</strong><br/>
Lorem ipsum, Lorem ipsum
</p>
</div>
</div>
</div>
</div>
</section>
## mako
<%page expression_filter="h"/>
<%!
from django.utils.translation import ugettext as _
from openedx.core.djangolib.markup import Text, HTML
from datetime import datetime
import pytz
from django.conf import settings
%>
<%inherit file="../main.html" />
<%namespace name='static' file='../static_content.html'/>
<%block name="pagetitle">${_("Contact Us")}</%block>
<div class="page-heading">
<h1>${_("Contact Us")}</h1>
</div>
<section class="static-content">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-10 md-col-8 lg-col-6 xl-col-6 col-centered">
<form id="contact_form" class="form-block">
<div class="input-group">
<label for="">Email*</label>
<input type="text" class="input-lg" id="email">
</div>
<div class="input-group">
<label for="">Full Name*</label>
<input type="text" class="input-lg" id="name">
</div>
<div class="input-group">
<label for="">I am a</label>
<div class="custom-select">
<select name="user_type" id="user_type" class="input-lg">
<option value="">Select</option>
<option value="learner">Learner</option>
<option value="teacher">Teacher</option>
<option value="other">Other</option>
</select>
</div>
</div>
<div class="input-group">
<label for="">Inquiry Type*</label>
<div class="custom-select">
<select id="subject" class="input-lg">
<option value="">Select</option>
<option value="payments">Payments</option>
<option value="certificates">Certificates</option>
<option value="assessments">Assessments</option>
<option value="videos">Videos</option>
<option value="discussion-forums">Discussion Forums</option>
<option value="mobile-application">Mobile Application</option>
</select>
</div>
</div>
<div class="input-group">
<label for="">Message*</label>
<textarea id="details" rows="10"></textarea>
</div>
<input type="text" name="issue_type" id="issue_type" value="contact" class="hidden">
<button class="btn-brand btn-client btn-lg" id="submit_btn">Submit</button>
<div class="input-group">
<label for="" class="text-light">* Required Fields</label>
</div>
</form>
</div>
</div>
</div>
</div>
</section>
<a href="#success-message" class="media hidden" id="success-message-btn" rel="leanModal">
</a>
<div id="success-message" class="modal">
<div class="alert alert-success" role="alert" aria-labelledby="alert-title-success" tabindex="-1">
<span class="icon alert-icon icon-check" aria-hidden="true">
<i class="fa fa-check" aria-hidden="true"></i>
</span>
<div class="alert-message">
<h3 class="alert-title" id="alert-title-success">
${_("Thank you for your inquiry")}
</h3>
<p class="alert-copy-with-title">
We'll get back to you within 24 hours.
</p>
</div>
</div>
</div>
<%block name="js_extra">
<script src="${static.url('js/contact-form.js')}"></script>
</%block>
<%page expression_filter="h"/>
<%! from django.utils.translation import ugettext as _ %>
<%inherit file="../main.html" />
<%namespace name='static' file='../static_content.html'/>
<%block name="pagetitle">${_("FAQ's")}</%block>
<div class="page-heading">
<h1>${_("General FAQs")}</h1>
</div>
<section class="static-content">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-3">
<ul class="list-divided">
<li class="item"><a href="#academic-planning" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#registration" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#finances" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
</ul>
</div>
<div class="col col-12 sm-col-12 md-col-9">
<h2 id="academic-planning">${_("Academic Planning")}</h2>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_0">
<p>
Lorem ipsum dolor sit ametLorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_1">
<p>
Lorem ipsum dolor sit ametLorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_2">
<p>
Lorem ipsum dolor sit ametLorem ipsum dolor sit amet
</p>
</div>
</article>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="registration">${_("Registration")}</h2>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_0">
<p>
Lorem ipsum dolor sit ametLorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_1">
<p>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_2">
<p>
Lorem ipsum dolor sit amet
</p>
<ul id="list-bulleted">
<li>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</li>
<li>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</li>
</ul>
</div>
</article>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="finances">${_("Finances")}</h2>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_1">
<p>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_1">
<p>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_1">
<p>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</p>
</div>
</article>
<article class="response">
<h3 class="question">Lorem ipsum dolor sit amet</h3>
<div class="answer" id="edx_basics_faq_answer_1">
<p>
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
</p>
</div>
</article>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
</div>
</div>
</div>
</div>
</section>
<%block name="js_extra">
<script src="${static.url('js/animation-scroll.js')}"></script>
<script type="text/javascript">
$(document).ready(function() {
var open_question = "";
var question_id;
$('.response').click(function(){
$(this).toggleClass('opened');
answer = $(this).find(".answer");
answer.slideToggle('fast');
});
});
</script>
</%block>
## mako
<%page expression_filter="h"/>
<%! from django.utils.translation import ugettext as _ %>
<%namespace name='static' file='../static_content.html'/>
<%inherit file="../main.html" />
<%block name="pagetitle">${_("Honor Code")}</%block>
<div class="page-heading">
<h1>${_("Honor Code")}</h1>
</div>
<section class="static-content">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-3">
<ul class="list-divided">
<li class="item"><a href="#collaboration-policy" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#honor-code-pledge" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#changing-the-honor-code" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
</ul>
</div>
<div class="col col-12 sm-col-12 md-col-9">
<h3><strong>Effective Date:</strong> January 01, 1970</h3>
<h1 class="honor-code-heading">Lorem ipsum dolor sit amet, sea te quaeque.</h1>
<h2 id="collaboration-policy">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="honor-code-pledge">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<ul class="list-bulleted">
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue..</li>
          </ul>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
</p>
<ul class="list-bulleted">
              <li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue..</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
</ul>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="changing-the-honor-code">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h3><strong>Effective Date:</strong> Januray 01, 1970</h3>
</div>
</div>
</div>
</div>
</section>
## mako
<%page expression_filter="h"/>
<%! from django.utils.translation import ugettext as _ %>
<%namespace name='static' file='../static_content.html'/>
<%inherit file="../main.html" />
<%block name="pagetitle">${_("Privacy Policy")}</%block>
<div class="page-heading">
<h1>${_("Privacy Policy")}</h1>
</div>
<section class="static-content">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-3">
<ul class="list-divided">
<li class="item"><a href="#collaboration-policy" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#honor-code-pledge" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#changing-the-honor-code" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
</ul>
</div>
<div class="col col-12 sm-col-12 md-col-9">
<h2 id="collaboration-policy">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="honor-code-pledge">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<ul class="list-bulleted">
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue..</li>
          </ul>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
</p>
<ul class="list-bulleted">
              <li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue..</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
</ul>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="changing-the-honor-code">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
</div>
</div>
</div>
</div>
</section>
## mako
<%page expression_filter="h"/>
<%! from django.utils.translation import ugettext as _ %>
<%namespace name='static' file='../static_content.html'/>
<%inherit file="../main.html" />
<%block name="pagetitle">${_("Terms of Service")}</%block>
<div class="page-heading">
<h1>${_("Terms of Service")}</h1>
</div>
<section class="static-content">
<div class="grid-manual grid-container">
<div class="inner-container">
<div class="row">
<div class="col col-12 sm-col-12 md-col-3">
<ul class="list-divided">
<li class="item"><a href="#collaboration-policy" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#honor-code-pledge" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
<li class="item"><a href="#changing-the-honor-code" class="brand-link">${_("Lorem ipsum dolor sit amet")}</a></li>
</ul>
</div>
<div class="col col-12 sm-col-12 md-col-9">
<h2 id="collaboration-policy">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="honor-code-pledge">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<ul class="list-bulleted">
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue..</li>
          </ul>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
</p>
<ul class="list-bulleted">
              <li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue..</li>
<li>Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
<li> Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.</li>
</ul>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
<h2 id="changing-the-honor-code">Lorem ipsum dolor sit amet</h2>
<p>
Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed. Lorem ipsum dolor sit amet, sea te quaeque suscipiantur. Nullam vituperata at his, usu ad solum augue.
Mel partem iudicabit te, an sed vocent offendit. Est prompta deserunt senserit et, ex ubique deleniti
sed.
</p>
<a href="#" class="brand-link back-to-top">${_("Back to top")}</a>
</div>
</div>
</div>
</div>
</section>
<%page expression_filter="h"/>
<%!
import json
from django.utils.translation import ugettext as _
from openedx.core.djangolib.js_utils import dump_js_escaped_json
%>
<%namespace name='static' file='/static_content.html'/>
<%inherit file="../main.html" />
<%block name="pagetitle">${_("Sign in or Create Account")}</%block>
<%block name="js_extra">
<%static:require_module module_name="js/student_account/logistration_factory" class_name="LogistrationFactory">
var options = ${data | n, dump_js_escaped_json};
LogistrationFactory(options);
if ('newrelic' in window) {
newrelic.finished();
// Because of a New Relic bug, the finished() event doesn't show up
// in Insights, so we have to make a new PageAction that is basically
// the same thing. We still want newrelic.finished() for session
// traces though.
newrelic.addPageAction('xfinished');
}
</%static:require_module>
</%block>
<%block name="header_extras">
% for template_name in ["account", "access", "form_field", "login", "register", "institution_login", "institution_register", "password_reset", "hinted_login"]:
<script type="text/template" id="${template_name}-tpl">
<%static:include path="student_account/${template_name}.underscore" />
</script>
% endfor
</%block>
<div class="section-bkg-wrapper">
<div id="login-and-registration-container" class="login-register" />
</div>
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