diff --git a/server/djrandom/frontend/static/js/djr/backend.js b/server/djrandom/frontend/static/js/djr/backend.js index 2bf1fcb94a4964016764c7bde2bf0464334c48f7..1921dc102228286e3ec43b720160cb30fdcc1854 100644 --- a/server/djrandom/frontend/static/js/djr/backend.js +++ b/server/djrandom/frontend/static/js/djr/backend.js @@ -199,13 +199,14 @@ djr.Backend.prototype.lastPlaylist = function(num, callback ,ctx) { }; /** - * Request N most played songs + * Return N pseudo-random songs based on the current playlist. * * @param {integer} n Number of songs requested + * @param {Array[string]} uuids SHA1 hashes of the current playlist * */ -djr.Backend.prototype.randomPlaylist = function(num, uuids, callback ,ctx) { - $.ajax({url: '/json/random', +djr.Backend.prototype.markovPlaylist = function(num, uuids, callback ,ctx) { + $.ajax({url: '/json/markov', data: {'h': uuids.join(','), 'n': num }, dataType: 'json', @@ -217,3 +218,21 @@ djr.Backend.prototype.randomPlaylist = function(num, uuids, callback ,ctx) { }); }; +/** + * Return N completely random songs. + * + * @param {integer} n Number of songs requested + * + */ +djr.Backend.prototype.randomPlaylist = function(num, callback ,ctx) { + $.ajax({url: '/json/random', + data: {'n': num }, + dataType: 'json', + type: 'GET', + context: ctx || this, + success: function(data, status, jqxhr) { + callback(data.results); + } + }); +}; + diff --git a/server/djrandom/frontend/static/js/djr/player.js b/server/djrandom/frontend/static/js/djr/player.js index e2b07fba581bcfbe3044477a93849cd6cbcb6e45..cd8934880966a904a49c52d8704562430980f5f6 100644 --- a/server/djrandom/frontend/static/js/djr/player.js +++ b/server/djrandom/frontend/static/js/djr/player.js @@ -118,8 +118,8 @@ djr.Player.prototype.lastPlaylist = function(num) { djr.Player.prototype.randomPlaylist = function(num) { var player = this; - var title = "Last " + num + " Random Songs "; - this.backend.randomPlaylist(num, this.playlist.allSongs(), function(results) { + var title = "" + num + " Random Songs "; + this.backend.randomPlaylist(num, function(results) { var songs = results; if (songs.length == 0) { djr.debug('No results found.'); @@ -133,7 +133,7 @@ djr.Player.prototype.randomPlaylist = function(num) { djr.Player.prototype.mostPlayedPlaylist = function(num) { var player = this; - var title = "Most " + num + " Played Songs"; + var title = "" + num + " Most Played Songs"; this.backend.mostPlayedPlaylist(num, function(results) { var songs = []; $.each(results, function(idx, item) {