Grant recruiter roles

This commit is contained in:
Joseph Ferano 2022-06-14 22:56:33 +07:00
parent 5dcbe1f3ed
commit ba5927cc52
2 changed files with 18 additions and 10 deletions

View File

@ -60,9 +60,9 @@ let roleWhitelist = getId "ROLE_WHITELIST"
let roleWhiteOG = getId "ROLE_WHITEOG"
let roleAdmin = getId "ROLE_ADMIN"
let roleMagicEden = getId "ROLE_MAGICEDEN"
//let roleRecruiter1x = getId "ROLE_RECRUITER_1X"
//let roleRecruiter2x = getId "ROLE_RECRUITER_2X"
//let roleRecruiter3x = getId "ROLE_RECRUITER_3X"
let roleRecruiter1x = getId "ROLE_RECRUITER_1X"
let roleRecruiter2x = getId "ROLE_RECRUITER_2X"
let roleRecruiter3x = getId "ROLE_RECRUITER_3X"
let mutable botClientRecruit : DiscordClient option = None
let mutable botClientHacker : DiscordClient option = None
let mutable botClientSlots : DiscordClient option = None

View File

@ -307,13 +307,21 @@ let acceptInvite (guild : DiscordGuild) (user : DiscordMember) =
|> Async.Ignore
}
| None -> async.Return()
// let role =
// match invite.Count with
// | count when count > 10 -> guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter3x)
// | count when count > 5 -> guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter2x)
// | _ -> guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter1x)
// |> snd
// do! user.GrantRoleAsync(role)
let role3x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter3x) |> snd
let role2x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter2x) |> snd
let role1x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter1x) |> snd
match invite.Count with
| count when count > 10 ->
do! [ user.GrantRoleAsync(role3x) ; user.RevokeRoleAsync(role2x) ; user.RevokeRoleAsync(role1x) ]
|> List.map Async.AwaitTask
|> Async.Parallel
|> Async.Ignore
| count when count > 5 ->
do! [ user.GrantRoleAsync(role2x) ; user.RevokeRoleAsync(role1x) ]
|> List.map Async.AwaitTask
|> Async.Parallel
|> Async.Ignore
| _ -> do! user.GrantRoleAsync(role1x)
do! Analytics.invitedUserAccepted invite.Code player.DiscordId user.Id player.Name user.Username
| None -> return ()
with _ -> ()