Browse Source

A few datetime fixes

tags/1.0-rc
RogueException 8 years ago
parent
commit
32cf7ba5e1
2 changed files with 6 additions and 3 deletions
  1. +1
    -1
      src/Discord.Net.Core/Utils/DateTimeUtils.cs
  2. +5
    -2
      src/Discord.Net.Core/Utils/Preconditions.cs

+ 1
- 1
src/Discord.Net.Core/Utils/DateTimeUtils.cs View File

@@ -13,7 +13,7 @@ namespace Discord
public static DateTimeOffset FromSnowflake(ulong value)
=> FromUnixMilliseconds((long)((value >> 22) + 1420070400000UL));
public static ulong ToSnowflake(DateTimeOffset value)
=> (ulong)(ToUnixMilliseconds(value) - 1420070400000L) << 22;
=> ((ulong)ToUnixMilliseconds(value) - 1420070400000UL) << 22;

public static DateTimeOffset FromTicks(long ticks)
=> new DateTimeOffset(ticks, TimeSpan.Zero);


+ 5
- 2
src/Discord.Net.Core/Utils/Preconditions.cs View File

@@ -185,9 +185,12 @@ namespace Discord
// Bulk Delete
public static void YoungerThanTwoWeeks(ulong[] collection, string name)
{
var minimum = DateTimeUtils.ToSnowflake(DateTimeOffset.Now.Subtract(TimeSpan.FromMilliseconds(1209540000)));
var minimum = DateTimeUtils.ToSnowflake(DateTimeOffset.UtcNow.Subtract(TimeSpan.FromDays(14)));
for (var i = 0; i < collection.Length; i++)
if (collection[i] <= minimum) throw new ArgumentOutOfRangeException(name, "Messages must be younger than two weeks to delete.");
{
if (collection[i] <= minimum)
throw new ArgumentOutOfRangeException(name, "Messages must be younger than two weeks old.");
}
}
}
}

Loading…
Cancel
Save