Download un-sync fix, playback history
This commit is contained in:
@ -163,9 +163,11 @@ class Downloads {
|
||||
if (index == -1) {
|
||||
this.downloads = [];
|
||||
await new Promise((res, rej) => {
|
||||
this.db.remove({state: 0}, {}, (e) => {});
|
||||
this.db.remove({state: 0}, {multi: true}, (e) => {});
|
||||
res();
|
||||
})
|
||||
});
|
||||
|
||||
if (this.qucb) this.qucb();
|
||||
return;
|
||||
}
|
||||
|
||||
@ -176,6 +178,8 @@ class Downloads {
|
||||
res();
|
||||
});
|
||||
this.downloads.splice(index, 1);
|
||||
|
||||
if (this.qucb) this.qucb();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -193,6 +193,17 @@ app.get('/albums/:id', async (req, res) => {
|
||||
res.send(albums);
|
||||
})
|
||||
|
||||
//Get tracks from listening history
|
||||
app.get('/history', async (req, res) => {
|
||||
let data = await deezer.callApi('deezer.pageProfile', {
|
||||
nb: 200,
|
||||
tab: "history",
|
||||
user_id: deezer.userId.toString()
|
||||
});
|
||||
let tracks = data.results.TAB.history.data.map((t) => new Track(t));
|
||||
res.send(tracks);
|
||||
});
|
||||
|
||||
//Search, q as query parameter
|
||||
app.get('/search', async (req, res) => {
|
||||
let data = await deezer.callApi('deezer.pageSearch', {query: req.query.q, nb: 100});
|
||||
@ -496,27 +507,24 @@ async function createServer(electron = false, ecb) {
|
||||
downloads: downloads.downloads
|
||||
});
|
||||
});
|
||||
|
||||
//Emit download progress updates
|
||||
setInterval(() => {
|
||||
sockets.forEach((s) => {
|
||||
if (!downloads.download) {
|
||||
s.emit('download', null);
|
||||
return;
|
||||
}
|
||||
|
||||
s.emit('download', {
|
||||
id: downloads.download.id,
|
||||
size: downloads.download.size,
|
||||
downloaded: downloads.download.downloaded,
|
||||
track: downloads.download.track,
|
||||
path: downloads.download.path
|
||||
});
|
||||
});
|
||||
}, 500);
|
||||
|
||||
});
|
||||
await downloads.load();
|
||||
//Emit download progress updates
|
||||
setInterval(() => {
|
||||
sockets.forEach((s) => {
|
||||
if (!downloads.download) {
|
||||
s.emit('download', null);
|
||||
return;
|
||||
}
|
||||
s.emit('download', {
|
||||
id: downloads.download.id,
|
||||
size: downloads.download.size,
|
||||
downloaded: downloads.download.downloaded,
|
||||
track: downloads.download.track,
|
||||
path: downloads.download.path
|
||||
});
|
||||
});
|
||||
}, 350);
|
||||
|
||||
//Start server
|
||||
server.on('error', (e) => {
|
||||
|
Reference in New Issue
Block a user