1
0
Fork 0
forked from CRSS/Website
Website-fixver/utils/auth_util.ts

29 lines
597 B
TypeScript

import Database from '@/lib/Database';
import { hasPermission, Permission } from './permissions';
const db = new Database();
interface doas {
user?: any;
hasPermission: boolean;
}
export async function isUserAdmin(sid?: string): Promise<doas> {
if (!sid)
return { hasPermission: false };
const session = await db.getSession(sid!);
if (!session)
return { hasPermission: false };
const user = await db.getUser(session.uid);
if (!user)
return { hasPermission: false };
return {
user,
hasPermission: hasPermission(user.permissions, Permission.Admin)
};
}