implement select_track()
This commit is contained in:
parent
6aa1254da1
commit
352f817dd5
@ -23,10 +23,6 @@ async def get_random_track(request):
|
|||||||
'src': convert_filepath(art256),
|
'src': convert_filepath(art256),
|
||||||
'sizes': '256x256',
|
'sizes': '256x256',
|
||||||
'type': 'image/jpeg'
|
'type': 'image/jpeg'
|
||||||
}, {
|
|
||||||
'src': convert_filepath(art64),
|
|
||||||
'sizes': '64x64',
|
|
||||||
'type': 'image/jpeg'
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
return track
|
return track
|
||||||
@ -71,7 +67,7 @@ async def get_tracks(request, albumartist, album, date):
|
|||||||
)
|
)
|
||||||
tracks = [dict(t) for t in tracks]
|
tracks = [dict(t) for t in tracks]
|
||||||
for track in tracks:
|
for track in tracks:
|
||||||
track.pop('filepath')
|
track['filepath'] = convert_filepath(track['filepath'])
|
||||||
track.pop('last_modified')
|
track.pop('last_modified')
|
||||||
return tracks
|
return tracks
|
||||||
|
|
||||||
|
@ -109,6 +109,24 @@ function populate_albums(data) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function select_track(event) {
|
||||||
|
let track = {}
|
||||||
|
track['artist'] = document.querySelector('input[name=artist]:checked').value;
|
||||||
|
track['album'] = document.querySelector('input[name=album]:checked').value;
|
||||||
|
track['title'] = document.querySelector('input[name=track]:checked').value;
|
||||||
|
|
||||||
|
let art_url = document.querySelector('input[name=album]:checked').parentElement.querySelector('img').src;
|
||||||
|
art_url = art_url.replace('64x64', '256x256');
|
||||||
|
let artwork = [{'src': art_url, 'sizes': '256x256', 'type': 'image/jpeg'}];
|
||||||
|
track['artwork'] = artwork;
|
||||||
|
|
||||||
|
let track_url = new URL(event.srcElement.parentElement.querySelector('.track').dataset.url, window.location);
|
||||||
|
|
||||||
|
update_now_playing(track);
|
||||||
|
player.src = track_url;
|
||||||
|
playTrack();
|
||||||
|
}
|
||||||
|
|
||||||
function clear_tracks() {
|
function clear_tracks() {
|
||||||
let tracks = document.querySelector('#track_list');
|
let tracks = document.querySelector('#track_list');
|
||||||
while (tracks.firstChild) {
|
while (tracks.firstChild) {
|
||||||
@ -183,7 +201,6 @@ function setMediaSession(track) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function update_now_playing(track) {
|
function update_now_playing(track) {
|
||||||
track.artwork.pop(1); // remove lower resolution option
|
|
||||||
document.querySelector('#now_playing_artist').textContent = track.artist;
|
document.querySelector('#now_playing_artist').textContent = track.artist;
|
||||||
document.querySelector('#now_playing_album').textContent = track.album;
|
document.querySelector('#now_playing_album').textContent = track.album;
|
||||||
document.querySelector('#now_playing_title').textContent = track.title;
|
document.querySelector('#now_playing_title').textContent = track.title;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user