Change the plugin JS structure - refs #7279

1.9.x
Angel Fernando Quiroz Campos 11 years ago
parent c23b5493c7
commit 800699e5c6
  1. 69
      plugin/tour/views/script.tpl

@ -1,48 +1,56 @@
<script type="text/javascript"> <script type="text/javascript">
var chamiloTour = (function() { var chamiloTour = (function() {
var intro = null; var intro = null;
var currentPageClass = '';
var $btnStart = null; var $btnStart = null;
return { var setSteps = function (stepsData) {
init: function(pageClass) { var steps = new Array();
currentPageClass = pageClass;
intro = introJs();
intro.oncomplete(function () {
$.post('{{ tour.web_path.save_ajax }}', {
page_class: currentPageClass
}, function () {
$btnStart.remove();
});
});
},
showStartButton: function() {
$btnStart = $('<button>', {
class: 'btn btn-primary btn-large',
text: '{{ 'StartButtonText' | get_lang }}',
click: function(e) {
e.preventDefault();
var promise = chamiloTour.setSteps(currentPageClass); $.each(stepsData, function () {
var step = this;
$.when(promise).done(function (data) { if (step.element) {
intro.start(); if ($(step.element).length > 0) {
}); steps.push(step);
} }
}).appendTo('#tour-button-cotainer'); } else {
}, steps.push(step);
setSteps: function() { }
return $.getJSON('{{ tour.web_path.steps_ajax }}', { });
'page_class': currentPageClass
return steps;
};
return {
init: function(pageClass) {
$.getJSON('{{ tour.web_path.steps_ajax }}', {
'page_class': pageClass
}, function(response) { }, function(response) {
intro = introJs();
intro.setOptions({ intro.setOptions({
steps: response, steps: setSteps(response),
nextLabel: '{{ 'Next' | get_lang }}', nextLabel: '{{ 'Next' | get_lang }}',
prevLabel: '{{ 'Prev' | get_lang }}', prevLabel: '{{ 'Prev' | get_lang }}',
skipLabel: '{{ 'Skip' | get_lang }}', skipLabel: '{{ 'Skip' | get_lang }}',
doneLabel: '{{ 'Done' | get_lang }}' doneLabel: '{{ 'Done' | get_lang }}'
}); });
intro.oncomplete(function () {
$.post('{{ tour.web_path.save_ajax }}', {
page_class: pageClass
}, function () {
$btnStart.remove();
});
});
$btnStart = $('<button>', {
class: 'btn btn-primary btn-large',
text: '{{ 'StartButtonText' | get_lang }}',
click: function(e) {
e.preventDefault();
intro.start();
}
}).appendTo('#tour-button-cotainer');
}); });
} }
}; };
@ -67,7 +75,6 @@
$.getScript('{{ tour.web_path.intro_js }}', function() { $.getScript('{{ tour.web_path.intro_js }}', function() {
chamiloTour.init(page.pageClass); chamiloTour.init(page.pageClass);
chamiloTour.showStartButton(page.pageClass);
}); });
} }
}); });

Loading…
Cancel
Save