Fix issues with granting role for inviters
This commit is contained in:
parent
f5336fb9b7
commit
545c5886fc
@ -322,18 +322,20 @@ let acceptInvite (guild : DiscordGuild) (user : DiscordMember) =
|
|||||||
let role3x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter3x) |> snd
|
let role3x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter3x) |> snd
|
||||||
let role2x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter2x) |> snd
|
let role2x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter2x) |> snd
|
||||||
let role1x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter1x) |> snd
|
let role1x = guild.Roles.TryGetValue(GuildEnvironment.roleRecruiter1x) |> snd
|
||||||
match! getInvitedUserCount player.DiscordId with
|
let! playerMember = guild.GetMemberAsync(invite.Inviter)
|
||||||
| count when count > 10 ->
|
let! totalInvites = getInvitedUserCount player.DiscordId
|
||||||
do! [ user.GrantRoleAsync(role3x) ; user.RevokeRoleAsync(role2x) ; user.RevokeRoleAsync(role1x) ]
|
if totalInvites >= 10 then
|
||||||
|
do! [ playerMember.GrantRoleAsync(role3x) ; playerMember.RevokeRoleAsync(role2x) ; playerMember.RevokeRoleAsync(role1x) ]
|
||||||
|> List.map Async.AwaitTask
|
|> List.map Async.AwaitTask
|
||||||
|> Async.Parallel
|
|> Async.Parallel
|
||||||
|> Async.Ignore
|
|> Async.Ignore
|
||||||
| count when count > 5 ->
|
elif totalInvites >= 5 then
|
||||||
do! [ user.GrantRoleAsync(role2x) ; user.RevokeRoleAsync(role1x) ]
|
do! [ playerMember.GrantRoleAsync(role2x) ; playerMember.RevokeRoleAsync(role1x) ]
|
||||||
|> List.map Async.AwaitTask
|
|> List.map Async.AwaitTask
|
||||||
|> Async.Parallel
|
|> Async.Parallel
|
||||||
|> Async.Ignore
|
|> Async.Ignore
|
||||||
| _ -> do! user.GrantRoleAsync(role1x)
|
else
|
||||||
|
do! playerMember.GrantRoleAsync(role1x)
|
||||||
do! Analytics.invitedUserAccepted invite.Code player.DiscordId user.Id player.Name user.Username
|
do! Analytics.invitedUserAccepted invite.Code player.DiscordId user.Id player.Name user.Username
|
||||||
| None -> return ()
|
| None -> return ()
|
||||||
with _ -> ()
|
with _ -> ()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user