This commit is contained in:
Arne van Iterson 2019-09-19 23:28:30 +02:00
commit f5c9712d9e
4 changed files with 22 additions and 18 deletions

3
.gitignore vendored
View File

@ -1,3 +1,2 @@
node_modules/ node_modules/
bin/ffmpeg bin/ffmpeg
music/

0
music/.gitkeep Normal file
View File

View File

@ -38,23 +38,27 @@ router.get('/get/:type/:id', (req, res, _next) => {
let db = {}; let db = {};
if (type === 'song') { if (type === 'song') {
db = require(rootdir + '/songs.json'); db = require(rootdir + 'database/songs.json');
} else if (type === 'album') { } else if (type === 'album') {
db = require(rootdir + '/albums.json'); db = require(rootdir + "database/albums.json");
} else if (type === 'artist') { } else if (type === 'artist') {
db = require(rootdir + '/artists.json'); db = require(rootdir + "database/artists.json");
} }
const arg = id.split(','); if (id === 'all') {
res.json({result: db})
if (arg.length > 1) {
let result = [];
arg.forEach(element => {
result.push(db[Number(element)]);
});
res.json({ result: result });
} else { } else {
res.json({ result: db[id] }); const arg = id.split(",");
if (arg.length > 1) {
let result = [];
arg.forEach(element => {
result.push(db[Number(element)]);
});
res.json({ result: result });
} else {
res.json({ result: db[id] });
}
} }
}); });
@ -62,7 +66,7 @@ router.get('/get/:type/:id', (req, res, _next) => {
router.get('/play/:track', (req, res, _next) => { router.get('/play/:track', (req, res, _next) => {
var key = req.params.track; var key = req.params.track;
var music = rootdir + "/music/" + key + ".mp3"; var music = rootdir + "music/" + key + ".mp3";
var stat = fs.statSync(music); var stat = fs.statSync(music);
range = req.headers.range; range = req.headers.range;
@ -112,13 +116,14 @@ router.get('/search/:query', (req, res, _next) => {
const query = req.params.query; const query = req.params.query;
let result = []; let result = [];
fs.readdir(rootdir + '/database/', (err, files) => { fs.readdir(rootdir + 'database/', (err, files) => {
files.forEach(file => { files.forEach(file => {
const content = require(rootdir + '/database/' + file); const content = require(rootdir + 'database/' + file);
content.forEach(element => { content.forEach(element => {
if (element.name.match(query)) { if (element.name.match(query)) {
element.foundIn = file;
result.push(element); result.push(element);
} }
}); });

View File

@ -3,7 +3,7 @@ extends layout
block content block content
h1= title h1= title
p Welcome to #{title} p Welcome to #{title}
form(action="/download" method="get") form(action="download" method="get")
label(for="url") label(for="url")
input(name="url" type="text") input(name="url" type="text")
input(type="submit") input(type="submit")