ff-admin-server/src/routes/setup.ts

59 lines
1.5 KiB
TypeScript

import express from "express";
import {
isSetup,
setAppIdentity,
setClubIdentity,
setMailConfig,
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(
"/mail",
ParamaterPassCheckHelper.requiredIncludedMiddleware(["mail", "username", "password", "host", "port", "secure"]),
async (req, res) => {
await setMailConfig(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);
}
);
export default router;