Files
caminus/static/js/poll.js

43 lines
1.6 KiB
JavaScript

function pollMessages(id) {
$.get('/api/poll/'+id, function(data) {
if (id == 0)
$('#chat-display').html('');
$('#balance-display').html(data['user-info']['balance']);
$(data['events']).each(function(idx, evt) {
console.log(evt['type']);
if (evt['type'] == "chat") {
$('#chat-display').append("<li>"+evt['payload']['sender']+": "+evt['payload']['message']);
} else if (evt['type'] == 'join') {
$('#chat-display').append("<li><em>"+evt['payload']['player']+" has joined</em></li>");
} else if (evt['type'] == 'quit') {
$('#chat-display').append("<li><em>"+evt['payload']['player']+" has quit</em></li>");
} else if (evt['type'] == 'broadcast') {
$('#chat-display').append("<li><strong>"+evt['payload']['message']+"</strong></li>");
} else if (evt['type'] == 'player-death') {
$('#chat-display').append("<li><em>"+evt['payload']['player']+" died.</em></li>");
} else if (evt['type'] == 'server-heartbeat') {
cls = "night";
console.log(evt['payload']['time']);
t = new Date(evt['payload']['time']*1000);
$('body').removeClass("morning night");
if (t.getHours() > 8 && t.getHours() < 17) {
cls = "morning";
$('body').addClass("morning");
} else {
$('body').addClass("night");
}
$('#time-display').html(t.toLocaleTimeString());
}
});
window.setTimeout(function() {pollMessages(data['poll-id'])}, 1);
});
}
function poll() {
pollMessages(0);
}
$(document).ready(function () {
poll();
});