Merge remote-tracking branch 'upstream/develop' into enhance/slider_handle
This commit is contained in:
commit
ebe6891ea6
15
mopidy_musicbox_webclient/static/js/controls.js
vendored
15
mopidy_musicbox_webclient/static/js/controls.js
vendored
@ -517,9 +517,11 @@ function getCurrentlyPlaying() {
|
||||
}
|
||||
|
||||
function getPlaylistByName(name, scheme, create) {
|
||||
return mopidy.playlists.filter({"name": name}).then(function(plists) {
|
||||
var uri_scheme = scheme || '';
|
||||
var uri = '';
|
||||
return mopidy.playlists.asList().catch(console.error.bind(console)).then(function(plists) {
|
||||
for (var i = 0; i < plists.length; i++) {
|
||||
if (!scheme || getScheme(plists[i].uri) == scheme) {
|
||||
if ((plists[i].name === name) && (scheme === '' || getScheme(plists[i].uri) === scheme)) {
|
||||
return plists[i];
|
||||
}
|
||||
}
|
||||
@ -533,11 +535,18 @@ function getPlaylistByName(name, scheme, create) {
|
||||
});
|
||||
}
|
||||
|
||||
function getPlaylistFull(uri) {
|
||||
return mopidy.playlists.lookup(uri).then(function(pl) {
|
||||
playlists[uri] = pl;
|
||||
return pl;
|
||||
});
|
||||
}
|
||||
|
||||
function getFavourites() {
|
||||
return getPlaylistByName(STREAMS_PLAYLIST_NAME,
|
||||
STREAMS_PLAYLIST_SCHEME,
|
||||
true).then(function(playlist) {
|
||||
return playlist;
|
||||
return getPlaylistFull(playlist.uri);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -425,7 +425,12 @@ function playlisttotable(pl, target, uri) {
|
||||
|
||||
function getPlaylistTracks(uri) {
|
||||
if (playlists[uri] && playlists[uri].tracks) {
|
||||
return playlists[uri].tracks;
|
||||
return Mopidy.when(playlists[uri].tracks);
|
||||
} else {
|
||||
showLoading(true);
|
||||
return mopidy.playlists.getItems(uri).then(function(refs) {
|
||||
return processPlaylistItems({'uri':uri, 'items':refs});
|
||||
}, console.error);
|
||||
}
|
||||
}
|
||||
|
||||
@ -438,16 +443,15 @@ function getUris(tracks) {
|
||||
}
|
||||
|
||||
function getTracksFromUri(uri, full_track_data) {
|
||||
full_track_data = full_track_data || false;
|
||||
var tracks = getPlaylistTracks(uri);
|
||||
if (!tracks && customTracklists[uri]) {
|
||||
tracks = customTracklists[uri];
|
||||
var returnTracksOrUris = function(tracks) {
|
||||
return (full_track_data || false) ? tracks : getUris(tracks);
|
||||
}
|
||||
if (full_track_data) {
|
||||
return tracks;
|
||||
} else {
|
||||
return getUris(tracks);
|
||||
if (customTracklists[uri]) {
|
||||
return returnTracksOrUris(customTracklists[uri]);
|
||||
} else if (playlists[uri] && playlists[uri].tracks) {
|
||||
return returnTracksOrUris(playlists[uri].tracks);
|
||||
}
|
||||
return [];
|
||||
}
|
||||
|
||||
//convert time to human readable format
|
||||
|
||||
@ -250,14 +250,10 @@ function togglePlaylists() {
|
||||
function showTracklist(uri) {
|
||||
$(PLAYLIST_TABLE).empty();
|
||||
togglePlaylists();
|
||||
var tracks = getPlaylistTracks(uri);
|
||||
//load from cache
|
||||
if (tracks) {
|
||||
var tracks = getPlaylistTracks(uri).then(function(tracks) {
|
||||
resultsToTables(tracks, PLAYLIST_TABLE, uri);
|
||||
return;
|
||||
} else {
|
||||
showLoading(true);
|
||||
}
|
||||
});
|
||||
showLoading(false);
|
||||
updatePlayIcons(uri);
|
||||
$('#playlistslist li a').each(function() {
|
||||
$(this).removeClass("playlistactive");
|
||||
@ -266,10 +262,6 @@ function showTracklist(uri) {
|
||||
}
|
||||
});
|
||||
// scrollToTracklist();
|
||||
//lookup recent tracklist
|
||||
mopidy.playlists.getItems(uri).then(function(refs) {
|
||||
processPlaylistItems({'uri':uri, 'items':refs});
|
||||
}, console.error);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@ -183,6 +183,11 @@ function processGetPlaylists(resultArr) {
|
||||
* process results of a returned list of playlist track refs
|
||||
*********************************************************/
|
||||
function processPlaylistItems(resultDict) {
|
||||
if (resultDict.items.length == 0) {
|
||||
console.log('Playlist', resultDict.uri, 'is empty');
|
||||
showLoading(false);
|
||||
return;
|
||||
}
|
||||
var trackUris = []
|
||||
for (i = 0; i < resultDict.items.length; i++) {
|
||||
trackUris.push(resultDict.items[i].uri);
|
||||
@ -194,9 +199,10 @@ function processPlaylistItems(resultDict) {
|
||||
for (i = 0; i < trackUris.length; i++) {
|
||||
playlists[newplaylisturi].tracks.push(tracks[trackUris[i]][0]);
|
||||
}
|
||||
resultsToTables(playlists[newplaylisturi].tracks, PLAYLIST_TABLE, newplaylisturi);
|
||||
showLoading(false);
|
||||
return playlists[newplaylisturi].tracks;
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
/********************************************************
|
||||
|
||||
4
tox.ini
4
tox.ini
@ -5,11 +5,11 @@ envlist = py27, flake8
|
||||
sitepackages = true
|
||||
deps =
|
||||
mock
|
||||
mopidy==dev
|
||||
mopidy
|
||||
pytest
|
||||
pytest-cov
|
||||
pytest-xdist
|
||||
install_command = pip install --allow-unverified=mopidy --pre {opts} {packages}
|
||||
install_command = pip install {opts} {packages}
|
||||
commands =
|
||||
py.test \
|
||||
--basetemp={envtmpdir} \
|
||||
|
||||
Loading…
Reference in New Issue
Block a user