ff-admin-server/src/routes/setup.ts
2025-04-25 08:18:49 +02:00

51 lines
1.4 KiB
TypeScript

import express from "express";
import { isSetup, setAppIdentity, setClubIdentity, uploadClubImages } from "../controller/setupController";
import { finishInvite, inviteUser, verifyInvite } from "../controller/inviteController";
import ParamaterPassCheckHelper from "../helpers/parameterPassCheckHelper";
import { clubImageUpload } from "../middleware/multer";
var router = express.Router({ mergeParams: true });
router.get("/", async (req, res) => {
await isSetup(req, res);
});
router.post("/club", async (req, res) => {
await setClubIdentity(req, res);
});
router.post("/club/images", clubImageUpload, async (req, res) => {
await uploadClubImages(req, res);
});
router.post("/app", async (req, res) => {
await setAppIdentity(req, res);
});
router.post("/verify", ParamaterPassCheckHelper.requiredIncludedMiddleware(["mail", "token"]), async (req, res) => {
await verifyInvite(req, res);
});
router.post(
"/me",
ParamaterPassCheckHelper.requiredIncludedMiddleware(["username", "mail", "firstname", "lastname"]),
async (req, res) => {
await inviteUser(req, res, true);
}
);
router.post(
"/finish",
ParamaterPassCheckHelper.requiredIncludedMiddleware(["mail", "token", "totp"]),
async (req, res) => {
await finishInvite(req, res, true);
}
);
/**
* TODO:
* set basic settings like clubname ...
* enable upload of images and icons: transform pwa-> 512x512 png / 48x48 ico
*/
export default router;