-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
99 lines (87 loc) · 3.38 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Test Node Scheduler Web Radio</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
<body>
<div class="row" style="margin: 0px;">
<div class="col-md-4" style="background: #DDD; margin: 0px; padding: 0px;">
<h1>Actuellement</h1>
<div class="row" style="background: #26e1ff; margin: 0px;">
<p>Titre : <span id="current"></span></p>
</div>
<br>
<div class="progress">
<div class="progress-bar progress-bar-info progress-bar-striped" role="progressbar"
aria-valuenow="50" aria-valuemin="0" aria-valuemax="100" style="width:50%; transition: width .2s ease;" id="progressBar">
</div>
</div>
<p><input class="btn btn-success" type="button" value="Raffraichir" id="poke" /></p>
</div>
</div>
<br><br>
<div class="row" style="margin: 0px;">
<div class="col-md-4" style="background: #DDD; margin: 0px; padding: 0px;">
<div class="row" style="margin: 0px;">
Queue :<br>
<p id="queue">
</p>
</div>
</div>
<div class="col-md-4" style="background: #DDD; margin: 0px; padding: 0px;">
<div class="row" style="margin: 0px;">
Playlist :<br>
<p id="playlist">
</p>
</div>
</div>
</div>
</body>
<script src="jquery.js"></script>
<script src="http://localhost:8080/socket.io/socket.io.js">
</script>
<script>
var timeBegin = new Date('2017-01-04 13:01:12');
var timeEnd = new Date('2017-01-04 13:03:22');
function progressTimer() {
var timelength = timeEnd - timeBegin;
var now = new Date();
var progressTime = now - timeBegin;
var percent = 100 * progressTime / timelength;
$('#progressBar').width(percent + "%");
if(percent > 99) {
socket.emit('updateClient');
}
}
function setTimeProgress(timeB, timeE) {
timeBegin = new Date(timeB);
timeEnd = new Date(timeE);
}
setInterval(function() {progressTimer();},100);
var socket = io.connect('http://localhost:8080');
$("#current").html("Pas de lecture en cours");
$('#poke').click(function () {
socket.emit('message', 'Salut serveur, ça va ?');
})
setInterval(function(){ socket.emit('updateClient'); }, 3000);
socket.on('updateServer', function(song, timeB, timeE){
$("#current").html(song + " - " + timeB + " - " + timeE);
setTimeProgress(timeB, timeE);
});
socket.on('updateQueueServer', function(queue){
var queuestring = '<table class="table table-striped"><tr><th>Son</th><th class="text-right">Duree</th><th class="text-right">Debut du son</th><th class="text-right">Supprimer</th></tr>';
for(var i=0; i<queue.length; i++) {
var date = new Date(queue[i][2]);
queuestring += '<tr><td>' + queue[i][0] + '</td><td class="text-right">' + queue[i][3] + '</td><td class="text-right">' + date.toLocaleTimeString() + '</td><td class="text-right"><button onclick="socket.emit(\'removeOneQueue\', '+i+')" type="button" class="btn btn-danger"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span></button></td></tr>';
}
queuestring += '</table>';
$("#queue").html(queuestring);
});
socket.on('updatePlaylistServer', function(playlist){
$("#playlist").html(playlist);
});
</script>
</html>