37 lines
1.4 KiB
TypeScript
37 lines
1.4 KiB
TypeScript
import { execQuery, execQueryAsync, execQueryAsyncWithId } from "../db";
|
|
|
|
export async function getFlags(uid: number): Promise<{ flag_id: number; flag_name: string }[]> {
|
|
const query = `
|
|
SELECT * FROM flag_name
|
|
INNER JOIN flag ON flag.flag_id = flag_name.flag_id
|
|
INNER JOIN mailbox_message ON mailbox_message.message_id = flag.message_id
|
|
WHERE mailbox_message.uid = ?
|
|
`;
|
|
const values = [uid];
|
|
return await execQueryAsync(query, values);
|
|
}
|
|
|
|
export async function deleteFlag(messageId: number, flagId: number) {
|
|
const query = `DELETE FROM flag WHERE message_id = ? AND flag_id = ?`;
|
|
const values = [messageId, flagId];
|
|
execQuery(query, values);
|
|
}
|
|
|
|
export async function updateMailboxSeen(messageId: number, isSeen: boolean) {
|
|
const query = `UPDATE mailbox_message SET seen = ? WHERE message_id = ?`;
|
|
const values = [isSeen, messageId];
|
|
return await execQueryAsync(query, values);
|
|
}
|
|
|
|
export async function updateMailboxDeleted(messageId: number, isDeleted: boolean) {
|
|
const query = `UPDATE mailbox_message SET deleted = ? WHERE message_id = ?`;
|
|
const values = [isDeleted, messageId];
|
|
return await execQueryAsync(query, values);
|
|
}
|
|
|
|
export async function deleteMessage(messageId: number) {
|
|
const query = `DELETE FROM message WHERE message_id = ?`;
|
|
const values = [messageId];
|
|
return await execQueryAsync(query, values);
|
|
}
|