Files
Iris/src/js/components/Modal/AddToPlaylistModal.js

45 lines
1.3 KiB
JavaScript
Raw Normal View History

2016-11-14 17:32:36 +13:00
import React, { PropTypes } from 'react'
2016-11-21 07:59:52 +13:00
import FontAwesome from 'react-fontawesome'
2016-11-14 17:32:36 +13:00
import Icon from '../Icon'
import * as helpers from '../../helpers'
export default class AddToPlaylistModal extends React.Component{
2016-11-14 17:32:36 +13:00
constructor(props){
super(props)
}
playlistSelected( playlist_uri ){
this.props.uiActions.addTracksToPlaylist( playlist_uri, this.props.tracks_uris )
2016-11-14 17:32:36 +13:00
this.props.uiActions.closeModal()
}
render(){
if( !this.props.playlists ) return <div className="empty">No editable playlists</div>
var playlists = []
for( var i = 0; i < this.props.playlists.length; i++ ){
if( this.props.playlists[i].can_edit ) playlists.push( this.props.playlists[i] )
}
return (
2016-11-21 07:59:52 +13:00
<div>
<h4>Add to playlist</h4>
<div className="list playlists">
2016-11-21 07:59:52 +13:00
{
playlists.map( playlist => {
return (
<div className="list-item playlist" key={playlist.uri} onClick={ () => this.playlistSelected(playlist.uri) }>
2016-11-21 07:59:52 +13:00
<FontAwesome className="source" name={helpers.sourceIcon(playlist.uri)} />
&nbsp;
<span className="name">{ playlist.name }</span>
{ playlist.tracks ? <span className="grey-text">&nbsp;{ playlist.tracks.total } tracks</span> : null }
</div>
)
})
}
</div>
2016-11-14 17:32:36 +13:00
</div>
)
}
}