Add framework for profiles endpoint

This commit is contained in:
Kevin Thomas
2021-07-31 15:32:35 -07:00
parent c2f1be4a0d
commit 9068ffe494
3 changed files with 54 additions and 1 deletions

View File

@@ -9,6 +9,7 @@ const config = require('config')
const authRouter = require('./routes/auth')
const usersRouter = require('./routes/users')
const profilesRouter = require('./routes/profiles')
const app = express()
@@ -43,5 +44,6 @@ app.use(passport.authenticate('session'))
// Define routes
app.use('/', authRouter)
app.use('/users', usersRouter)
app.use('/profiles', profilesRouter)
module.exports = app

View File

@@ -12,6 +12,7 @@ module.exports = function () {
db.run(`CREATE TABLE IF NOT EXISTS profiles (
name TEXT UNIQUE,
user INTEGER,
timer_enabled INTEGER,
timer_seconds INTEGER,
volume INTEGER,
@@ -26,7 +27,6 @@ module.exports = function () {
tremolo_enabled INTEGER,
tremolo_frequency REAL,
tremolo_depth REAL,
user INTEGER,
FOREIGN KEY(user) REFERENCES user(id))`
)
})

51
server/routes/profiles.js Normal file
View File

@@ -0,0 +1,51 @@
const express = require('express')
const db = require('../db')
const router = express.Router()
router.post('/', function (req, res, next) {
if (!req.user) {
res.sendStatus(401)
}
db.run(`INSERT INTO profiles (
name,
user,
timer_enabled,
timer_seconds,
volume,
noise_color,
filter_enabled,
filter_type,
filter_cutoff,
filter_cutoff_lfo_enabled,
filter_cutoff_lfo_rate,
filter_cutoff_lfo_min,
filter_cutoff_lfo_max,
tremolo_enabled,
tremolo_frequency,
tremolo_depth)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, [
req.body.name,
req.user.id,
req.body.timerEnabled,
req.body.timerSeconds,
req.body.volume,
req.body.noiseColor,
req.body.filterEnabled,
req.body.filterType,
req.body.filterCutoff,
req.body.filterCutoffLFOEnabled,
req.body.filterCutoffLFORate,
req.body.filterCutoffLFOMin,
req.body.filterCutoffLFOMax,
req.body.tremoloEnabled,
req.body.tremoloFrequency,
req.body.tremoloDepth
],
function (err) {
// TODO: Handle error
console.log(err)
}
)
})