From 2586393b4cad5b1de4437d9e7e85f44745cbf581 Mon Sep 17 00:00:00 2001 From: Patrick Fic <> Date: Tue, 26 Jul 2022 09:33:08 -0700 Subject: [PATCH] Added admin functionality. --- server.js | 12 ++++++++++ server/admin/adminops.js | 52 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/server.js b/server.js index 8b21072d8..50640e365 100644 --- a/server.js +++ b/server.js @@ -172,6 +172,18 @@ app.post( fb.validateAdmin, adm.createShop ); +app.post( + "/adm/updateshop", + fb.validateFirebaseIdToken, + fb.validateAdmin, + adm.updateShop +); +app.post( + "/adm/updatecounter", + fb.validateFirebaseIdToken, + fb.validateAdmin, + adm.updateCounter +); //Stripe Processing var stripe = require("./server/stripe/payment"); diff --git a/server/admin/adminops.js b/server/admin/adminops.js index eed2bcb79..b66e27aa3 100644 --- a/server/admin/adminops.js +++ b/server/admin/adminops.js @@ -66,3 +66,55 @@ exports.createShop = async (req, res) => { res.status(500).json(error); } }; +exports.updateCounter = async (req, res) => { + logger.log("admin-update-counter", "ADMIN", req.user.email, null, { + request: req.body, + ioadmin: true, + }); + const { id, counter } = req.body; + + try { + const result = await client.request( + `mutation UPDATE_COUNTER($id: uuid!, $counter: counters_set_input!) { + update_counters_by_pk(pk_columns: { id: $id }, _set: $counter) { + id + countertype + count + prefix + } + }`, + { + id, + counter, + } + ); + res.json(result); + } catch (error) { + res.status(500).json(error); + } +}; +exports.updateShop = async (req, res) => { + logger.log("admin-update-shop", "ADMIN", req.user.email, null, { + request: req.body, + ioadmin: true, + }); + const { id, bodyshop } = req.body; + + try { + const result = await client.request( + `mutation UPDATE_BODYSHOP($id: uuid!, $bodyshop: bodyshops_set_input!) { + update_bodyshops_by_pk(pk_columns: { id: $id }, _set: $bodyshop) { + id + + } + }`, + { + id, + bodyshop, + } + ); + res.json(result); + } catch (error) { + res.status(500).json(error); + } +};