newsletter CRUD & pdf
This commit is contained in:
parent
e9b29f8acf
commit
01ce3fdd39
31 changed files with 1185 additions and 23 deletions
|
@ -15,6 +15,7 @@ import member from "./member";
|
|||
import protocol from "./protocol";
|
||||
import calendar from "./calendar";
|
||||
import queryBuilder from "./queryBuilder";
|
||||
import newsletter from "./newsletter";
|
||||
|
||||
import role from "./role";
|
||||
import user from "./user";
|
||||
|
@ -48,6 +49,7 @@ router.use("/member", PermissionHelper.passCheckMiddleware("read", "club", "memb
|
|||
router.use("/protocol", PermissionHelper.passCheckMiddleware("read", "club", "protocol"), protocol);
|
||||
router.use("/calendar", PermissionHelper.passCheckMiddleware("read", "club", "calendar"), calendar);
|
||||
router.use("/querybuilder", PermissionHelper.passCheckMiddleware("read", "club", "query"), queryBuilder);
|
||||
router.use("/newsletter", PermissionHelper.passCheckMiddleware("read", "club", "newsletter"), newsletter);
|
||||
|
||||
router.use("/role", PermissionHelper.passCheckMiddleware("read", "user", "role"), role);
|
||||
router.use("/user", PermissionHelper.passCheckMiddleware("read", "user", "user"), user);
|
||||
|
|
85
src/routes/admin/newsletter.ts
Normal file
85
src/routes/admin/newsletter.ts
Normal file
|
@ -0,0 +1,85 @@
|
|||
import express, { Request, Response } from "express";
|
||||
import {
|
||||
createNewsletter,
|
||||
createNewsletterPrintoutById,
|
||||
getAllNewsletters,
|
||||
getNewsletterDatesById,
|
||||
getNewsletterById,
|
||||
getNewsletterRecipientsById,
|
||||
getNewsletterPrintoutByIdAndPrint,
|
||||
getNewsletterPrintoutsById,
|
||||
synchronizeNewsletterDatesById,
|
||||
synchronizeNewsletterById,
|
||||
synchronizeNewsletterRecipientsById,
|
||||
} from "../../controller/admin/newsletterController";
|
||||
import PermissionHelper from "../../helpers/permissionHelper";
|
||||
|
||||
var router = express.Router({ mergeParams: true });
|
||||
|
||||
router.get("/", async (req: Request, res: Response) => {
|
||||
await getAllNewsletters(req, res);
|
||||
});
|
||||
|
||||
router.get("/:id", async (req: Request, res: Response) => {
|
||||
await getNewsletterById(req, res);
|
||||
});
|
||||
|
||||
router.get("/:protocolId/dates", async (req: Request, res: Response) => {
|
||||
await getNewsletterDatesById(req, res);
|
||||
});
|
||||
|
||||
router.get("/:protocolId/recipients", async (req: Request, res: Response) => {
|
||||
await getNewsletterRecipientsById(req, res);
|
||||
});
|
||||
|
||||
router.get("/:protocolId/printouts", async (req: Request, res: Response) => {
|
||||
await getNewsletterPrintoutsById(req, res);
|
||||
});
|
||||
|
||||
router.get("/:protocolId/printout/:filename", async (req: Request, res: Response) => {
|
||||
await getNewsletterPrintoutByIdAndPrint(req, res);
|
||||
});
|
||||
|
||||
router.post(
|
||||
"/",
|
||||
PermissionHelper.passCheckMiddleware("create", "club", "protocol"),
|
||||
async (req: Request, res: Response) => {
|
||||
await createNewsletter(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.post(
|
||||
"/:protocolId/printout",
|
||||
PermissionHelper.passCheckMiddleware("create", "club", "protocol"),
|
||||
async (req: Request, res: Response) => {
|
||||
await createNewsletterPrintoutById(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:id/synchronize",
|
||||
PermissionHelper.passCheckMiddleware("update", "club", "protocol"),
|
||||
async (req: Request, res: Response) => {
|
||||
await synchronizeNewsletterById(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:protocolId/synchronize/dates",
|
||||
PermissionHelper.passCheckMiddleware("update", "club", "protocol"),
|
||||
async (req: Request, res: Response) => {
|
||||
await synchronizeNewsletterDatesById(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:protocolId/synchronize/recipients",
|
||||
PermissionHelper.passCheckMiddleware("update", "club", "protocol"),
|
||||
async (req: Request, res: Response) => {
|
||||
await synchronizeNewsletterRecipientsById(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
// TODO: send mails | send mail preview | render preview before print job
|
||||
|
||||
export default router;
|
Loading…
Add table
Add a link
Reference in a new issue