WIP: feat/20-reactions-for-roles #59

Draft
kenobi wants to merge 16 commits from feat/20-reactions-for-roles into master
Showing only changes of commit 8f320cee5c - Show all commits

View File

@ -1,5 +1,6 @@
import { Role, User } from "discord.js";
import { Guild, Role, User } from "discord.js";
import { ExtendedClient } from "../structures/client";
import { GuildMember } from "discord.js";
export default class RoleController {
@ -7,19 +8,21 @@ export default class RoleController {
private getMediaRoleForGuild(guildId: string): Role {
throw new Error("Method not implemented.");
}
public addRoleToUser(user: User, role: Role, guildId: string, requestId: string) {
throw new Error("Method not implemented.");
public async addRoleToUser(member: GuildMember, role: Role, guildId: string, requestId: string) {
return await member.roles.add(role)
}
private removeRoleFromUser(user: User, roleToAdd: any, guildId: string, requestId: string) {
throw new Error("Method not implemented.");
private async removeRoleFromUser(member: GuildMember, role: any, guildId: string, requestId: string) {
return await member.roles.remove(role)
}
public addMediaRoleToUser(user: User, guildId: string, requestId: string) {
const roleToAdd: Role = this.getMediaRoleForGuild(guildId)
return this.addRoleToUser(user, roleToAdd, guildId, requestId)
public async addMediaRoleToUser(user: User, guild: Guild, requestId: string) {
const roleToAdd: Role = this.getMediaRoleForGuild(guild.id)
const guildMember = await guild.members.fetch(user)
return this.addRoleToUser(guildMember, roleToAdd, guild.id, requestId)
}
public removeMediaRoleFromUser(user: User, guildId: string, requestId: string) {
const roleToRemove: Role = this.getMediaRoleForGuild(guildId)
return this.removeRoleFromUser(user, roleToRemove, guildId, requestId)
public async removeMediaRoleFromUser(user: User, guild: Guild, requestId: string) {
const roleToRemove: Role = this.getMediaRoleForGuild(guild.id)
const guildMember = await guild.members.fetch(user)
return this.removeRoleFromUser(guildMember, roleToRemove, guild.id, requestId)
}
}