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) {