diff --git a/src/js/components/AddSeedField.js b/src/js/components/AddSeedField.js index 01d04b5e..05ae6a81 100755 --- a/src/js/components/AddSeedField.js +++ b/src/js/components/AddSeedField.js @@ -78,12 +78,12 @@ class AddSeedField extends React.Component{ } results(){ - if (typeof(this.props.results) === 'undefined'){ - return null - } else if (typeof(this.props.results[this.id]) === 'undefined'){ - return null + if (this.props.results === undefined){ + return null; + } else if (this.props.results[this.id] === undefined){ + return null; } else { - return this.props.results[this.id] + return this.props.results[this.id]; } } @@ -137,7 +137,7 @@ class AddSeedField extends React.Component{ const mapStateToProps = (state, ownProps) => { return { - genres: (state.ui.genres ? state.ui.genres : null), + genres: (state.spotify.genres ? state.spotify.genres : null), results: (state.spotify.autocomplete_results ? state.spotify.autocomplete_results : {}) } } diff --git a/src/js/services/spotify/actions.js b/src/js/services/spotify/actions.js index 3efb824f..2adefa2d 100755 --- a/src/js/services/spotify/actions.js +++ b/src/js/services/spotify/actions.js @@ -653,7 +653,7 @@ export function getAutocompleteResults(field_id, query, types = ['album','artist response => { var genres = [] if (genre_included){ - var available_genres = getState().ui.genres + var available_genres = getState().spotify.genres if (available_genres){ for (var i = 0; i < available_genres.length; i++){ if (available_genres[i].includes(query)){ @@ -666,6 +666,35 @@ export function getAutocompleteResults(field_id, query, types = ['album','artist } } } + + if (response.artists && response.artists.items){ + dispatch({ + type: 'ARTISTS_LOADED', + artists: response.artists.items + }); + } + + if (response.albums && response.albums.items){ + dispatch({ + type: 'ALBUMS_LOADED', + albums: response.albums.items + }); + } + + if (response.playlists && response.playlists.items){ + dispatch({ + type: 'PLAYLISTS_LOADED', + playlists: response.playlists.items + }); + } + + if (response.tracks && response.tracks.items){ + dispatch({ + type: 'TRACKS_LOADED', + tracks: response.tracks.items + }); + } + dispatch({ type: 'SPOTIFY_AUTOCOMPLETE_LOADED', field_id: field_id, diff --git a/src/js/services/spotify/reducer.js b/src/js/services/spotify/reducer.js index cdf1410a..825a80c7 100755 --- a/src/js/services/spotify/reducer.js +++ b/src/js/services/spotify/reducer.js @@ -162,6 +162,14 @@ export default function reducer(spotify = {}, action){ autocomplete_results: autocomplete_results }) + case 'SPOTIFY_GENRES_LOADED': + return Object.assign( + {}, + spotify, + { + genres: action.genres + }) + /** * Library diff --git a/src/js/views/discover/DiscoverRecommendations.js b/src/js/views/discover/DiscoverRecommendations.js index b1ea985e..798bdaf6 100755 --- a/src/js/views/discover/DiscoverRecommendations.js +++ b/src/js/views/discover/DiscoverRecommendations.js @@ -108,8 +108,8 @@ class Discover extends React.Component{ min: 0, max: 100, value: { - min: 25, - max: 75 + min: 0, + max: 100 } }, speechiness: { @@ -303,7 +303,6 @@ class Discover extends React.Component{ return (