const { pool } = require("../triggerBackend.cjs"); const escapeString = require("sql-escape-string"); const getMessages = async (_req, res) => { const conn = await pool.getConnection(); const query = "SELECT * FROM trigger_database.messages;"; conn.query(query).then((rows) => { res.status(200).send(rows); }); conn.end(); }; const getDisplayedGreeting = async (_req, res) => { const conn = await pool.getConnection(); const query = "SELECT * FROM trigger_database.messages WHERE customGreeting = 1 ORDER BY RAND() LIMIT 1;"; conn.query(query).then((rows) => { res.status(200).send(rows); }); conn.end(); }; const postMessage = async (req, res) => { const conn = await pool.getConnection(); const query = `INSERT INTO trigger_database.messages (message) VALUES (${escapeString(req.body.message)});`; conn .query(query) .then((_rows) => { res.status(200).send({ status: "success" }); }) .catch((err) => { res.status(500).send({ error: err }); }); conn.end(); }; const patchMessage = async (req, res) => { const conn = await pool.getConnection(); const query = `UPDATE trigger_database.messages SET message = ${escapeString(req.body.message)}, customGreeting = ${req.body.customGreeting} WHERE id = ${req.body.id};`; conn .query(query) .then((_rows) => { res.status(200).send({ status: "success" }); }) .catch((err) => { res.status(500).send({ error: err }); }); conn.end(); }; const deleteMessage = async (req, res) => { const conn = await pool.getConnection(); const query = `DELETE FROM trigger_database.messages WHERE id = ${req.body.id};`; conn .query(query) .then((_rows) => { res.status(200).send({ status: "success" }); }) .catch((err) => { res.status(500).send({ error: err }); }); conn.end(); }; module.exports = { getMessages, getDisplayedGreeting, postMessage, patchMessage, deleteMessage, };