]> CyberLeo.Net >> Repos - CDN/metadata.git/blob - views/handler_js.erb
Screwing around
[CDN/metadata.git] / views / handler_js.erb
1 function format_track(index, title, length, bpm, notes) {
2   var minutes = Math.floor(length / 60);
3   var seconds = length % 60;
4   var length = minutes + ":" + ( "0" + seconds ).slice(-2);
5   entry = $('<div id="track_' + index + '" class="track" onClick="current(' + index + ');">');
6   entry.append($('<span class="index">' + index + '</span>'));
7   entry.append($('<span class="title">' + title + '</span>'));
8   entry.append($('<span class="length">' + length + '</span>'));
9   entry.append($('<span class="clear"></span>'));
10   entry.append($('<span class="bpm">' + bpm + ' BPM</span>'));
11   entry.append($('<span class="notes">' + notes + '</span>'));
12   return entry;
13 }
14
15 function init() {
16   for (var index in tracklist) {
17     track = tracklist[index];
18     entry = format_track(track['index'], track['title'], track['length'], track['bpm'], track['notes']);
19     $('#tracks').append(entry);
20   }
21 }
22
23 /* Track 0 is 'no current track' */
24 function current(index) {
25   if (index < 0 || index > maximum_index)
26     return;
27   current_index = index;
28   $("div.track").removeClass("current");
29   $("div#track_" + index).addClass("current");
30 }
31
32 function next() {
33   current(current_index + 1);
34 }
35
36 function prev() {
37   current(current_index - 1);
38 }
39
40 function commit() {
41 }
42
43 maximum_index = tracklist.length;
44 current_index = 0;
45
46 init();