Fixed #194 issues
All checks were successful
Pull Request CI / Merge Check (pull_request) Successful in 3m43s
All checks were successful
Pull Request CI / Merge Check (pull_request) Successful in 3m43s
This commit is contained in:
@@ -3,6 +3,7 @@ import pool from '../../db';
|
||||
import { Role, RoleSummary } from '@app/shared/types/roles'
|
||||
import { logger } from '../logging/logger';
|
||||
import { memberCache } from '../../routes/auth';
|
||||
import * as mariadb from 'mariadb';
|
||||
|
||||
export async function assignUserGroup(userID: number, roleID: number) {
|
||||
try {
|
||||
@@ -62,4 +63,16 @@ export async function getUsersWithRole(roleId: number): Promise<MemberLight[]> {
|
||||
)
|
||||
|
||||
return out as MemberLight[]
|
||||
}
|
||||
|
||||
export async function stripUserRoles(userID: number, con: mariadb.Pool | mariadb.Connection = pool) {
|
||||
try {
|
||||
const out = await con.query(`DELETE FROM members_roles WHERE member_id = ?;`, [userID]);
|
||||
return { success: true, affectedRows: out.affectedRows };
|
||||
} catch (error) {
|
||||
logger.error('app', 'Failed to strip user roles', error);
|
||||
throw error;
|
||||
} finally {
|
||||
memberCache.Invalidate(userID);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user