Added thumbnails

This commit is contained in:
Sean Edmunds
2025-07-21 16:27:51 -05:00
parent 6bd3df0904
commit ee31be6224

View File

@@ -533,9 +533,15 @@ app.delete("/trigger/api/themePlaylists", async (req, res) => {
}); });
app.get("/trigger/api/backgrounds", async (_req, res) => { app.get("/trigger/api/backgrounds", async (_req, res) => {
fs.readdir("../TriggerFrontend/backgrounds", (_err, files) => { fs.readdir(
res.status(200).send(files); "../TriggerFrontend/backgrounds",
}); { withFileTypes: true },
(_err, files) => {
res
.status(200)
.send(files.filter((file) => file.isFile()).map((file) => file.name));
},
);
}); });
app.post( app.post(
@@ -543,7 +549,11 @@ app.post(
uploads.single("background"), uploads.single("background"),
async (req, res) => { async (req, res) => {
const image = req.file.path; const image = req.file.path;
const thumbnail = `${req.file.destination}thumbs/${req.file.filename}`;
exec(`convert ${image} -resize 'x1080' -define jpeg:extent=300kb ${image}`); exec(`convert ${image} -resize 'x1080' -define jpeg:extent=300kb ${image}`);
exec(
`convert ${image} -resize 'x360' -define jpeg:extent=75kb ${thumbnail}`,
);
res.status(200).send({ status: "success", statusText: image }); res.status(200).send({ status: "success", statusText: image });
}, },
); );
@@ -556,6 +566,13 @@ app.patch("/trigger/api/backgrounds", async (req, res) => {
if (err) throw err; if (err) throw err;
}, },
); );
fs.rename(
`../TriggerFrontend/backgrounds/thumbs/${req.body.fileName}`,
`../TriggerFrontend/backgrounds/thumbs/${req.body.newFileName}`,
(err) => {
if (err) throw err;
},
);
const conn = await pool.getConnection(); const conn = await pool.getConnection();
const query = `UPDATE trigger_database.themes SET backgroundImage = ${escapeString(req.body.newFileName)} WHERE backgroundImage = ${escapeString(req.body.fileName)};`; const query = `UPDATE trigger_database.themes SET backgroundImage = ${escapeString(req.body.newFileName)} WHERE backgroundImage = ${escapeString(req.body.fileName)};`;
conn conn
@@ -573,6 +590,12 @@ app.delete("/trigger/api/backgrounds", async (req, res) => {
fs.rm(`../TriggerFrontend/backgrounds/${req.body.fileName}`, (_err) => { fs.rm(`../TriggerFrontend/backgrounds/${req.body.fileName}`, (_err) => {
if (_err) throw _err; if (_err) throw _err;
}); });
fs.rm(
`../TriggerFrontend/backgrounds/thumbs/${req.body.fileName}`,
(_err) => {
if (_err) throw _err;
},
);
const conn = await pool.getConnection(); const conn = await pool.getConnection();
const query = `UPDATE trigger_database.themes SET backgroundImage = 'none' WHERE backgroundImage = ${escapeString(req.body.fileName)};`; const query = `UPDATE trigger_database.themes SET backgroundImage = 'none' WHERE backgroundImage = ${escapeString(req.body.fileName)};`;
conn conn