71 lines
3.4 KiB
JavaScript
71 lines
3.4 KiB
JavaScript
|
|
(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);
|