* Fix possible invite without inviter * Prevent the same for InviteCreate * Update Creator property docspull/1614/head
@@ -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); | |||||
var inviter = RestUser.Create(discord, inviterInfo); | |||||
RestUser inviter = null; | |||||
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); | |||||
var inviter = RestUser.Create(discord, inviterInfo); | |||||
RestUser inviter = null; | |||||
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> | ||||