update backend api architecture

This commit is contained in:
grimhilt
2023-05-02 12:25:50 +02:00
parent 29b4b7bfeb
commit 12e508c7cb
6 changed files with 40 additions and 50 deletions

View File

@@ -6,6 +6,8 @@ import { getLastMsgData, getRoomOwner } from "../db/Room-db";
import emailManager from "../mails/EmailManager";
import MailBuilder from "../mails/utils/mailBuilder";
import { getAddresses } from "../db/utils/mail";
import { getMembers, getMessages, getRooms } from "../db/api-db";
import logger from "../system/Logger";
function rmUserFromAddrs(addresses: { email: string }[], user: string) {
let index = addresses.findIndex((a) => a.email == user);
@@ -58,4 +60,39 @@ export default class Room {
res.status(statusCode.FORBIDDEN).send({ error: "Cannot add a new message in a room or a channel." });
}
}
static async getAll(body, res: Response) {
const { mailboxId, offset, limit } = body;
getRooms(mailboxId)
.then((rooms) => {
res.status(statusCode.OK).json(rooms);
})
.catch((err) => {
logger.err(err);
res.status(statusCode.INTERNAL_SERVER_ERROR);
});
}
static async getMessages(body, res: Response) {
const { roomId } = body;
getMessages(roomId)
.then((messages) => {
res.status(statusCode.OK).json(messages);
})
.catch((err) => {
logger.err(err);
res.status(statusCode.INTERNAL_SERVER_ERROR);
});
}
static async getMembers(body, res) {
const { roomId } = body;
getMembers(roomId).then((addresses) => {
res.status(statusCode.OK).json(addresses);
}).catch((err) => {
logger.err(err)
res.status(statusCode.INTERNAL_SERVER_ERROR);
});
}
}

View File

@@ -1,13 +0,0 @@
import statusCode from "../utils/statusCodes";
import { getMembers } from "../db/api-db";
import logger from "../system/Logger";
export async function members(body, res) {
const { roomId } = body;
getMembers(roomId).then((addresses) => {
res.status(statusCode.OK).json(addresses);
}).catch((err) => {
logger.err(err)
res.status(statusCode.INTERNAL_SERVER_ERROR);
});
}

View File

@@ -1,16 +0,0 @@
import statusCode from "../utils/statusCodes";
import { getMessages } from "../db/api-db";
import logger from "../system/Logger";
import { Response } from "express";
export async function messages(body, res: Response) {
const { roomId } = body;
getMessages(roomId)
.then((messages) => {
res.status(statusCode.OK).json(messages);
})
.catch((err) => {
logger.err(err);
res.status(statusCode.INTERNAL_SERVER_ERROR);
});
}

View File

@@ -1,14 +0,0 @@
import statusCode from "../utils/statusCodes";
import { getRooms } from "../db/api-db";
import logger from "../system/Logger";
import { Response } from "express";
export async function rooms(body, res: Response) {
const { mailboxId, offset, limit } = body;
getRooms(mailboxId).then((rooms) => {
res.status(statusCode.OK).json(rooms);
}).catch((err) => {
logger.err(err)
res.status(statusCode.INTERNAL_SERVER_ERROR);
});
}