Cleaning up index modification

This commit is contained in:
James Barnsley
2017-11-09 09:12:23 +13:00
parent ec41eb5271
commit 8ecd13684f
9 changed files with 209 additions and 185 deletions

View File

@ -167,6 +167,16 @@ class Playlist extends React.Component{
)
}
var tracks = [];
if (this.props.playlist.tracks_uris && this.props.tracks){
for (var i = 0; i < this.props.playlist.tracks_uris.length; i++){
var uri = this.props.playlist.tracks_uris[i]
if (this.props.tracks.hasOwnProperty(uri)){
tracks.push(this.props.tracks[uri])
}
}
}
return (
<div className="view playlist-view content-wrapper">
<div className="thumbnail-wrapper">
@ -183,8 +193,8 @@ class Playlist extends React.Component{
{ this.props.playlist.followers ? <li>{this.props.playlist.followers.total.toLocaleString()} followers</li> : null }
{ this.props.playlist.last_modified ? <li>Edited <Dater type="ago" data={this.props.playlist.last_modified} /></li> : null }
<li>
{ this.props.playlist.tracks_total ? this.props.playlist.tracks_total : '0'} tracks,&nbsp;
{ this.props.playlist.tracks ? <Dater type="total-time" data={this.props.playlist.tracks} /> : '0 mins' }
{ this.props.playlist.tracks_total ? this.props.playlist.tracks_total : tracks.length} tracks,&nbsp;
<Dater type="total-time" data={tracks} />
</li>
</ul>
</div>
@ -192,7 +202,7 @@ class Playlist extends React.Component{
{ this.renderActions() }
<section className="list-wrapper">
{ this.props.playlist.tracks ? <TrackList uri={this.props.params.uri} className="playlist-track-list" context={context} tracks={this.props.playlist.tracks} removeTracks={ tracks_indexes => this.removeTracks(tracks_indexes) } reorderTracks={ (indexes, index) => this.reorderTracks(indexes, index) } /> : null }
<TrackList uri={this.props.params.uri} className="playlist-track-list" context={context} tracks={tracks} removeTracks={ tracks_indexes => this.removeTracks(tracks_indexes) } reorderTracks={ (indexes, index) => this.reorderTracks(indexes, index) } />
<LazyLoadListener loading={this.props.playlist.tracks_more} loadMore={ () => this.loadMore() }/>
</section>
</div>
@ -212,6 +222,7 @@ const mapStateToProps = (state, ownProps) => {
return {
slim_mode: state.ui.slim_mode,
load_queue: state.ui.load_queue,
tracks: state.core.tracks,
playlist: (state.core.playlists && state.core.playlists[uri] !== undefined ? state.core.playlists[uri] : false ),
spotify_library_playlists: state.spotify.library_playlists,
local_library_playlists: state.mopidy.library_playlists,