cloudnet-compose/result/dotnet/Result/wwwroot/js/results.js

41 lines
1.2 KiB
JavaScript
Raw Normal View History

2018-09-21 20:23:31 +02:00
"use strict";
var connection = new signalR.HubConnectionBuilder().withUrl("/resultsHub").build();
connection.on("UpdateResults", function (results) {
2018-09-26 11:29:39 +02:00
document.body.style.opacity=1;
2018-09-21 20:23:31 +02:00
2018-09-26 11:29:39 +02:00
var a = parseInt(results.optionA || 0);
var b = parseInt(results.optionB || 0);
2018-09-21 20:23:31 +02:00
var percentages = getPercentages(a, b);
document.getElementById("optionA").innerText = percentages.a + "%";
document.getElementById("optionB").innerText = percentages.b + "%";
2018-09-26 12:58:32 +02:00
var totalVotes = 'No votes yet';
2018-09-26 11:29:39 +02:00
if (results.voteCount > 0) {
2018-09-26 12:58:32 +02:00
totalVotes = results.voteCount + (results.voteCount > 1 ? " votes" : " vote");
2018-09-26 11:29:39 +02:00
}
2018-09-26 12:58:32 +02:00
document.getElementById("totalVotes").innerText = totalVotes;
2018-09-26 11:29:39 +02:00
var bg1 = document.getElementById('background-stats-1');
var bg2 = document.getElementById('background-stats-2');
2018-09-26 12:32:50 +02:00
bg1.style.width = (percentages.a-0.2) + "%";
bg2.style.width = (percentages.b-0.2) + "%";
2018-09-21 20:23:31 +02:00
});
connection.start().catch(function (err) {
return console.error(err.toString());
});
function getPercentages(a, b) {
var result = {};
if (a + b > 0) {
result.a = Math.round(a / (a + b) * 100);
result.b = 100 - result.a;
} else {
result.a = result.b = 50;
}
return result;
}