diff --git a/src/controllers/mods.js b/src/controllers/mods.js index c855b80..73923c5 100644 --- a/src/controllers/mods.js +++ b/src/controllers/mods.js @@ -12,4 +12,16 @@ async function getAllMods(req, res) { } } -module.exports = { getAllMods }; \ No newline at end of file +async function getModByName(req, res) { + try { + console.debug("Calling controller"); + const query_result = await mod_service.getModByName(req.params.name); + res.json(query_result); + } catch (error) { + console.debug("Error at controller"); + res.status(500).json({ error: error.message }); + } +} + + +module.exports = { getAllMods, getModByName }; \ No newline at end of file diff --git a/src/models/mod.js b/src/models/mod.js index 65e55d8..44908ea 100644 --- a/src/models/mod.js +++ b/src/models/mod.js @@ -7,7 +7,19 @@ async function getAllMods() { } async function getModByName(name) { - return db.query("SELECT display_name FROM mods WHERE name = ?", [name]); + try { + console.debug("Searching for", name); + const res = await db.query("SELECT * FROM mods WHERE Name = ?;", [name]); + if (res && res.length > 0) { + return res[0]; + } else { + return null; + } + } catch (err) { + console.error("Error in getModByName:", err); + throw error; + } + } // --- WIP --- diff --git a/src/routes/mods.js b/src/routes/mods.js index bfc748d..3d57ad6 100644 --- a/src/routes/mods.js +++ b/src/routes/mods.js @@ -12,8 +12,7 @@ router.get("/", async (req,res) => { router.get("/:name", async (req,res) => { const name = req.params.name; console.debug("Accessing mod " + name) - res.send("Not implemented"); - // res.send(name + " is not there yet"); + controller.getModByName(req, res); }) module.exports = router; \ No newline at end of file diff --git a/src/services/modService.js b/src/services/modService.js index 54f46f4..3f69155 100644 --- a/src/services/modService.js +++ b/src/services/modService.js @@ -5,4 +5,9 @@ async function getAllMods() { return model.getAllMods(); } -module.exports = { getAllMods }; \ No newline at end of file +async function getModByName(name) { + console.debug("Calling service"); + return model.getModByName(name); +} + +module.exports = { getAllMods, getModByName }; \ No newline at end of file