calender crud operations

This commit is contained in:
Julian Krauser 2024-10-27 11:47:13 +01:00
parent e7b8257336
commit bf701163d6
18 changed files with 703 additions and 0 deletions

View file

@ -0,0 +1,57 @@
import express, { Request, Response } from "express";
import {
getCalendarItemById,
getAllCalendarItems,
getAllCalendarTypes,
getCalendarTypeById,
createCalendarItem,
createCalendarType,
updateCalendarItem,
updateCalendarType,
deleteCalendarItem,
deleteCalendarType,
} from "../../controller/admin/calendarController";
var router = express.Router({ mergeParams: true });
router.get("/items", async (req: Request, res: Response) => {
await getAllCalendarItems(req, res);
});
router.get("/item/:id", async (req: Request, res: Response) => {
await getCalendarItemById(req, res);
});
router.get("/types", async (req: Request, res: Response) => {
await getAllCalendarTypes(req, res);
});
router.get("/type/:id", async (req: Request, res: Response) => {
await getCalendarTypeById(req, res);
});
router.post("/item", async (req: Request, res: Response) => {
await createCalendarItem(req, res);
});
router.post("/type", async (req: Request, res: Response) => {
await createCalendarType(req, res);
});
router.patch("/item/:id", async (req: Request, res: Response) => {
await updateCalendarItem(req, res);
});
router.patch("/type/:id", async (req: Request, res: Response) => {
await updateCalendarType(req, res);
});
router.delete("/item/:id", async (req: Request, res: Response) => {
await deleteCalendarItem(req, res);
});
router.delete("/type/:id", async (req: Request, res: Response) => {
await deleteCalendarType(req, res);
});
export default router;

View file

@ -9,6 +9,8 @@ import qualification from "./qualification";
import member from "./member";
import calendar from "./calendar";
import role from "./role";
import user from "./user";
@ -34,6 +36,8 @@ router.use("/qualification", PermissionHelper.passCheckMiddleware("read", "setti
router.use("/member", PermissionHelper.passCheckMiddleware("read", "club", "member"), member);
router.use("/calendar", PermissionHelper.passCheckMiddleware("read", "club", "calendar"), calendar);
router.use("/role", PermissionHelper.passCheckMiddleware("read", "user", "role"), role);
router.use("/user", PermissionHelper.passCheckMiddleware("read", "user", "user"), user);

View file

@ -6,6 +6,7 @@ import allowSetup from "../middleware/allowSetup";
import authenticate from "../middleware/authenticate";
import errorHandler from "../middleware/errorHandler";
import publicAvailable from "./public";
import setup from "./setup";
import auth from "./auth";
import admin from "./admin/index";
@ -21,6 +22,7 @@ export default (app: Express) => {
app.use(cors());
app.options("*", cors());
app.use("/public", publicAvailable);
app.use("/setup", allowSetup, setup);
app.use("/auth", auth);
app.use(authenticate);

10
src/routes/public.ts Normal file
View file

@ -0,0 +1,10 @@
import express from "express";
import { getCalendarItemsByTypes } from "../controller/publicController";
var router = express.Router({ mergeParams: true });
router.get("/calendar", async (req, res) => {
await getCalendarItemsByTypes(req, res);
});
export default router;