Files
noisedash/server/routes/samples.js
2021-08-16 21:04:49 -07:00

58 lines
1.2 KiB
JavaScript

const express = require('express')
const config = require('config')
const multer = require('multer')
const storage = multer.diskStorage({
destination: config.get('Server.sampleUploadPath'),
filename: function (req, file, cb) {
cb(null, req.body.name)
}
})
const upload = multer({ storage: storage })
const db = require('../db')
const router = express.Router()
router.post('/samples', upload.single('sample'), function (req, res, next) {
if (!req.user) {
return res.sendStatus(401)
}
db.run('INSERT INTO samples (name, user) VALUES (?, ?)', [
req.body.name,
req.user.id
],
function (err) {
if (err) {
return res.sendStatus(500)
} else {
return res.sendStatus(200)
}
})
})
router.get('/samples', function (req, res) {
if (!req.user) {
return res.sendStatus(401)
}
const samples = []
db.all('SELECT id, name FROM samples WHERE user = ?', [req.user.id], (err, rows) => {
if (err) {
return res.sendStatus(500)
}
rows.forEach((row) => {
const sample = {}
sample.id = row.id
sample.name = row.name
samples.push(sample)
})
res.json({ samples: samples })
})
})
module.exports = router