This commit is contained in:
2024-08-02 19:13:13 +05:00
parent 6e4401219e
commit 19bf521825
8 changed files with 68 additions and 27 deletions
-2
View File
@@ -5,7 +5,6 @@ import cors from "cors";
import loginRouter from "./routes/login";
import registrationRouter from "./routes/registration";
import authMiddleware from "./middlewares/auth";
import appRouter from "./routes/app";
import companiesRouter from "./routes/companies";
import usersRouter from "./routes/users";
import buildsRouter from "./routes/builds";
@@ -27,7 +26,6 @@ app.use("/actions", actionsRouter);
app.use("/builds", buildsRouter);
app.use("/scheduled_sessions", scheduledSessionsRoute);
app.use("/schedules", schedulesRouter);
app.use("/app", authMiddleware, appRouter);
app.use("/companies", authMiddleware, companiesRouter);
app.use("/users", authMiddleware, usersRouter);
-12
View File
@@ -1,12 +0,0 @@
import { Router } from "express";
import Company from "../models/Company";
const appRouter = Router();
appRouter.post("/", async (_req, res) => {
await Company.find();
res.json({ route: "app" });
});
export default appRouter;
+36 -2
View File
@@ -10,6 +10,7 @@ import {
parseISO,
startOfDay,
} from "date-fns";
import { createTransport } from "nodemailer";
const router = Router();
@@ -79,7 +80,7 @@ router.post("/", async (req, res) => {
if (!buildId || !startAt) {
return res.json({
status: "error",
message: "Parameters `buildId`, `startAt` are required!", // Параметры `compamyId`, `buildId`, `startAt`, `client` обязательны!
message: "Parameters `buildId`, `startAt` are required!", // Параметры `buildId`, `startAt` обязательны!
});
}
@@ -207,10 +208,43 @@ router.post("/", async (req, res) => {
endAt: endAtISO,
});
const url = `https://stream.graff.tech/scheduled/${scheduledSession.id}`;
// <-- Send an mail
if (client?.email) {
// create reusable transporter object using the default SMTP transport
let transporter = createTransport({
host: "mail.netangels.ru",
port: 587,
secure: false, // true for 465, false for other ports
auth: {
user: "stream@graff.tech", // generated ethereal user
pass: "zLUbt8Io7dh2F9KT", // generated ethereal password
},
});
// send mail with defined transport object
try {
await transporter.sendMail({
from: "stream@graff.tech", // sender address
to: client.email, // list of receivers
subject: "Приглашение на демонстрацию - stream.graff.tech", // Subject line
html: `<div>
Ссылка для подключения к демонстрации: <a href="${url}" target="_blank">${url}</a>
</div>`,
});
} catch (error) {
console.log("error", (error as Error).message);
}
}
// Send an mail -->
res.json({
status: "success",
scheduledSessionId: scheduledSession.id,
url: `https://stream.graff.tech/scheduled/${scheduledSession.id}`,
url,
});
});