119 lines
2.6 KiB
JavaScript
119 lines
2.6 KiB
JavaScript
// IMPORTANT TODO: Namespace
|
|
|
|
var ${ id }contents=["",
|
|
%for t in items:
|
|
${t['content']} ,
|
|
%endfor
|
|
""
|
|
];
|
|
|
|
var ${ id }types=["",
|
|
%for t in items:
|
|
"${t['type']}" ,
|
|
%endfor
|
|
""
|
|
];
|
|
|
|
var ${ id }init_functions=["",
|
|
%for t in items:
|
|
function(){ ${t['init_js']} },
|
|
%endfor
|
|
""];
|
|
|
|
var ${ id }titles=${titles};
|
|
|
|
var ${ id }destroy_functions=["",
|
|
%for t in items:
|
|
function(){ ${t['destroy_js']} },
|
|
%endfor
|
|
""];
|
|
|
|
var ${ id }loc = -1;
|
|
function disablePrev() {
|
|
var i=${ id }loc-1;
|
|
log_event("seq_prev", {'old':${id}loc, 'new':i,'id':'${id}'});
|
|
if (i < 1 ) {
|
|
$('.${ id }prev a').addClass('disabled');
|
|
} else {
|
|
$('.${ id }prev a').removeClass('disabled');
|
|
};
|
|
}
|
|
|
|
function disableNext() {
|
|
var i=${ id }loc+1;
|
|
log_event("seq_next", {'old':${id}loc, 'new':i,'id':'${id}'});
|
|
|
|
if(i > ${ len(items) } ) {
|
|
$('.${ id }next a').addClass('disabled');
|
|
} else {
|
|
$('.${ id }next a').removeClass('disabled');
|
|
};
|
|
}
|
|
|
|
function ${ id }goto(i) {
|
|
log_event("seq_goto", {'old':${id}loc, 'new':i,'id':'${id}'});
|
|
|
|
postJSON('${ MITX_ROOT_URL }/modx/sequential/${ id }/goto_position',
|
|
{'position' : i });
|
|
|
|
if (${ id }loc!=-1)
|
|
${ id }destroy_functions[ ${ id }loc ]();
|
|
$('#seq_content').html(${ id }contents[i]);
|
|
${ id }init_functions[i]()
|
|
//$('#tt_'+${ id }loc).attr("style", "background-color:gray");
|
|
$('#tt_'+${ id }loc).removeClass();
|
|
$('#tt_'+${ id }loc).addClass("seq_"+${ id }types[${ id }loc]+"_visited");
|
|
${ id }loc=i;
|
|
//$('#tt_'+i).attr("style", "background-color:red");
|
|
$('#tt_'+i).removeClass();
|
|
$('#tt_'+i).addClass("seq_"+${ id }types[${ id }loc]+"_active");
|
|
|
|
MathJax.Hub.Queue(["Typeset",MathJax.Hub]);
|
|
|
|
disableNext();
|
|
disablePrev();
|
|
}
|
|
|
|
function ${ id }setup_click(i) {
|
|
$('#tt_'+i).click(function(eo) { ${ id }goto(i);});
|
|
$('#tt_'+i).addClass("seq_"+${ id }types[i]+"_inactive");
|
|
$('#tt_'+i).append("<p>" + ${ id }titles[i-1] + "</p>");
|
|
|
|
}
|
|
|
|
function ${ id }next() {
|
|
var i=${ id }loc+1;
|
|
log_event("seq_next", {'old':${id}loc, 'new':i,'id':'${id}'});
|
|
if(i > ${ len(items) } ) {
|
|
i = ${ len(items) };
|
|
} else {
|
|
${ id }goto(i);
|
|
};
|
|
}
|
|
|
|
|
|
function ${ id }prev() {
|
|
var i=${ id }loc-1;
|
|
log_event("seq_prev", {'old':${id}loc, 'new':i,'id':'${id}'});
|
|
if (i < 1 ) {
|
|
i = 1;
|
|
} else {
|
|
${ id }goto(i);
|
|
};
|
|
}
|
|
|
|
|
|
|
|
$(function() {
|
|
var i;
|
|
for(i=1; i<${ len(items)+1 }; i++) {
|
|
${ id }setup_click(i);
|
|
}
|
|
|
|
|
|
$('.${ id }next a').click(function(eo) { ${ id }next(); return false;});
|
|
$('.${ id }prev a').click(function(eo) { ${ id }prev(); return false;});
|
|
${ id }goto( ${ position } );
|
|
|
|
});
|