OpenSlides/openslides/projector/static/javascript/projector.js

63 lines
2.2 KiB
JavaScript
Raw Normal View History

/**
* OpenSlides projector functions
*
* :copyright: 2011, 2012 by OpenSlides team, see AUTHORS.
* :license: GNU GPL, see LICENSE for more details.
*/
content_hash = null;
2011-07-31 10:46:29 +02:00
function presentation_reload() {
if ($('#config > #ajax').html() == 'on') {
$.ajax({
type: 'GET',
2012-02-20 20:35:12 +01:00
url: '/projector/',
2011-07-31 10:46:29 +02:00
dataType: 'json',
success: function(data) {
$('#currentTime').removeClass('ajax_error');
var new_content_hash = data['content_hash'];
if (new_content_hash != content_hash) {
$('#content').html(data.content);
content_hash = new_content_hash;
}
$('#scrollcontent').html(data.scrollcontent);
2011-07-31 10:46:29 +02:00
document.title = data.title;
$('#currentTime').html(data.time);
2011-09-04 00:18:11 +02:00
$('#content').clearQueue();
// content font-size
2011-09-04 00:18:11 +02:00
$('#content').animate({'font-size': data.bigger + '%'}, 200);
$('#content #sidebar').css({'font-size': '18px'}, 0);
$('#scrollcontent').animate({'font-size': data.bigger + '%'}, 100);
// content position
$('#scrollcontent').animate({'margin-top': data.up + 'em'}, 100);
// overlays
$('#overlays div').remove();
2013-04-15 10:40:47 +02:00
$.each(data['overlays'], function (index, overlay){
$('#overlays').append('<div id="overlay_' + overlay['name'] + '">' + overlay['html'] + '</div>');
});
setTimeout("presentation_reload()", 1000);
2011-07-31 10:46:29 +02:00
},
error: function () {
$('#currentTime').addClass('ajax_error');
setTimeout("presentation_reload()", 1000);
2011-07-31 10:46:29 +02:00
}
});
}
}
function switchajax() {
if ($('#config > #ajax').html() == 'on') {
$('#config > #ajax').html('off');
$('#ajaxswitcher').html('<a href="#" onClick="switchajax()">Ajax Anschalten</a>');
} else {
$('#config > #ajax').html('on');
$('#ajaxswitcher').html('<a href="#" onClick="switchajax()">Ajax Ausschalten</a>');
}
}
$(document).ready(function() {
switchajax();
switchajax();
presentation_reload();
});