public static string WhoIsResponse(HttpListenerRequest request) { try { string p = request.QueryString.Get("name"); if (p == null || p == "") { return("Error"); } WhoWas data = new WhoWas(p); Group grp = Group.Find(data.rank); data.banned = grp != null && grp.Permission == LevelPermission.Banned; if (data.banned) { string[] bandata = Ban.GetBanData(p); data.banned_by = bandata[0]; data.ban_reason = bandata[1]; data.banned_time = bandata[2]; } return(JsonConvert.SerializeObject(data, Formatting.Indented)); } catch (Exception e) { Logger.WriteError(e); } return("Error"); }
static bool CheckBanned(Group group, Player p, bool whitelisted) { if (Server.bannedIP.Contains(p.ip) && (!Server.useWhitelist || !whitelisted)) { p.Kick(null, Server.defaultBanMessage, true); return(false); } if (group.Permission == LevelPermission.Banned) { string[] data = Ban.GetBanData(p.name); if (data != null) { p.Kick(null, Ban.FormatBan(data[0], data[1]), true); } else { p.Kick(null, Server.defaultBanMessage, true); } return(false); } return(true); }