diff --git a/src/lib/models/Event.ts b/src/lib/models/Event.ts index d30e8ad..16a85a3 100644 --- a/src/lib/models/Event.ts +++ b/src/lib/models/Event.ts @@ -86,7 +86,7 @@ export class Event extends Model { if (userId) { const group = await this.$get("rGroup") as Group; const user = await User.findByPk(userId); - return group.$has("rAdmins", user); + return (await group.$has("rAdmins", user)) || user.isAdmin; } else { return false; } diff --git a/src/lib/models/Group.ts b/src/lib/models/Group.ts index 4184e34..85c88ce 100644 --- a/src/lib/models/Group.ts +++ b/src/lib/models/Group.ts @@ -153,7 +153,8 @@ export class Group extends Model { public async deletable({userId}: { userId?: number }, request: any): Promise { userId = userId ?? request.session.userId; if (userId) { - return this.creatorId === userId; + const user = await User.findByPk(userId); + return this.creatorId === userId || user.isAdmin; } else { return false; }