diff --git a/client/src/app/api/settingsApi.js b/client/src/app/api/settingsApi.js new file mode 100644 index 000000000..fa0c9d2e0 --- /dev/null +++ b/client/src/app/api/settingsApi.js @@ -0,0 +1,16 @@ +import axios from 'axios'; +import { serverURL } from './apiConstants'; +export const settingsNamespace = 'settings'; +export const settingsURL = serverURL + settingsNamespace; + +export const fetchSettings = async () => { + const res = await axios.get(settingsURL); + return res.data; +}; + +export const postSettings = async (data) => { + console.log('debug sending', data) + console.log('debug await', await axios.post(settingsURL, data)) + const res = await axios.post(settingsURL, data); + return res; +}; diff --git a/client/src/features/control/MessageControl.jsx b/client/src/features/control/MessageControl.jsx index bb9c8eb9e..602e57ae6 100644 --- a/client/src/features/control/MessageControl.jsx +++ b/client/src/features/control/MessageControl.jsx @@ -28,7 +28,6 @@ export default function MessageControl() { // Handle presenter messages socket.on('messages-presenter', (data) => { - console.log('debug: stting data', data); setPres({ ...data }); }); @@ -53,8 +52,6 @@ export default function MessageControl() { }; }, [socket]); - console.log('debug', pres); - const messageControl = async (action, payload) => { switch (action) { case 'pres-text': diff --git a/server/app.js b/server/app.js index 7f0155601..db26ab48a 100644 --- a/server/app.js +++ b/server/app.js @@ -6,7 +6,12 @@ const low = require('lowdb'); const FileSync = require('lowdb/adapters/FileSync'); const adapter = new FileSync(config.database.filename); const db = low(adapter); -db.defaults({ events: [] }).write(); +// TODO: move defaults to config file +db.defaults({ + events: [], + event: { title: '', url: '', publicInfo: '', backstageInfo: '' }, + settings: {}, +}).write(); // export db module.exports.db = db; @@ -18,7 +23,7 @@ const cors = require('cors'); // Import Routes const eventsRouter = require('./routes/eventsRouter.js'); -const playbackRouter = require('./routes/playbackRouter.js'); +const settingsRouter = require('./routes/settingsRouter.js'); // Setup default port const port = process.env.PORT || config.server.port; @@ -48,7 +53,7 @@ app.use(express.json()); // Implement route endpoints app.use('/events', eventsRouter); -app.use('/playback', playbackRouter); +app.use('/settings', settingsRouter); // implement general router app.get('/', function (req, res) { diff --git a/server/routes/settingsRouter.js b/server/routes/settingsRouter.js new file mode 100644 index 000000000..32d2566cd --- /dev/null +++ b/server/routes/settingsRouter.js @@ -0,0 +1,37 @@ +const express = require('express'); +const router = express.Router(); + +// import event controller +const settingsController = require('../controllers/settingsController'); + +// create route between controller and '/settings' endpoint +router.get('/', settingsController.getAll); + +// create route between controller and '/settings' endpoint +router.post('/', settingsController.post); + +// create route between controller and '/event/title' endpoint +router.get('/title', settingsController.titleGet); + +// create route between controller and '/event/title' endpoint +router.post('/title', settingsController.titlePost); + +// create route between controller and '/event/info' endpoint +router.get('/publicInfo', settingsController.publicInfoGet); + +// create route between controller and '/event/info' endpoint +router.post('/publicInfo', settingsController.publicInfoPost); + +// create route between controller and '/event/info' endpoint +router.get('/backstageInfo', settingsController.backstageInfoGet); + +// create route between controller and '/event/info' endpoint +router.post('/backstageInfo', settingsController.backstageInfoPost); + +// create route between controller and '/event/url' endpoint +router.get('/url', settingsController.urlGet); + +// create route between controller and '/event/url' endpoint +router.post('/url', settingsController.urlPost); + +module.exports = router;