Increment invite count even if user alreayd entered
This commit is contained in:
parent
a517956901
commit
9e85a53de1
@ -287,15 +287,18 @@ let private processNewUser (eventArgs : GuildMemberAddEventArgs) =
|
|||||||
match result with
|
match result with
|
||||||
| Some (inviterId,count) ->
|
| Some (inviterId,count) ->
|
||||||
if invite.Uses > count then
|
if invite.Uses > count then
|
||||||
try
|
|
||||||
do! updateInviteCount invite.Code invite.Uses
|
do! updateInviteCount invite.Code invite.Uses
|
||||||
|
try
|
||||||
|
match! checkUserAlreadyInvited eventArgs.Member.Id with
|
||||||
|
| false ->
|
||||||
do! addInvitedUser eventArgs.Member.Id inviterId invite.Code |> Async.Ignore
|
do! addInvitedUser eventArgs.Member.Id inviterId invite.Code |> Async.Ignore
|
||||||
with ex -> printfn $"Tried to add existing user {eventArgs.Member.Id}:{eventArgs.Member.Username} to invites: {ex.Message}"
|
|
||||||
match! DbService.tryFindPlayer inviterId with
|
match! DbService.tryFindPlayer inviterId with
|
||||||
| Some inviter ->
|
| Some inviter ->
|
||||||
do! Analytics.invitedUserEntered invite.Code inviter.DiscordId eventArgs.Member.Id inviter.Name eventArgs.Member.Username
|
do! Analytics.invitedUserEntered invite.Code inviter.DiscordId eventArgs.Member.Id inviter.Name eventArgs.Member.Username
|
||||||
| None ->
|
| None ->
|
||||||
do! Analytics.invitedUserEntered invite.Code inviterId eventArgs.Member.Id "Unknown" eventArgs.Member.Username
|
do! Analytics.invitedUserEntered invite.Code inviterId eventArgs.Member.Id "Unknown" eventArgs.Member.Username
|
||||||
|
| true -> ()
|
||||||
|
with ex -> printfn $"Tried to add existing user {eventArgs.Member.Id}:{eventArgs.Member.Username} to invites: {ex.Message}"
|
||||||
| None -> ()
|
| None -> ()
|
||||||
} :> Task
|
} :> Task
|
||||||
|
|
||||||
@ -489,12 +492,7 @@ let handleMessageCreated _ (event : MessageCreateEventArgs) =
|
|||||||
do! event.Message.DeleteAsync()
|
do! event.Message.DeleteAsync()
|
||||||
} :> Task
|
} :> Task
|
||||||
|
|
||||||
let handleGuildMemberAdded _ (eventArgs : GuildMemberAddEventArgs) =
|
let handleGuildMemberAdded _ (eventArgs : GuildMemberAddEventArgs) = processNewUser eventArgs
|
||||||
task {
|
|
||||||
let! exists = checkUserAlreadyInvited eventArgs.Member.Id
|
|
||||||
if not exists then
|
|
||||||
do! processNewUser eventArgs
|
|
||||||
} :> Task
|
|
||||||
|
|
||||||
let submitAddress (address : string) (ctx : IDiscordContext) =
|
let submitAddress (address : string) (ctx : IDiscordContext) =
|
||||||
PlayerInteractions.executePlayerAction ctx (fun player -> async {
|
PlayerInteractions.executePlayerAction ctx (fun player -> async {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user