Browse Source

implement GuildMember PremiumSince

pull/1319/head
Chris Johnston 6 years ago
parent
commit
0706157a9d
5 changed files with 18 additions and 1 deletions
  1. +7
    -0
      src/Discord.Net.Core/Entities/Users/IGuildUser.cs
  2. +4
    -1
      src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs
  3. +2
    -0
      src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs
  4. +3
    -0
      src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs
  5. +2
    -0
      src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs

+ 7
- 0
src/Discord.Net.Core/Entities/Users/IGuildUser.cs View File

@@ -48,6 +48,13 @@ namespace Discord
/// </returns>
ulong GuildId { get; }
/// <summary>
/// Gets the date and time for when this user's guild boost began.
/// </summary>
/// <returns>
/// A <see cref="DateTime"/> for when the user began boosting this guild; <c>null</c> if they are not boosting the guild.
/// </returns>
DateTime? PremiumSince { get; }
/// <summary>
/// Gets a collection of IDs for the roles that this user currently possesses in the guild.
/// </summary>
/// <remarks>


+ 4
- 1
src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs View File

@@ -24,7 +24,8 @@ namespace Discord.Rest
public bool IsDeafened { get; private set; }
/// <inheritdoc />
public bool IsMuted { get; private set; }

/// <inheritdoc />
public DateTime? PremiumSince { get; private set; }
/// <inheritdoc />
public ulong GuildId => Guild.Id;

@@ -69,6 +70,8 @@ namespace Discord.Rest
IsMuted = model.Mute.Value;
if (model.Roles.IsSpecified)
UpdateRoles(model.Roles.Value);
if (model.PremiumSince.IsSpecified)
PremiumSince = model.PremiumSince.Value;
}
private void UpdateRoles(ulong[] roleIds)
{


+ 2
- 0
src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs View File

@@ -13,6 +13,8 @@ namespace Discord.Rest
/// <inheritdoc />
public ulong WebhookId { get; }
internal IGuild Guild { get; }
/// <inheritdoc />
public DateTime? PremiumSince { get; private set; }

/// <inheritdoc />
public override bool IsWebhook => true;


+ 3
- 0
src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs View File

@@ -76,6 +76,9 @@ namespace Discord.WebSocket
public SocketVoiceState? VoiceState => Guild.GetVoiceState(Id);
public AudioInStream AudioStream => Guild.GetAudioStream(Id);

/// <inheritdoc />
public DateTime? PremiumSince { get; private set; }

/// <summary>
/// Returns the position of the user within the role hierarchy.
/// </summary>


+ 2
- 0
src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs View File

@@ -63,6 +63,8 @@ namespace Discord.WebSocket
/// <inheritdoc />
string IGuildUser.Nickname => null;
/// <inheritdoc />
DateTime? IGuildUser.PremiumSince => null;
/// <inheritdoc />
GuildPermissions IGuildUser.GuildPermissions => GuildPermissions.Webhook;

/// <inheritdoc />


Loading…
Cancel
Save