initial upload

This commit is contained in:
Kai Waggeling 2025-05-17 16:23:48 +02:00
parent ac114da487
commit 7c1cfdff51
63 changed files with 6883 additions and 0 deletions

100
routes/api.media.mjs Normal file
View file

@ -0,0 +1,100 @@
import {
Router
} from "express";
import {
Medium as MediaTable
} from "../sequelize/media.model.mjs";
import {
Template as LabelTable
} from "../sequelize/template.model.mjs";
export var Routes = Router();
Routes.get('/media', async function (Request, Response)
{
let MediaList = await MediaTable.findAll();
MediaList.sort(function (a, b) {
if (a.name < b.name) return -1;
if (a.name > b.name) return 1;
return 0;
});
Response.send(MediaList);
})
Routes.get('/medium/:MediumID', async function (Request, Response)
{
Response.send(await MediaTable.findByPk(Request.params.MediumID));
})
Routes.post('/medium', async function (Request, Response)
{
let NewMedium = await MediaTable.create({
name: Request.body.name,
columns: Request.body.columns,
spacing: Request.body.spacing,
width: Request.body.width
});
Response.status(200);
Response.send(NewMedium);
})
Routes.put('/medium', async function (Request, Response)
{
let Medium = await MediaTable.findByPk(Request.body.mediumId);
await Medium.update({
name: Request.body.name,
columns: Request.body.columns,
spacing: Request.body.spacing,
width: Request.body.width
});
Response.status(200);
Response.send(Medium);
})
Routes.delete('/medium', async function (Request, Response)
{
let Medium = await MediaTable.findByPk(Request.body.mediumId);
await Medium.destroy();
Response.status(200);
Response.end();
})
Routes.put('/medium/label', async function (Request, Response)
{
let Medium = await MediaTable.findByPk(Request.body.mediumId);
let Label = await LabelTable.findByPk(Request.body.labelId);
await Medium.addLabel(Label);
Response.status(200);
Response.end();
})
Routes.delete('/medium/label', async function (Request, Response)
{
let Medium = await MediaTable.findByPk(Request.body.mediumId);
let Label = await LabelTable.findByPk(Request.body.labelId);
await Medium.removeLabel(Label);
Response.status(200);
Response.end();
})