fix: Invite audit log without inviter (#1599)
* Fix possible invite without inviter * Prevent the same for InviteCreate * Update Creator property docs
This commit is contained in:
@@ -36,13 +36,17 @@ namespace Discord.Rest
|
|||||||
var maxAge = maxAgeModel.NewValue.ToObject<int>(discord.ApiClient.Serializer);
|
var maxAge = maxAgeModel.NewValue.ToObject<int>(discord.ApiClient.Serializer);
|
||||||
var code = codeModel.NewValue.ToObject<string>(discord.ApiClient.Serializer);
|
var code = codeModel.NewValue.ToObject<string>(discord.ApiClient.Serializer);
|
||||||
var temporary = temporaryModel.NewValue.ToObject<bool>(discord.ApiClient.Serializer);
|
var temporary = temporaryModel.NewValue.ToObject<bool>(discord.ApiClient.Serializer);
|
||||||
var inviterId = inviterIdModel.NewValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
|
||||||
var channelId = channelIdModel.NewValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
var channelId = channelIdModel.NewValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
||||||
var uses = usesModel.NewValue.ToObject<int>(discord.ApiClient.Serializer);
|
var uses = usesModel.NewValue.ToObject<int>(discord.ApiClient.Serializer);
|
||||||
var maxUses = maxUsesModel.NewValue.ToObject<int>(discord.ApiClient.Serializer);
|
var maxUses = maxUsesModel.NewValue.ToObject<int>(discord.ApiClient.Serializer);
|
||||||
|
|
||||||
var inviterInfo = log.Users.FirstOrDefault(x => x.Id == inviterId);
|
RestUser inviter = null;
|
||||||
var inviter = RestUser.Create(discord, inviterInfo);
|
if (inviterIdModel != null)
|
||||||
|
{
|
||||||
|
var inviterId = inviterIdModel.NewValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
||||||
|
var inviterInfo = log.Users.FirstOrDefault(x => x.Id == inviterId);
|
||||||
|
inviter = RestUser.Create(discord, inviterInfo);
|
||||||
|
}
|
||||||
|
|
||||||
return new InviteCreateAuditLogData(maxAge, code, temporary, inviter, channelId, uses, maxUses);
|
return new InviteCreateAuditLogData(maxAge, code, temporary, inviter, channelId, uses, maxUses);
|
||||||
}
|
}
|
||||||
@@ -70,10 +74,10 @@ namespace Discord.Rest
|
|||||||
/// </returns>
|
/// </returns>
|
||||||
public bool Temporary { get; }
|
public bool Temporary { get; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the user that created this invite.
|
/// Gets the user that created this invite if available.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>
|
/// <returns>
|
||||||
/// A user that created this invite.
|
/// A user that created this invite or <see langword="null"/>.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
public IUser Creator { get; }
|
public IUser Creator { get; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -36,13 +36,17 @@ namespace Discord.Rest
|
|||||||
var maxAge = maxAgeModel.OldValue.ToObject<int>(discord.ApiClient.Serializer);
|
var maxAge = maxAgeModel.OldValue.ToObject<int>(discord.ApiClient.Serializer);
|
||||||
var code = codeModel.OldValue.ToObject<string>(discord.ApiClient.Serializer);
|
var code = codeModel.OldValue.ToObject<string>(discord.ApiClient.Serializer);
|
||||||
var temporary = temporaryModel.OldValue.ToObject<bool>(discord.ApiClient.Serializer);
|
var temporary = temporaryModel.OldValue.ToObject<bool>(discord.ApiClient.Serializer);
|
||||||
var inviterId = inviterIdModel.OldValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
|
||||||
var channelId = channelIdModel.OldValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
var channelId = channelIdModel.OldValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
||||||
var uses = usesModel.OldValue.ToObject<int>(discord.ApiClient.Serializer);
|
var uses = usesModel.OldValue.ToObject<int>(discord.ApiClient.Serializer);
|
||||||
var maxUses = maxUsesModel.OldValue.ToObject<int>(discord.ApiClient.Serializer);
|
var maxUses = maxUsesModel.OldValue.ToObject<int>(discord.ApiClient.Serializer);
|
||||||
|
|
||||||
var inviterInfo = log.Users.FirstOrDefault(x => x.Id == inviterId);
|
RestUser inviter = null;
|
||||||
var inviter = RestUser.Create(discord, inviterInfo);
|
if (inviterIdModel != null)
|
||||||
|
{
|
||||||
|
var inviterId = inviterIdModel.OldValue.ToObject<ulong>(discord.ApiClient.Serializer);
|
||||||
|
var inviterInfo = log.Users.FirstOrDefault(x => x.Id == inviterId);
|
||||||
|
inviter = RestUser.Create(discord, inviterInfo);
|
||||||
|
}
|
||||||
|
|
||||||
return new InviteDeleteAuditLogData(maxAge, code, temporary, inviter, channelId, uses, maxUses);
|
return new InviteDeleteAuditLogData(maxAge, code, temporary, inviter, channelId, uses, maxUses);
|
||||||
}
|
}
|
||||||
@@ -70,10 +74,10 @@ namespace Discord.Rest
|
|||||||
/// </returns>
|
/// </returns>
|
||||||
public bool Temporary { get; }
|
public bool Temporary { get; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the user that created this invite.
|
/// Gets the user that created this invite if available.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>
|
/// <returns>
|
||||||
/// A user that created this invite.
|
/// A user that created this invite or <see langword="null"/>.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
public IUser Creator { get; }
|
public IUser Creator { get; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user