diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-setup/choose-bg-songs.js b/zefie_wtvp_minisrv/ServiceVault/wtv-setup/choose-bg-songs.js index f579e2e7..935fc982 100644 --- a/zefie_wtvp_minisrv/ServiceVault/wtv-setup/choose-bg-songs.js +++ b/zefie_wtvp_minisrv/ServiceVault/wtv-setup/choose-bg-songs.js @@ -68,22 +68,27 @@ Choose a style name to see the songs for that style. `; var catsListed = 0; -var numCats = wtvbgm.categories.length; +var categories = wtvbgm.getCategoryList(); +var numCats = categories.length; var divide = Math.round(numCats / 2, 0); -Object.keys(wtvbgm.categories).forEach(function (k) { - if (catsListed == divide) { - data += ` -`; - } + +Object.keys(categories).forEach(function (k) { var pubcat = parseInt(k) + 1; - data += ` + var songsInCat = wtvbgm.getCategorySongList(pubcat); + if (songsInCat.length > 0) { + if (catsListed == divide) { + data += `
+`; + } + data += `
-${wtvbgm.categories[k]}
+${categories[k]}
`; - catsListed++; + catsListed++; + } }); data += ` diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-setup/set-bg.js b/zefie_wtvp_minisrv/ServiceVault/wtv-setup/set-bg.js index f47439d8..ee3a9978 100644 --- a/zefie_wtvp_minisrv/ServiceVault/wtv-setup/set-bg.js +++ b/zefie_wtvp_minisrv/ServiceVault/wtv-setup/set-bg.js @@ -3,7 +3,7 @@ var minisrv_service_file = true; var WTVBGMusic = require("./WTVBGMusic.js"); var wtvbgm = new WTVBGMusic(minisrv_config, ssid_sessions[socket.ssid]); if (request_headers.query.category) { - var musicList = wtvbgm.getCategoryList(request_headers.query.category); + var musicList = wtvbgm.getCategorySongList(request_headers.query.category); var categoryName = wtvbgm.getCategoryName(request_headers.query.category); headers = `200 OK diff --git a/zefie_wtvp_minisrv/WTVBGMusic.js b/zefie_wtvp_minisrv/WTVBGMusic.js index eb1a6533..2ac816e3 100644 --- a/zefie_wtvp_minisrv/WTVBGMusic.js +++ b/zefie_wtvp_minisrv/WTVBGMusic.js @@ -1077,7 +1077,8 @@ class WTVBGMusic { return null; } - getCategoryList(category) { + + getCategorySongList(category) { if (this.session_data.hasCap("client-can-do-rmf")) { // use rmf list var musiclist = this.musiclist_rmf; @@ -1099,6 +1100,17 @@ class WTVBGMusic { return songList.filter(value => Object.keys(value).length !== 0); } + getCategoryList() { + var categories = []; + var self = this; + Object.keys(self.categories).forEach(function (k) { + var songList = self.getCategorySongList(parseInt(k) + 1); + if (songList.length > 0) categories[k] = self.categories[k]; + }); + return categories.filter(value => Object.keys(value).length !== 0); + } + + getCategoryName(category) { return this.categories[parseInt(category) - 1]; }