From 7ad1b8932207b571f9389b3e46f5e15ad75d7557 Mon Sep 17 00:00:00 2001
From: boyska <piuttosto@logorroici.org>
Date: Thu, 27 Aug 2015 11:27:44 +0200
Subject: [PATCH] now songbox handles "parent" songlist directly

---
 ui/js-boxed/list.js | 11 ++++++++++-
 ui/js-boxed/ui.js   |  9 ++-------
 2 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/ui/js-boxed/list.js b/ui/js-boxed/list.js
index 2101e00..3d614a6 100644
--- a/ui/js-boxed/list.js
+++ b/ui/js-boxed/list.js
@@ -58,7 +58,16 @@ $.widget('djrandom.songbox', $.djrandom.songlist, {
                 click(function() {
                     $('.playlist li', box).remove();
                 }));
-        box.append($('<a/>').addClass('btn action-appendall').text('Append all'));
+        var appendall = $('<a/>').addClass('btn action-appendall').text('Append all');
+        box.append(appendall);
+        appendall.click(function() {
+            var slist = $(box).songbox('option', 'parentlist');
+            if(slist !== null) {
+                $(box).songbox('getSongs').each(function(i, song) {
+                    slist.songlist('addSong', song);
+                });
+            }
+        });
         box.append($('<a/>').addClass('btn action-nextall').text('Play all as next song'));
         this._super();
     },
diff --git a/ui/js-boxed/ui.js b/ui/js-boxed/ui.js
index 9203f34..c00a96a 100644
--- a/ui/js-boxed/ui.js
+++ b/ui/js-boxed/ui.js
@@ -69,13 +69,8 @@ jQuery(function($) {
             $(this).addClass('sorted');
         }
     });
-    $('#resultsBox').songbox();
-    $('#suggestionsBox').songbox();
-    $('.songbox').on('click', '.action-appendall', function() {
-        $(this).parent(':djrandom-songbox, :djrandom-songlist').songlist('getSongs').map(function(idx, song) {
-            $('#playing').songlist('addSong', song);
-        });
-    })
+    $('#resultsBox').songbox({parentlist: $('#playing')});
+    $('#suggestionsBox').songbox({parentlist: $('#playing')});
     $('.songlist .playlist').on('click', '.action-suggest', function() {
         songel = $(this).parent('li');
         suggest_in_box([songel.data('song').id]);
-- 
GitLab