");
$("#activity-results-toggler").hide();
return false;
}
try {
document.createEvent("TouchEvent");
$("BODY").addClass("is-mobile");
} catch(e) { }
if (this.inIframe()) $("body").removeClass("full-screen");
this.getTypeAndId();
// To review
// Make sure that you delete all the results so you can save the new values
for (var i=0;i';
play = play+playContent+"";
// var cover = "
"+$("#activity-title").html()+"
";
var cover = "";
var videoTitle = "...";
if (InteractiveVideo.title) videoTitle = InteractiveVideo.title;
else {
var iDeviceTitle = $(".interactive-videoIdevice .iDeviceTitle");
if (iDeviceTitle.length>0) {
iDeviceTitle = iDeviceTitle.eq(0);
if (iDeviceTitle.html()!=" " && iDeviceTitle.text().replace(/ /g,'')!="") {
videoTitle = iDeviceTitle.text();
}
}
}
if (!(InteractiveVideo.description && videoTitle=="...")) cover = "
"+videoTitle+"
";
if (InteractiveVideo.description) cover += InteractiveVideo.description;
$("#activity").prepend('
'+cover+'
'+play+'
');
if (this.type=='mediateca') {
$exe.loadScript("https://mediateca.educa.madrid.org/includes/player/exelearning/jwplayer.js","interaction.ready()");
return;
}
else if (this.type=='youtube') {
onYouTubeIframeAPIReady = interaction.ready;
// Load the IFrame Player API code asynchronously
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
}
else if (this.type=='local') {
$("#player").html('');
}
// interaction.ready();
},
enableJWPlayer : function(id, h, w){
var img = 'http://mediateca.educa.madrid.org/imagen.php?id='+id+'&type=1&m=0';
jwplayer("player").setup({
sources: [{
file: "http://mediateca.educa.madrid.org/streaming.php?id="+id,
label: "480p",
type: "mp4",
provider: "http",
startparam: "start"
}],
image: img,
logo: {
file: "http://mediateca.educa.madrid.org/images/player/educamadrid.png",
link: "http://mediateca.educa.madrid.org/video/"+id,
hide: true
},
abouttext: "Mediateca",
aboutlink: "http://mediateca.educa.madrid.org/ayuda.php",
// controls: false,
height: h,
width: w
});
},
checkSlides : function(){
if (interaction.isSeek) {
if ($("BODY").hasClass("active")) {
// Check if it has endTime
var slide = $("#slide");
var c = slide.attr("class");
if (c=="image" || c=="text") {
if(!InteractiveVideo.slides[interaction.visibleSlide].endTime) {
// To review (error: It hides the slide): interaction.slide.hide('case 1');
}
} else {
// setTimeout(function(){
// interaction.slide.hide('case 2');
// },100);
}
}
}
interaction.isSeek = false;
},
ready : function() {
interaction.orderSlides();
if (this.type=="mediateca") {
// Enlable the player and track the video
interaction.enableJWPlayer(this.id,'356','448');
jwplayer().onTime(function(e){
interaction.track(e.position);
});
// If the video is playing, the slides should be hidden
jwplayer().onPlay(function(){
interaction.hasPlayed = true;
interaction.checkSlides();
});
interaction.complete();
}
else if (interaction.type=="youtube") {
interaction.player = new YT.Player('player', {
height: '356',
width: '448',
videoId: interaction.id,
events: {
'onReady': function(){
interaction.complete();
},
'onStateChange': function(e){
interaction.hasPlayed = true;
interaction.youtubeCounter = setInterval(function(){
interaction.track(interaction.player.getCurrentTime());
},500);
interaction.checkSlides();
}
}
});
}
else if (interaction.type=="local") {
interaction.complete();
if (interaction.extension=="flv") {
interaction.youtubeCounter = setInterval(function(){
interaction.track(interaction.hourToSeconds($("#player .mejs-currenttime").eq(0).text()));
},500);
} else {
interaction.mediaElementVideo[0].addEventListener('playing', function (e) {
interaction.youtubeCounter = setInterval(function(){
interaction.track(interaction.mediaElementVideo[0].currentTime);
},500);
interaction.checkSlides();
});
}
}
},
complete : function(){
// Create the results viewer
interaction.resultsViewer.create();
// Set the max-width
$(window).load(function(){
interaction.setMaxWidth();
}).resize(function(){
interaction.setMaxWidth();
});
},
setMaxWidth : function(){
var w = $("#activity-wrapper").width();
$("#player").css("max-width",(w/2)+"px");
},
orderSlides : function(){
var sortable = [];
for (var slide in InteractiveVideo.slides) {
sortable.push([interaction.secondsToHour(InteractiveVideo.slides[slide].startTime), InteractiveVideo.slides[slide]])
}
sortable.sort();
var sorted = [];
for (var i in sortable) {
sorted.push(sortable[i][1]);
}
InteractiveVideo.slides = sorted;
},
// hh:mm:ss to seconds
hourToSeconds : function(str){
var i = str.split(':');
if (i.length==0) {
return 0;
} else if (i.length==1) {
i = '00:00:'+i[0];
i = i.split(':');
} else if (i.length==2) {
i = '00:'+i[0]+':'+i[1];
i = i.split(':');
}
return (+i[0]) * 60 * 60 + (+i[1]) * 60 + (+i[2]);
},
secondsToHour : function(totalSec) {
var hours = parseInt( totalSec / 3600 ) % 24;
var minutes = parseInt( totalSec / 60 ) % 60;
var seconds = totalSec % 60;
return (hours < 10 ? "0" + hours : hours) + ":" + (minutes < 10 ? "0" + minutes : minutes) + ":" + (seconds < 10 ? "0" + seconds : seconds);
},
resultsViewer : {
create : function(){
var html = "";
var i18n = interaction.i18n;
// var cover = "";
// if (InteractiveVideo.cover) {
var cover = '\
';
$("#activity-results").html(html);
interaction.table = $("#activity-results");
var tds = $(".result",interaction.table);
interaction.resultsViewer.getFinalResult(tds);
}
},
getFinalResult : function(tds){
var complete = true;
var result = 0;
var counter = 0;
tds.each(
function(){
var t = $(this).text();
if (t=="- ") complete = false;
if (t.indexOf("%")!=-1) {
result += parseFloat(t);
counter ++;
} else if (t==interaction.i18n.seen) {
result += 100;
counter ++;
}
}
);
if (complete) {
$("#resultsSummary").html(""+interaction.formatResult((result/counter).toFixed(2))+"%");
$("BODY").addClass("activity-completed");
}
},
toggle : function(e){
if (interaction.isWorking) return false;
interaction.isWorking = true;
var block = $("#activity-results");
if (e.className=="show") {
block.fadeIn(500,function(){
e.className = "hide";
interaction.isWorking = false;
});
} else {
block.fadeOut(500,function(){
e.className = "show";
interaction.isWorking = false;
});
}
}
},
msg : function(type,txt,formId,rightAnswer){
var k = "success";
if (type=="alert") k = "alert";
else if (type=="error") k = "danger";
else if (type=="info") k = "info";
k = "exe-block-" + k;
var msg = '
'+txt+'
';
if (rightAnswer) msg += rightAnswer;
$("#"+formId+"Message").html(msg);
},
seek : function(order){
if (interaction.visibleSlide==order && $("BODY").hasClass("active")) {
return false;
}
interaction.isSeek = true;
if (interaction.hasPlayed!=true) {
interaction.controls.seek(InteractiveVideo.slides[order].startTime-1);
} else {
interaction.controls.seek(InteractiveVideo.slides[order].startTime);
}
},
isFullScreen : function(){
if (this.type=='mediateca' && jwplayer().getFullscreen()) return true;
else if (this.type=='youtube' && $("iframe").width()==$(window).width()) return true;
else if (this.type=='local' && (typeof(mejsFullScreen)!='undefined' && mejsFullScreen==true)) return true;
return false;
},
slide : {
enable : function(slide,e,order) {
var html = "";
var id = interaction.baseId;
var i18n = interaction.i18n;
var i;
// Text
if (e.type=="text") {
slide.html(e.text);
for (var i=0; i'+interaction.i18n.slide+'');
$("#slide-link").focus();
},
show : function(e,order) { // e = the object
e.current = true;
interaction.visibleSlide = order;
if (interaction.isFullScreen()) {
interaction.controls.pause();
// Not displayed with MediaElement
if (interaction.type!="local") alert(interaction.i18n.fsWarning);
}
if (!e.endTime) interaction.controls.pause();
var slide = $("#slide");
slide.html("");
slide.attr("class",e.type);
if ($("BODY").hasClass("active") || interaction.isSeek) {
$("#activity").css("width","100%");
interaction.slide.enable(slide,e,order);
} else {
$("#player").css("margin-left",0);
$("#activity").css("width","100%");
interaction.slide.enable(slide,e,order);
}
},
hide : function(trigger){
interaction.visibleSlide = "";
$("#activity").css("width","50%");
$("BODY").removeClass("active");
}
},
formatResult : function(result) {
return result.toString().replace(".00","").replace(".",",");
},
updateResult : function(question,result) {
var tds = $(".result",interaction.table);
tds.eq(question).html(""+result+"");
interaction.resultsViewer.getFinalResult(tds);
},
dropdownActivity : {
create : function(slide,id,order,e) {
var html = interaction.getForm.header(id,order,'dropdownActivity');
html += '
'+e.text+'
';
html += '
';
html += interaction.getForm.sendButton(id,order,'dropdownActivity');
html += '
';
html += '
';
html += '
';
html += interaction.getForm.footer();
slide.html(html);
// Options
var opts = [];
var spans = $("SPAN","#"+id+"dropdownActivityForm");
var rightAnswers = [];
spans.each(
function(i){
if(this.style.textDecoration=='line-through') {
var t = $(this).text();
opts.push(t);
rightAnswers.push(t);
$(this).hide().attr("id","right-answer-"+id+"-"+i);
}
}
);
// Add more words
if (e.additionalWords) {
for (var z=0;z'+val+'';
newOptions += h;
}
//Add the selects:
spans.each(
function(i){
if(this.style.textDecoration=='line-through') {
var sel = $('');
$(this).before(sel);
}
}
);
var activityForm = $("#"+id+"dropdownActivityForm");
activityForm.show();
//Show the previous results
var currentQuestion = InteractiveVideo.slides[order];
if (currentQuestion.results) {
var i18n = interaction.i18n;
activityForm.addClass("disabled");
if (currentQuestion.results.score==100) {
interaction.msg("success",i18n.right,id+"dropdownActivityForm");
} else {
interaction.msg("error",i18n.wrong,id+"dropdownActivityForm",interaction.dropdownActivity.getRightAnswer(rightAnswers));
}
var selectedValues = currentQuestion.results.selectedValues;
var selectFields = $("SELECT",activityForm);
for (var w=0;w"+rightAnswers[i]+"";
}
if (rightAnswer!="") rightAnswer = "