From d4af036bd683a8777e7251726168b7833272ea26 Mon Sep 17 00:00:00 2001 From: Peter Grassberger Date: Mon, 28 Dec 2015 00:36:51 +0100 Subject: musicpools: get dropboxes and update selector diff --git a/www/index.html b/www/index.html index fda9f7f..c082c43 100644 --- a/www/index.html +++ b/www/index.html @@ -161,6 +161,12 @@
+
+
+    + +

Musikpools

diff --git a/www/js/musicpools.js b/www/js/musicpools.js index 1c968f9..cfaec13 100644 --- a/www/js/musicpools.js +++ b/www/js/musicpools.js @@ -22,8 +22,77 @@ 'use strict'; +var rivendell = null; +var musicpools = null; + function musicpools_init() { + rivendell = new Rivendell.Rivendell(auth_username, auth_token, '/rd-bin/rdxport.cgi'); + rivendell.setListDropboxesEndpoint('/rh-bin/listdropboxes.cgi'); + musicpools = new Musicpools(); } function musicpools_cleanup() { + rivendell = null; } + +// this and jinglegroups are basicly the same +var Musicpools = function() { + // todo: get current Pool Id from session like shows? + this.currentPoolId = null; + this.musicpools = []; + this.fetch(); +}; + +Musicpools.prototype.fetch = function() { + var self = this; + + rivendell.listDropboxes(function(groupsXml, status, req) { + self.musicpools = []; + + var dbs = $(groupsXml).find("dropboxList").children(); + dbs.each(function(index, groupXml) { + if ($('type', groupXml).text() !== 'musicpool') { + return true; // continue + } + + var musicpool = new Musicpool( + $('musicpool-title', groupXml).text(), + $('musicpool-clock', groupXml).text(), + $('group', groupXml).text(), + $('group-description', groupXml).text(), + $('group-low-cart', groupXml).text(), + $('group-high-cart', groupXml).text(), + $('normalization-level', groupXml).text(), + $('autotrim-level', groupXml).text() + ); + + self.musicpools.push(musicpool); + }); + + self.updateSelector(); + }); +}; + +Musicpools.prototype.updateSelector = function() { + $('#musicpool-selector').find('option').remove(); + + // todo: add from list + this.musicpools.each(function(index, musicpool) { + var name = musicpool.title + ' (' + musicpool.clock + ')'; + $('#musicpool-selector').append($('