Member Function
addRole
This commit is contained in:
		
							parent
							
								
									eff2469e80
								
							
						
					
					
						commit
						5482146da4
					
				| @ -4,10 +4,13 @@ import { | ||||
| 	GuildDeleteEvent, | ||||
| 	GuildMemberAddEvent, | ||||
| 	GuildMemberRemoveEvent, | ||||
| 	GuildMemberUpdateEvent, | ||||
| 	GuildModel, | ||||
| 	MemberModel, | ||||
| 	RoleModel, | ||||
| 	UserModel, | ||||
| } from "@fosscord/server-util"; | ||||
| import { response } from "express"; | ||||
| import { HTTPError } from "lambert-server"; | ||||
| import Config from "./Config"; | ||||
| import { emitEvent } from "./Event"; | ||||
| @ -107,13 +110,36 @@ export async function removeMember(user_id: string, guild_id: string) { | ||||
| 			}, | ||||
| 			user_id: user_id, | ||||
| 		} as GuildDeleteEvent), | ||||
| 	]); | ||||
| } | ||||
| 
 | ||||
| export async function addRole(user_id: string, guild_id: string, role_id: string) { | ||||
| 	const user = await getPublicUser(user_id); | ||||
| 
 | ||||
| 	const guild = await GuildModel.findOne({ id: guild_id }).exec(); | ||||
| 	if (!guild) throw new HTTPError("Guild not found", 404); | ||||
| 
 | ||||
| 	const role = await RoleModel.findOne({ id: role_id, guild_id: guild_id }).exec(); | ||||
| 	if (!role) throw new HTTPError("role not found", 404); | ||||
| 
 | ||||
| 	var memberObj = await MemberModel.findOneAndUpdate({ | ||||
| 			id: user_id, | ||||
| 			guild_id: guild_id, | ||||
| 		}, { $push: { roles: role_id } }).exec(); | ||||
| 
 | ||||
| 	if(!memberObj) throw new Error("Internal server error"); | ||||
| 	 | ||||
| 	emitEvent({ | ||||
| 			event: "GUILD_MEMBER_REMOVE", | ||||
| 		event: "GUILD_MEMBER_UPDATE", | ||||
| 		data: { | ||||
| 			guild_id: guild_id, | ||||
| 			user: user, | ||||
| 			roles: memberObj.roles | ||||
| 		 | ||||
| 		}, | ||||
| 			guild_id: guild_id, | ||||
| 		} as GuildMemberRemoveEvent), | ||||
| 	]); | ||||
| 		user_id: user_id, | ||||
| 	} as GuildMemberUpdateEvent); | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Intevel ツ
						Intevel ツ