Comma-separated library uris

This commit is contained in:
James Barnsley
2018-10-16 20:28:55 +13:00
parent 8154b409e2
commit 5c9937077e
6 changed files with 13922 additions and 10597 deletions

4
src/js/bootstrap.js vendored
View File

@ -59,8 +59,8 @@ var initialState = {
progress: 0,
play_state: null,
uri_schemes: [],
library_albums_uri: 'local:directory?type=album',
library_artists_uri: 'local:directory?type=artist'
library_albums_uris: 'local:directory?type=album',
library_artists_uris: 'local:directory?type=artist'
},
pusher: {
connected: false,

View File

@ -1715,7 +1715,22 @@ const MopidyMiddleware = (function(){
var last_run = store.getState().ui.processes.MOPIDY_LIBRARY_ALBUMS_PROCESSOR
if (!last_run){
request(socket, store, 'library.browse', { uri: store.getState().mopidy.library_albums_uri } )
var uris = store.getState().mopidy.library_albums_uris.split(',');
var promises = [];
// Construct an array of promises
for (var uri of uris){
promises.push(
request(socket, store, 'library.browse', { uri: uri })
);
}
// Now run the requests
Promise.all(promises).then(responses => {
console.log(responses);
});
request(socket, store, 'library.browse', { uri: store.getState().mopidy.library_albums_uris })
.then(response => {
if (response.length <= 0) return

View File

@ -28,8 +28,8 @@ class Settings extends React.Component {
this.state = {
mopidy_host: this.props.mopidy.host,
mopidy_port: this.props.mopidy.port,
mopidy_library_artists_uri: this.props.mopidy.library_artists_uri,
mopidy_library_albums_uri: this.props.mopidy.library_albums_uri,
mopidy_library_artists_uris: this.props.mopidy.library_artists_uris,
mopidy_library_albums_uris: this.props.mopidy.library_albums_uris,
pusher_username: this.props.pusher.username,
input_in_focus: null
}
@ -393,12 +393,12 @@ class Settings extends React.Component {
<div className="input">
<input
type="text"
value={this.state.mopidy_library_artists_uri}
value={this.state.mopidy_library_artists_uris}
onChange={e => this.setState({mopidy_library_artists_uri: e.target.value})}
onBlur={e => this.handleBlur('mopidy', 'library_artists_uri', e.target.value)}
/>
<div className="description">
URI used for collecting library artists
URIs used for collecting library artists (comma-separated list)
</div>
</div>
</div>
@ -408,12 +408,12 @@ class Settings extends React.Component {
<div className="input">
<input
type="text"
value={this.state.mopidy_library_albums_uri}
onChange={e => this.setState({mopidy_library_albums_uri: e.target.value})}
onBlur={e => this.handleBlur('mopidy', 'library_albums_uri', e.target.value)}
value={this.state.mopidy_library_albums_uris}
onChange={e => this.setState({mopidy_library_albums_uris: e.target.value})}
onBlur={e => this.handleBlur('mopidy', 'library_albums_uris', e.target.value)}
/>
<div className="description">
URI used for collecting library albums
URIs used for collecting library albums (comma-separated list)
</div>
</div>
</div>