public override string ToString() { var values = new List <string>(); values.Add(BannedUntil != null ? BannedUntil.ToString() : "0"); values.Add(WindowExpiration.ToString()); values.Add(SoftRequests.ToString()); values.Add(HardRequests.ToString()); values.Add(HarmlessRequests.ToString()); return(JsonSerializer.Serialize(values)); }
public void DisplayBanInfo(Client player) { if (BannedUntil == DateTime.MaxValue) { API.shared.sendChatMessageToPlayer(player, "~r~You are permanently banned from Paleto Bay Roleplay."); } else { if (BannedUntil > Server.Date) { API.shared.sendChatMessageToPlayer(player, String.Format("~r~You are temporarily banned from Paleto Bay Roleplay until {0}.", BannedUntil.ToString("dd/MM/yy hh:mm tt"))); } else { BanRepository.RemoveAsync(this); } } API.shared.sendChatMessageToPlayer(player, String.Format("~r~For Reason: {0}", BanReason)); API.shared.sendChatMessageToPlayer(player, "~r~If you wish to appeal the ban, head over the the forums."); }
internal void Serialize(StringBuilder sb) { sb.Append(Name).Append(','); // 0 if (!LastIP.Equals(IPAddress.None)) { sb.Append(LastIP); // 1 } sb.Append(','); sb.Append(Rank.FullName).Append(','); // 2 RankChangeDate.ToUnixTimeString(sb).Append(','); // 3 sb.AppendEscaped(RankChangedBy).Append(','); // 4 switch (BanStatus) { case BanStatus.Banned: sb.Append('b'); break; case BanStatus.IPBanExempt: sb.Append('x'); break; } sb.Append(','); // 5 BanDate.ToUnixTimeString(sb).Append(','); // 6 sb.AppendEscaped(BannedBy).Append(','); // 7 UnbanDate.ToUnixTimeString(sb).Append(','); // 8 sb.AppendEscaped(UnbannedBy).Append(','); // 9 sb.AppendEscaped(BanReason).Append(','); // 10 sb.AppendEscaped(UnbanReason).Append(','); // 11 LastFailedLoginDate.ToUnixTimeString(sb).Append(','); // 12 if (!LastFailedLoginIP.Equals(IPAddress.None)) { sb.Append(LastFailedLoginIP); // 13 } sb.Append(',', 2); // skip 14 FirstLoginDate.ToUnixTimeString(sb).Append(','); // 15 LastLoginDate.ToUnixTimeString(sb).Append(','); // 16 Player pObject = PlayerObject; if (pObject != null) { (TotalTime.Add(TimeSinceLastLogin)).ToSecondsString(sb); // 17 } else { TotalTime.ToSecondsString(sb); // 17 } sb.Append(','); if (BlocksBuilt > 0) { sb.Digits(BlocksBuilt); // 18 } sb.Append(','); if (BlocksDeleted > 0) { sb.Digits(BlocksDeleted); // 19 } sb.Append(','); sb.Digits(TimesVisited).Append(','); // 20 if (MessagesWritten > 0) { sb.Digits(MessagesWritten); // 21 } sb.Append(',', 3); // 22-23 no longer in use if (PreviousRank != null) { sb.Append(PreviousRank.FullName); // 24 } sb.Append(','); sb.AppendEscaped(RankChangeReason).Append(','); // 25 if (TimesKicked > 0) { sb.Digits(TimesKicked); // 26 } sb.Append(','); if (TimesKickedOthers > 0) { sb.Digits(TimesKickedOthers); // 27 } sb.Append(','); if (TimesBannedOthers > 0) { sb.Digits(TimesBannedOthers); // 28 } sb.Append(','); sb.Digits(ID).Append(','); // 29 sb.Digits((int)RankChangeType).Append(','); // 30 LastKickDate.ToUnixTimeString(sb).Append(','); // 31 if (IsOnline) { DateTime.UtcNow.ToUnixTimeString(sb); // 32 } else { LastSeen.ToUnixTimeString(sb); } sb.Append(','); if (BlocksDrawn > 0) { sb.Append(BlocksDrawn); // 33 } sb.Append(','); sb.AppendEscaped(LastKickBy).Append(','); // 34 sb.AppendEscaped(LastKickReason).Append(','); // 35 BannedUntil.ToUnixTimeString(sb); // 36 if (IsFrozen) { sb.Append(',').Append('f').Append(','); // 37 sb.AppendEscaped(FrozenBy).Append(','); // 38 FrozenOn.ToUnixTimeString(sb).Append(','); // 39 } else { sb.Append(',', 4); // 37-39 } if (MutedUntil > DateTime.UtcNow) { MutedUntil.ToUnixTimeString(sb).Append(','); // 40 sb.AppendEscaped(MutedBy).Append(','); // 41 } else { sb.Append(',', 2); // 40-41 } sb.AppendEscaped(Password).Append(','); // 42 if (IsOnline) { sb.Append('o'); // 43 } sb.Append(','); if (BandwidthUseMode != BandwidthUseMode.Default) { sb.Append((byte)BandwidthUseMode); // 44 } sb.Append(','); if (IsHidden) { sb.Append('h'); // 45 } sb.Append(','); LastModified.ToUnixTimeString(sb); // 46 sb.Append(','); sb.AppendEscaped(DisplayedName); // 47 sb.Append(','); sb.Append((byte)AccountType); // 48 sb.Append(','); if (Email != null) { sb.AppendEscaped(Email); } }