From 7c0fbb18963dd6ac5d82a65771c56a1e289b186c Mon Sep 17 00:00:00 2001 From: RaidMax Date: Tue, 27 Feb 2018 21:27:23 -0600 Subject: [PATCH] Moved application into webfront core project --- Admin/Admin.cs | 29 - Admin/Application.csproj | 430 --- Admin/Database.cs | 621 ----- Admin/File.cs | 134 - Admin/IW4AdminIcon.ico | Bin 32038 -> 0 bytes Admin/IW4M-Admin - Shortcut.lnk | Bin 1316 -> 0 bytes Admin/Properties/AssemblyInfo.cs | 37 - Admin/Properties/Settings.Designer.cs | 26 - Admin/Properties/Settings.settings | 6 - Admin/Webfront/_header.html | 105 - Admin/Webfront/profile.html | 333 --- Admin/app.manifest | 54 - Admin/config/maps.cfg | 44 - Admin/config/messages.cfg | 8 - Admin/config/rules.cfg | 6 - Admin/config/web.cfg | 2 - Admin/lib | Bin 406 -> 0 bytes Admin/packages.config | 4 - Admin/webfront/admins.html | 71 - Admin/webfront/bans.html | 5 - Admin/webfront/chat.html | 48 - Admin/webfront/console.html | 70 - Admin/webfront/error.html | 11 - Admin/webfront/footer.html | 8 - Admin/webfront/images/minimap_mp_rust.png | Bin 187613 -> 0 bytes Admin/webfront/images/minimap_mp_terminal.png | Bin 113072 -> 0 bytes Admin/webfront/login.html | 12 - Admin/webfront/main.css | 237 -- Admin/webfront/main.html | 106 - Admin/webfront/mobile.css | 8 - Admin/webfront/notfound.html | 5 - Admin/webfront/penalties.html | 58 - Admin/webfront/players.html | 117 - Admin/webfront/scripts/wordcloud2.js | 2369 ----------------- Admin/webfront/stats.html | 146 - IW4MAdmin.sln | 53 +- Plugins/EventAPI/EventAPI.csproj | 6 - Plugins/EventAPI/packages.config | 4 - Plugins/Welcome/CountryLookup.cs | 18 +- Plugins/Welcome/Plugin.cs | 2 +- SharedLibrary/Database/Importer.cs | 12 +- SharedLibrary/SharedLibrary.csproj | 15 +- {Admin => WebfrontCore/Application}/Kayak.cs | 0 {Admin => WebfrontCore/Application}/Logger.cs | 0 {Admin => WebfrontCore/Application}/Main.cs | 39 +- .../Application}/Manager.cs | 4 +- {Admin => WebfrontCore/Application}/Server.cs | 0 .../ServerConfigurationGenerator.cs | 0 WebfrontCore/Startup.cs | 2 +- WebfrontCore/WebfrontCore.csproj | 15 +- 50 files changed, 45 insertions(+), 5235 deletions(-) delete mode 100644 Admin/Admin.cs delete mode 100644 Admin/Application.csproj delete mode 100644 Admin/Database.cs delete mode 100644 Admin/File.cs delete mode 100644 Admin/IW4AdminIcon.ico delete mode 100644 Admin/IW4M-Admin - Shortcut.lnk delete mode 100644 Admin/Properties/AssemblyInfo.cs delete mode 100644 Admin/Properties/Settings.Designer.cs delete mode 100644 Admin/Properties/Settings.settings delete mode 100644 Admin/Webfront/_header.html delete mode 100644 Admin/Webfront/profile.html delete mode 100644 Admin/app.manifest delete mode 100644 Admin/config/maps.cfg delete mode 100644 Admin/config/messages.cfg delete mode 100644 Admin/config/rules.cfg delete mode 100644 Admin/config/web.cfg delete mode 100644 Admin/lib delete mode 100644 Admin/packages.config delete mode 100644 Admin/webfront/admins.html delete mode 100644 Admin/webfront/bans.html delete mode 100644 Admin/webfront/chat.html delete mode 100644 Admin/webfront/console.html delete mode 100644 Admin/webfront/error.html delete mode 100644 Admin/webfront/footer.html delete mode 100644 Admin/webfront/images/minimap_mp_rust.png delete mode 100644 Admin/webfront/images/minimap_mp_terminal.png delete mode 100644 Admin/webfront/login.html delete mode 100644 Admin/webfront/main.css delete mode 100644 Admin/webfront/main.html delete mode 100644 Admin/webfront/mobile.css delete mode 100644 Admin/webfront/notfound.html delete mode 100644 Admin/webfront/penalties.html delete mode 100644 Admin/webfront/players.html delete mode 100644 Admin/webfront/scripts/wordcloud2.js delete mode 100644 Admin/webfront/stats.html delete mode 100644 Plugins/EventAPI/packages.config rename {Admin => WebfrontCore/Application}/Kayak.cs (100%) rename {Admin => WebfrontCore/Application}/Logger.cs (100%) rename {Admin => WebfrontCore/Application}/Main.cs (77%) rename {Admin => WebfrontCore/Application}/Manager.cs (98%) rename {Admin => WebfrontCore/Application}/Server.cs (100%) rename {Admin => WebfrontCore/Application}/ServerConfigurationGenerator.cs (100%) diff --git a/Admin/Admin.cs b/Admin/Admin.cs deleted file mode 100644 index 273f62e69..000000000 --- a/Admin/Admin.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace IW4MAdmin -{ - class Admin - { - public Admin() - { - Time = DateTime.Now; - Server = new Server("127.0.0.1", 28960, "NO"); - } - - public Server Server; - - public static String getTime() - { - return DateTime.Now.ToString("H:mm:ss"); - } - - public void Monitor() - { - Server.Monitor(); - } - - private DateTime Time; - } -} diff --git a/Admin/Application.csproj b/Admin/Application.csproj deleted file mode 100644 index 3077fb01e..000000000 --- a/Admin/Application.csproj +++ /dev/null @@ -1,430 +0,0 @@ - - - - - Debug - AnyCPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115} - Library - Properties - IW4MAdmin - IW4MAdmin - v4.5.2 - 512 - - - true - ftp://raidmax.org/ - true - Web - true - Foreground - 7 - Days - false - false - false - http://raidmax.org/IW4M/Admin/ - http://raidmax.org/IW4MAdmin - en - IW4M Administration - ForeverNone LLC - publish.htm - false - 6 - 1.3.1.%2a - false - true - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - true - false - MinimumRecommendedRules.ruleset - false - true - - - x86 - pdbonly - true - bin\Release\ - TRACE - prompt - 3 - true - On - false - false - false - - - - - LocalIntranet - - - - false - - - IW4AdminIcon.ico - - - - - - - - OnOutputUpdated - - - false - - - - - - bin\Release-Stable\ - TRACE - true - true - 3 - pdbonly - x86 - On - prompt - false - MinimumRecommendedRules.ruleset - - - x86 - bin\x86\Debug\ - TRACE;DEBUG - - - x86 - bin\x86\Release\ - true - - - x86 - bin\x86\Release-Stable\ - true - - - true - bin\x64\Debug\ - CODE_ANALYSIS;DEBUG;TRACE - true - full - x64 - true - prompt - false - MinimumRecommendedRules.ruleset - - - bin\x64\Release-Nightly\ - TRACE - true - true - 3 - pdbonly - x64 - On - prompt - false - MinimumRecommendedRules.ruleset - - - bin\x64\Release-Stable\ - TRACE - true - true - 3 - pdbonly - x64 - On - prompt - false - MinimumRecommendedRules.ruleset - true - - - bin\Release\ - TRACE - true - true - 3 - pdbonly - x86 - On - prompt - false - MinimumRecommendedRules.ruleset - - - bin\x86\Release\ - true - x86 - MinimumRecommendedRules.ruleset - - - bin\x64\Release\ - TRACE - true - true - 3 - pdbonly - x64 - On - prompt - false - MinimumRecommendedRules.ruleset - true - - - - - - - - - - - - - - - - - - True - True - Settings.settings - - - - - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - Always - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - - - False - Microsoft .NET Framework 4 %28x86 and x64%29 - true - - - False - .NET Framework 3.5 SP1 Client Profile - false - - - False - .NET Framework 3.5 SP1 - false - - - False - Visual C++ 2013 Runtime Libraries %28x86%29 - true - - - - - False - - - - - DataFile - True - File - - - False - - - - - DataFile - True - File - - - False - - - - - DataFile - True - File - - - False - - - - - Exclude - True - Assembly - - - False - - - - - Exclude - True - Assembly - - - False - - - - - Exclude - True - Assembly - - - False - - - - - Exclude - True - Assembly - - - - - {d51eeceb-438a-47da-870f-7d7b41bc24d6} - SharedLibrary - False - - - - - - - - xcopy /E "$(SolutionDir)lib" "$(TargetDir)lib" -copy /Y "$(SolutionDir)_customcallbacks.gsc" "$(SolutionDir)BUILD\userraw\scripts\_customcallbacks.gsc" - -copy /Y "$(TargetDir)$(TargetName).exe" "$(SolutionDir)BUILD" -copy /Y "$(TargetDir)IW4MAdmin.exe.config" "$(SolutionDir)BUILD" -xcopy /Y /I /E "$(SolutionDir)SharedLibrary\$(OutDir)*" "$(SolutionDir)Admin\Lib" - -xcopy /Y /I /E "$(ProjectDir)webfront\*" "$(SolutionDir)BUILD\Webfront" -xcopy /Y /I /E "$(SolutionDir)Admin\Config\*" "$(SolutionDir)BUILD\Config" - -if $(ConfigurationName) == Release-Nightly powershell.exe -file "$(SolutionDir)DEPLOY\publish_nightly.ps1" 1.6 -if $(ConfigurationName) == Release-Stable powershell.exe -file "$(SolutionDir)DEPLOY\publish_stable.ps1" 1.6 - - - - - - - - - - \ No newline at end of file diff --git a/Admin/Database.cs b/Admin/Database.cs deleted file mode 100644 index 2314636e4..000000000 --- a/Admin/Database.cs +++ /dev/null @@ -1,621 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Data.SQLite; -using System.Data; -using System.Linq; -using System.IO; -using System.Collections; -using SharedLibrary; - -namespace IW4MAdmin -{ - abstract class DatabaseA : SharedLibrary.Database - { - public Database(String FN) - { - FileName = FN; - DBCon = String.Format("Data Source={0}", FN); - Con = new SQLiteConnection(DBCon); - Open = false; - Init(); - } - - abstract public void Init(); - - //HELPERS - protected bool Insert(String tableName, Dictionary data) - { - String columns = ""; - String values = ""; - Boolean returnCode = true; - foreach (KeyValuePair val in data) - { - columns += String.Format(" {0},", val.Key); - values += String.Format(" '{0}',", val.Value); - } - columns = columns.Substring(0, columns.Length - 1); - values = values.Substring(0, values.Length - 1); - try - { - this.ExecuteNonQuery(String.Format("insert into {0}({1}) values({2});", tableName, columns, values)); - } - catch (Exception fail) - { - Console.WriteLine(fail.Message); - returnCode = false; - } - return returnCode; - } - - protected bool Update(String tableName, Dictionary data, String where) - { - String vals = ""; - Boolean returnCode = true; - if (data.Count >= 1) - { - foreach (KeyValuePair val in data) - { - vals += String.Format(" {0} = '{1}',", val.Key, val.Value); - } - vals = vals.Substring(0, vals.Length - 1); - } - try - { - ExecuteNonQuery(String.Format("update {0} set {1} where {2};", tableName, vals, where)); - } - catch (Exception fail) - { - Console.WriteLine(fail.Message); - returnCode = false; - } - return returnCode; - } - - protected DataRow getDataRow(String Q) - { - DataRow Result = GetDataTable(Q).Rows[0]; - return Result; - } - - protected int ExecuteNonQuery(String Request) - { - waitForClose(); - int rowsUpdated = 0; - - lock (Con) - { - Con.Open(); - SQLiteCommand CMD = new SQLiteCommand(Con); - CMD.CommandText = Request; - rowsUpdated = CMD.ExecuteNonQuery(); - Con.Close(); - } - - return rowsUpdated; - } - - protected DataTable GetDataTable(String sql) - { - DataTable dt = new DataTable(); - try - { - waitForClose(); - lock (Con) - { - Con.Open(); - SQLiteCommand mycommand = new SQLiteCommand(Con); - mycommand.CommandText = sql; - SQLiteDataReader reader = mycommand.ExecuteReader(); - dt.Load(reader); - reader.Close(); - Con.Close(); - } - - } - catch (Exception e) - { - Console.WriteLine(e.Message); - throw new Exception(e.Message); - } - return dt; - } - - protected void waitForClose() - { - while (Con.State == ConnectionState.Open) - { - Utilities.Wait(0.01); - } - - return; - } - - protected String FileName; - protected String DBCon; - protected SQLiteConnection Con; - protected bool Open; - } - - class ClientsDB : Database - { - public ClientsDB(String FN) : base(FN) { } - - public override void Init() - { - if(!File.Exists(FileName)) - { - String Create = "CREATE TABLE [CLIENTS] ( [Name] TEXT NULL, [npID] TEXT NULL, [Number] INTEGER PRIMARY KEY AUTOINCREMENT, [Level] INT DEFAULT 0 NULL, [LastOffense] TEXT NULL, [Connections] INT DEFAULT 1 NULL, [IP] TEXT NULL, [LastConnection] TEXT NULL);"; - ExecuteNonQuery(Create); - Create = "CREATE TABLE [BANS] ( [Reason] TEXT NULL, [npID] TEXT NULL, [bannedByID] TEXT NULL, [IP] TEXT NULL, [TIME] TEXT NULL);"; - ExecuteNonQuery(Create); - } - } - - //Returns a single player object with matching GUID, false if no matches - public Player getPlayer(String ID, int cNum) - { - String Query = String.Format("SELECT * FROM CLIENTS WHERE npID = '{0}' LIMIT 1", ID); - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - DataRow ResponseRow = Result.Rows[0]; - DateTime LC; - - try - { - LC = DateTime.Parse(ResponseRow["LastConnection"].ToString()); - } - catch (Exception) - { - LC = DateTime.Now; - } - - return new Player(ResponseRow["Name"].ToString(), ResponseRow["npID"].ToString(), cNum, (Player.Permission)(ResponseRow["Level"]), Convert.ToInt32(ResponseRow["Number"]), ResponseRow["LastOffense"].ToString(), (int)ResponseRow["Connections"], ResponseRow["IP"].ToString(), LC); - } - - else - return null; - } - - //Overloaded method for getPlayer, returns Client with matching DBIndex, null if none found - public Player getPlayer(int dbIndex) - { - String Query = String.Format("SELECT * FROM CLIENTS WHERE Number = '{0}' LIMIT 1", dbIndex); - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - DataRow p = Result.Rows[0]; - DateTime LC; - try - { - LC = DateTime.Parse(p["LastConnection"].ToString()); - } - catch (Exception) - { - LC = DateTime.Now; - } - - return new Player(p["Name"].ToString(), p["npID"].ToString(), -1, (Player.Permission)(p["Level"]), Convert.ToInt32(p["Number"]), p["LastOffense"].ToString(), Convert.ToInt32(p["Connections"]), p["IP"].ToString(), LC); - } - - else - return null; - } - - //get player by ip, (used for webfront) - public Player getPlayer(String IP) - { - String Query = String.Format("SELECT * FROM CLIENTS WHERE IP='{0}'", IP); - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - List lastKnown = new List(); - foreach (DataRow p in Result.Rows) - { - DateTime LC; - try - { - LC = DateTime.Parse(p["LastConnection"].ToString()); - lastKnown.Add(new Player(p["Name"].ToString(), p["npID"].ToString(), -1, (Player.Permission)(p["Level"]), Convert.ToInt32(p["Number"]), p["LastOffense"].ToString(), Convert.ToInt32((DateTime.Now - LC).TotalSeconds), p["IP"].ToString(), LC)); - } - - catch (Exception) - { - continue; - } - } - - if (lastKnown.Count > 0) - { - List Returning = lastKnown.OrderBy(t => t.Connections).ToList(); - return Returning[0]; - } - - else - return null; - } - - else - return null; - } - - //Returns a list of players matching name parameter, null if no players found matching - public List findPlayers(String name) - { - String Query = String.Format("SELECT * FROM CLIENTS WHERE Name LIKE '%{0}%' LIMIT 8", name); - DataTable Result = GetDataTable(Query); - - List Players = new List(); - - if (Result != null && Result.Rows.Count > 0) - { - foreach (DataRow p in Result.Rows) - { - DateTime LC; - try - { - LC = DateTime.Parse(p["LastConnection"].ToString()); - } - catch (Exception) - { - LC = DateTime.Now; - } - - Players.Add(new Player(p["Name"].ToString(), p["npID"].ToString(), -1, (Player.Permission)(p["Level"]), Convert.ToInt32(p["Number"]), p["LastOffense"].ToString(), Convert.ToInt32(p["Connections"]), p["IP"].ToString(), LC)); - } - return Players; - } - - else - return null; - } - - //Returns any player with level 4 permissions, null if no owner found - public Player getOwner() - { - String Query = String.Format("SELECT * FROM CLIENTS WHERE Level > '{0}'", 4); - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - DataRow ResponseRow = Result.Rows[0]; - if (ResponseRow["IP"].ToString().Length < 6) - ResponseRow["IP"] = "0"; - return new Player(ResponseRow["Name"].ToString(), ResponseRow["npID"].ToString(), -1, (Player.Permission)(ResponseRow["Level"]), Convert.ToInt32(ResponseRow["Number"]), null, 0, ResponseRow["IP"].ToString()); - } - - else - return null; - } - - //Returns list of bans in database - public List getBans() - { - List Bans = new List(); - DataTable Result = GetDataTable("SELECT * FROM BANS ORDER BY TIME DESC"); - - foreach (DataRow Row in Result.Rows) - { - if (Row["TIME"].ToString().Length < 2) //compatibility with my old database - Row["TIME"] = DateTime.Now.ToString(); - - Bans.Add(new Ban(Row["Reason"].ToString(), Row["npID"].ToString(), Row["bannedByID"].ToString(), DateTime.Parse(Row["TIME"].ToString()), Row["IP"].ToString())); - } - - return Bans; - } - - //Returns all players with level > Flagged - public List getAdmins() - { - List Admins = new List(); - String Query = String.Format("SELECT * FROM CLIENTS WHERE LEVEL > '{0}'", 1); - DataTable Result = GetDataTable(Query); - - foreach (DataRow P in Result.Rows) - Admins.Add(new Player(P["Name"].ToString(), P["npID"].ToString(), (Player.Permission)P["Level"], P["IP"].ToString())); - - return Admins; - } - - //Returns total number of player entries in database - public int totalPlayers() - { - DataTable Result = GetDataTable("SELECT * from CLIENTS ORDER BY Number DESC LIMIT 1"); - if (Result.Rows.Count > 0) - return Convert.ToInt32(Result.Rows[0]["Number"]); - else - return 0; - } - - //Add specified player to database - public void addPlayer(Player P) - { - Dictionary newPlayer = new Dictionary(); - - newPlayer.Add("Name", Utilities.removeNastyChars(P.Name)); - newPlayer.Add("npID", P.npID); - newPlayer.Add("Level", (int)P.Level); - newPlayer.Add("LastOffense", ""); - newPlayer.Add("Connections", 1); - newPlayer.Add("IP", P.IP); - newPlayer.Add("LastConnection", Utilities.DateTimeSQLite(DateTime.Now)); - - Insert("CLIENTS", newPlayer); - } - - ///Update information of specified player - public void updatePlayer(Player P) - { - Dictionary updatedPlayer = new Dictionary(); - - updatedPlayer.Add("Name", P.Name); - updatedPlayer.Add("npID", P.npID); - updatedPlayer.Add("Level", (int)P.Level); - updatedPlayer.Add("LastOffense", P.LastOffense); - updatedPlayer.Add("Connections", P.Connections); - updatedPlayer.Add("IP", P.IP); - updatedPlayer.Add("LastConnection", Utilities.DateTimeSQLite(DateTime.Now)); - - Update("CLIENTS", updatedPlayer, String.Format("npID = '{0}'", P.npID)); - } - - - //Add specified ban to database - public void addBan(Ban B) - { - Dictionary newBan = new Dictionary(); - - newBan.Add("Reason", B.getReason()); - newBan.Add("npID", B.getID()); - newBan.Add("bannedByID", B.getBanner()); - newBan.Add("IP", B.getIP()); - newBan.Add("TIME", Utilities.DateTimeSQLite(DateTime.Now)); - - Insert("BANS", newBan); - } - - - //Deletes ban with matching GUID - public void removeBan(String GUID) - { - String Query = String.Format("DELETE FROM BANS WHERE npID = '{0}'", GUID); - ExecuteNonQuery(Query); - } - - public void removeBan(String GUID, String IP) - { - String Query = String.Format("DELETE FROM BANS WHERE npID = '{0}' or IP= '%{1}%'", GUID, IP); - ExecuteNonQuery(Query); - } - } - - class StatsDB : Database - { - public StatsDB(String FN) : base(FN) { } - - public override void Init() - { - if (!File.Exists(FileName)) - { - String Create = "CREATE TABLE [STATS] ( [Number] INTEGER, [KILLS] INTEGER DEFAULT 0, [DEATHS] INTEGER DEFAULT 0, [KDR] REAL DEFAULT 0, [SKILL] REAL DEFAULT 0, [MEAN] REAL DEFAULT 0, [DEV] REAL DEFAULT 0 );"; - ExecuteNonQuery(Create); - } - } - - // Return stats for player specified by Database ID, null if no matches - public Stats getStats(int DBID) - { - String Query = String.Format("SELECT * FROM STATS WHERE Number = '{0}'", DBID); - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - DataRow ResponseRow = Result.Rows[0]; - if (ResponseRow["MEAN"] == DBNull.Value) - ResponseRow["MEAN"] = Moserware.Skills.GameInfo.DefaultGameInfo.DefaultRating.Mean; - if (ResponseRow["DEV"] == DBNull.Value) - ResponseRow["DEV"] = Moserware.Skills.GameInfo.DefaultGameInfo.DefaultRating.StandardDeviation; - if (ResponseRow["SKILL"] == DBNull.Value) - ResponseRow["SKILL"] = 0; - - return new Stats(Convert.ToInt32(ResponseRow["Number"]), Convert.ToInt32(ResponseRow["KILLS"]), Convert.ToInt32(ResponseRow["DEATHS"]), Convert.ToDouble(ResponseRow["KDR"]), Convert.ToDouble(ResponseRow["SKILL"]), Convert.ToDouble(ResponseRow["MEAN"]), Convert.ToDouble(ResponseRow["DEV"])); - } - - else - return null; - } - - public void addPlayer(Player P) - { - Dictionary newPlayer = new Dictionary(); - - newPlayer.Add("Number", P.databaseID); - newPlayer.Add("KILLS", 0); - newPlayer.Add("DEATHS", 0); - newPlayer.Add("KDR", 0); - newPlayer.Add("SKILL", Moserware.Skills.GameInfo.DefaultGameInfo.DefaultRating.ConservativeRating); - newPlayer.Add("MEAN", Moserware.Skills.GameInfo.DefaultGameInfo.DefaultRating.Mean); - newPlayer.Add("DEV", Moserware.Skills.GameInfo.DefaultGameInfo.DefaultRating.StandardDeviation); - - Insert("STATS", newPlayer); - } - - //Update stat information of specified player - public void updatePlayer(Player P) - { - if (P.stats == null) - return; - - Dictionary updatedPlayer = new Dictionary(); - - updatedPlayer.Add("KILLS", P.stats.Kills); - updatedPlayer.Add("DEATHS", P.stats.Deaths); - updatedPlayer.Add("KDR", Math.Round(P.stats.KDR, 2)); - updatedPlayer.Add("SKILL", P.stats.Skill); - //updatedPlayer.Add("MEAN", P.stats.Rating.Mean); - //updatedPlayer.Add("DEV", P.stats.Rating.StandardDeviation); - - Update("STATS", updatedPlayer, String.Format("Number = '{0}'", P.databaseID)); - } - - //Returns top 5 players (we filter through them later) - public List topStats() - { - String Query = String.Format("SELECT * FROM STATS WHERE KILLS > '{0}' AND KDR < '{1}' AND SKILL > '{2}' ORDER BY SKILL DESC LIMIT 5", 250, 7, 245); - DataTable Result = GetDataTable(Query); - - List Top = new List(); - - if (Result != null && Result.Rows.Count > 0) - { - foreach (DataRow D in Result.Rows) - { - if (D["MEAN"] == DBNull.Value || D["DEV"] == DBNull.Value || D["SKILL"] == DBNull.Value) - continue; - - Stats S = new Stats(Convert.ToInt32(D["Number"]), Convert.ToInt32(D["KILLS"]), Convert.ToInt32(D["DEATHS"]), Convert.ToDouble(D["KDR"]), Convert.ToDouble(D["SKILL"]), Convert.ToDouble(D["MEAN"]), Convert.ToDouble(D["DEV"])); - Top.Add(S); - } - } - - return Top; - } - - public List getMultipleStats(int start, int length) - { - String Query = String.Format("SELECT * FROM STATS ORDER BY SKILL DESC LIMIT '{0}' OFFSET '{1}'", length, start); - DataTable Result = GetDataTable(Query); - - List Stats = new List(); - - if (Result != null && Result.Rows.Count > 0) - { - foreach (DataRow D in Result.Rows) - { - if (D["MEAN"] == DBNull.Value) - continue; - if (D["DEV"] == DBNull.Value) - continue; - - if (D["SKILL"] == DBNull.Value) - D["SKILL"] = 0; - - Stats S = new Stats(Convert.ToInt32(D["Number"]), Convert.ToInt32(D["KILLS"]), Convert.ToInt32(D["DEATHS"]), Convert.ToDouble(D["KDR"]), Convert.ToDouble(D["SKILL"]), Convert.ToDouble(D["MEAN"]), Convert.ToDouble(D["DEV"])); - Stats.Add(S); - } - } - - return Stats; - } - - public int totalStats() - { - DataTable Result = GetDataTable("SELECT * FROM STATS"); - return Result.Rows.Count; - } - - public void clearSkill() - { - String Query = "SELECT * FROM STATS"; - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - foreach (DataRow D in Result.Rows) - Update("STATS", new Dictionary () { {"SKILL", 1} }, String.Format("Number = '{0}'", D["Number"])); - } - } - } - - class AliasesDB : Database - { - public AliasesDB(String FN) : base(FN) { } - - public override void Init() - { - if (!File.Exists(FileName)) - { - String Create = "CREATE TABLE [ALIASES] ( [Number] INTEGER, [NAMES] TEXT NULL, [IPS] TEXTNULL );"; - ExecuteNonQuery(Create); - } - } - - public Aliases getPlayer(int dbIndex) - { - String Query = String.Format("SELECT * FROM ALIASES WHERE Number = '{0}' LIMIT 1", dbIndex); - DataTable Result = GetDataTable(Query); - - if (Result != null && Result.Rows.Count > 0) - { - DataRow p = Result.Rows[0]; - return new Aliases(Convert.ToInt32(p["Number"]), p["NAMES"].ToString(), p["IPS"].ToString()); - } - - else - return null; - } - - public List getPlayer(String IP) - { - String Query = String.Format("SELECT * FROM ALIASES WHERE IPS LIKE '%{0}%'", IP); - DataTable Result = GetDataTable(Query); - List players = new List(); - - if (Result != null && Result.Rows.Count > 0) - { - foreach (DataRow p in Result.Rows) - players.Add(new Aliases(Convert.ToInt32(p["Number"]), p["NAMES"].ToString(), p["IPS"].ToString())); - } - - return players; - } - - public List findPlayers(String name) - { - String[] EyePee = name.Split('.'); - String Penor = "THISISNOTANIP"; - if (EyePee.Length > 1) - Penor = (EyePee[0] + '.' + EyePee[1] + '.'); - - String Query = String.Format("SELECT * FROM ALIASES WHERE NAMES LIKE '%{0}%' OR IPS LIKE '%{1}%' LIMIT 15", name, Penor); - DataTable Result = GetDataTable(Query); - - List players = new List(); - - if (Result != null && Result.Rows.Count > 0) - { - foreach (DataRow p in Result.Rows) - players.Add(new Aliases(Convert.ToInt32(p["Number"]), p["NAMES"].ToString(), p["IPS"].ToString())); - } - - return players; - } - - public void addPlayer(Aliases Alias) - { - Dictionary newPlayer = new Dictionary(); - - newPlayer.Add("Number", Alias.getNumber()); - newPlayer.Add("NAMES", Alias.getNamesDB()); - newPlayer.Add("IPS", Alias.getIPSDB()); - - Insert("ALIASES", newPlayer); - } - - public void updatePlayer(Aliases Alias) - { - Dictionary updatedPlayer = new Dictionary(); - - updatedPlayer.Add("Number", Alias.getNumber()); - updatedPlayer.Add("NAMES", Alias.getNamesDB()); - updatedPlayer.Add("IPS", Alias.getIPSDB()); - - Update("ALIASES", updatedPlayer, String.Format("Number = '{0}'", Alias.getNumber())); - } - } -} diff --git a/Admin/File.cs b/Admin/File.cs deleted file mode 100644 index c6008609c..000000000 --- a/Admin/File.cs +++ /dev/null @@ -1,134 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.IO; - -namespace IW4MAdmin -{ - class IFile - { - public IFile(String fileName) - { - //Not safe for directories with more than one folder but meh - _Directory = fileName.Split('\\')[0]; - Name = (fileName.Split('\\'))[fileName.Split('\\').Length-1]; - - if (!Directory.Exists(_Directory)) - Directory.CreateDirectory(_Directory); - - if (!File.Exists(fileName)) - { - try - { - FileStream penis = File.Create(fileName); - penis.Close(); - } - - catch - { - Console.WriteLine("Unable to open log file for writing!"); - } - } - - try - { - Handle = new StreamReader(new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)); - sze = Handle.BaseStream.Length; - } - - catch - { - //Console.WriteLine("Unable to open log file for writing!"); - } - } - - public IFile(String file, bool write) - { - Name = file; - writeHandle = new StreamWriter(new FileStream(Name, FileMode.Create, FileAccess.Write, FileShare.ReadWrite)); - sze = 0; - } - - public long getSize() - { - sze = Handle.BaseStream.Length; - return sze; - } - - public void Write(String line) - { - if (writeHandle != null) - { - writeHandle.WriteLine(line); - writeHandle.Flush(); - } - } - - public String[] getParameters(int num) - { - if (sze > 0) - { - String firstLine = Handle.ReadLine(); - String[] Parms = firstLine.Split(':'); - if (Parms.Length < num) - return null; - else - return Parms; - } - - return null; - } - - public void Close() - { - if(Handle != null) - Handle.Close(); - if (writeHandle != null) - writeHandle.Close(); - } - - public String[] readAll() - { - return Handle.ReadToEnd().Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); - } - - public String getLines() - { - return Handle.ReadToEnd(); - } - - public String[] Tail(int lineCount) - { - var buffer = new List(lineCount); - string line; - for (int i = 0; i < lineCount; i++) - { - line = Handle.ReadLine(); - if (line == null) return buffer.ToArray(); - buffer.Add(line); - } - - int lastLine = lineCount - 1; //The index of the last line read from the buffer. Everything > this index was read earlier than everything <= this indes - - while (null != (line = Handle.ReadLine())) - { - lastLine++; - if (lastLine == lineCount) lastLine = 0; - buffer[lastLine] = line; - } - - if (lastLine == lineCount - 1) return buffer.ToArray(); - var retVal = new string[lineCount]; - buffer.CopyTo(lastLine + 1, retVal, 0, lineCount - lastLine - 1); - buffer.CopyTo(0, retVal, lineCount - lastLine - 1, lastLine + 1); - return retVal; - } - //END - - private long sze; - private String Name; - private String _Directory; - StreamReader Handle; - StreamWriter writeHandle; - } -} diff --git a/Admin/IW4AdminIcon.ico b/Admin/IW4AdminIcon.ico deleted file mode 100644 index 3edaf82e78eddb63bc92829bab97e7199c2b7c02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32038 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 D@Z25R diff --git a/Admin/IW4M-Admin - Shortcut.lnk b/Admin/IW4M-Admin - Shortcut.lnk deleted file mode 100644 index 42d3849b7e644679391dea4a5c0855a4266bc50e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1316 zcmbVLT}V@L6#vZ>@`IST#H7@ON~x_oGn^}7wlNjv2bk%@4JOUy)H(4^3L<s*p6f*V)kCtVTl@x>IP_NK{q8}Ld|b{fc?Mtgl$(G zo2x}@4~M$oSQ4L$)oEx)7$J1A#!SS2vlj00`RQ-yDl^A4b^l9ka@*(UXC3d;2OLOU!WUpdiN zG5mczV@UJoS4&PwoJ-^o^WD!w0i4_~l^u$1;k>OPe)fez!qZ1cqIZXz+;==S=j|UE z$JU<+jss&oEm1GHbk<_tI89+Xm`?@2I+97V00X6z)<&l3&dX sx-K2_pjl7s{~XMw;D%6B~SKw&P>;Q?H`*NmHX)V34iO~!T -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace IW4MAdmin.Properties { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.5.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - } -} diff --git a/Admin/Properties/Settings.settings b/Admin/Properties/Settings.settings deleted file mode 100644 index 049245f40..000000000 --- a/Admin/Properties/Settings.settings +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/Admin/Webfront/_header.html b/Admin/Webfront/_header.html deleted file mode 100644 index 6efa94c1a..000000000 --- a/Admin/Webfront/_header.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - IW4MAdmin by RaidMax - - - - - - - - - - - - -
-
diff --git a/Admin/Webfront/profile.html b/Admin/Webfront/profile.html deleted file mode 100644 index 308a50c37..000000000 --- a/Admin/Webfront/profile.html +++ /dev/null @@ -1,333 +0,0 @@ - - - - - - - IW4MAdmin by RaidMax - - - - - - - - - - - - -
-
-
-
-
- _ -
-
-
-
- -
-
-
- _ -
-
- Played _ hours -
-
- First seen _ ago -
-
- Last seen _ ago -
-
-
-
-
-
-
- No recent events -
-
-
-
- - diff --git a/Admin/app.manifest b/Admin/app.manifest deleted file mode 100644 index ddbf42b9f..000000000 --- a/Admin/app.manifest +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Admin/config/maps.cfg b/Admin/config/maps.cfg deleted file mode 100644 index 14317d6b2..000000000 --- a/Admin/config/maps.cfg +++ /dev/null @@ -1,44 +0,0 @@ -mp_rust:Rust -mp_highrise:Highrise -mp_terminal:Terminal -mp_crash:Crash -mp_nightshift:Skidrow -mp_quarry:Quarry -mp_afghan:Afghan -mp_derail:Derail -mp_estate:Estate -mp_favela:Favela -mp_highrise:Highrise -mp_invasion:Invasion -mp_checkpoint:Karachi -mp_quarry:Quarry -mp_rundown:Rundown -mp_boneyard:Scrapyard -mp_nightshift:Skidrow -mp_subbase:Sub Base -mp_underpass:Underpass -mp_brecourt:Wasteland -mp_overgrown:Overgrown -mp_strike:Strike -mp_vacant:Vacant -mp_abandon:Carnival -mp_trailerpark:Trailer Park -mp_fuel2:Fuel -mp_storm:Storm -mp_complex:Bailout -mp_compact:Salvage -mp_nuked:Nuketown -iw4_credits:IW4 Credits -mp_killhouse:Killhouse -mp_bog_sh:Bog -mp_cargoship_sh:Freighter -mp_shipment:Shipment -mp_shipment_long:Shipment - Long -mp_rust_long:Rust - Long -mp_firingrange:Firing Range -mp_storm_spring:Chemical Plant -mp_fav_tropical:Favela - Tropical -mp_estate_tropical:Estate - Tropical -mp_crash_tropical:Crash - Tropical -mp_bloc_sh:Forgotten City -mp_raidmax:^1L^23^33^4T^5M^6A^75^8T^93^0R \ No newline at end of file diff --git a/Admin/config/messages.cfg b/Admin/config/messages.cfg deleted file mode 100644 index c72ab1b78..000000000 --- a/Admin/config/messages.cfg +++ /dev/null @@ -1,8 +0,0 @@ -60 -Over ^5{{TOTALPLAYTIME}} ^7man hours have been played on this server! -This server uses ^5IW4M Admin v{{VERSION}} ^7get it at ^5raidmax.org/IW4MAdmin -^5IW4M Admin ^7sees ^5YOU! -This server has harvested the information of ^5{{TOTALPLAYERS}} ^7players! -Cheaters are ^1unwelcome ^7 on this server -Did you know 8/10 people agree with unverified statistics? -^5{{TOTALKILLS}} ^7innocent people have been murdered in this server! \ No newline at end of file diff --git a/Admin/config/rules.cfg b/Admin/config/rules.cfg deleted file mode 100644 index 71e9fe9a8..000000000 --- a/Admin/config/rules.cfg +++ /dev/null @@ -1,6 +0,0 @@ -Cheating/Exploiting is not allowed -Respect other players -Administrators have the final say -No Racism or excessive trolling -Keep grenade launcher use to a minimum -Balance teams at ALL times \ No newline at end of file diff --git a/Admin/config/web.cfg b/Admin/config/web.cfg deleted file mode 100644 index 499c2157c..000000000 --- a/Admin/config/web.cfg +++ /dev/null @@ -1,2 +0,0 @@ -127.0.0.1 -80 \ No newline at end of file diff --git a/Admin/lib b/Admin/lib deleted file mode 100644 index fc38b3684fbe06e056c123e9ff6f576f842c8b69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 406 zcma)&K?=e!6hvn&c!wT9ih?%~T)7dwK#Z*hVp`guw^wI=tHqt0<|l9dpZR?~kGP^j zff@mkRnI!2frmrp{mgqn;x|(njMwCmq(aAc$FC+NzGj{W?6I>`{64BSq&Kuwds9t* zCA9_Sm|;teCd#*?T3HQlnOqreI$l7`C9(|izJDrmx~ESXlT7=Tmf;N($w#&T diff --git a/Admin/packages.config b/Admin/packages.config deleted file mode 100644 index a272c64df..000000000 --- a/Admin/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Admin/webfront/admins.html b/Admin/webfront/admins.html deleted file mode 100644 index 836f89b14..000000000 --- a/Admin/webfront/admins.html +++ /dev/null @@ -1,71 +0,0 @@ - - - -
-
-
Owner
-
-
-
- -
-
-
Senior Administrator
-
-
-
- -
-
-
Administrator
-
-
-
- -
-
-
Moderator
-
-
-
- -
-
-
Trusted
-
-
-
-
\ No newline at end of file diff --git a/Admin/webfront/bans.html b/Admin/webfront/bans.html deleted file mode 100644 index 0f8480a8b..000000000 --- a/Admin/webfront/bans.html +++ /dev/null @@ -1,5 +0,0 @@ -
-
Penalties
Back
-
- {{BANS}} -
\ No newline at end of file diff --git a/Admin/webfront/chat.html b/Admin/webfront/chat.html deleted file mode 100644 index 6aef35315..000000000 --- a/Admin/webfront/chat.html +++ /dev/null @@ -1,48 +0,0 @@ - - - - \ No newline at end of file diff --git a/Admin/webfront/console.html b/Admin/webfront/console.html deleted file mode 100644 index ae50750f5..000000000 --- a/Admin/webfront/console.html +++ /dev/null @@ -1,70 +0,0 @@ -
- -
-
-
-
-
- - -
-
- diff --git a/Admin/webfront/error.html b/Admin/webfront/error.html deleted file mode 100644 index 06af03051..000000000 --- a/Admin/webfront/error.html +++ /dev/null @@ -1,11 +0,0 @@ -
-
ERROR!
Back
-
-
-
-
-
- Uh Oh, it looks like there was an error processing your request.
- Reason: {{ERROR}} -
-
diff --git a/Admin/webfront/footer.html b/Admin/webfront/footer.html deleted file mode 100644 index 80a785395..000000000 --- a/Admin/webfront/footer.html +++ /dev/null @@ -1,8 +0,0 @@ -
- - - - - diff --git a/Admin/webfront/images/minimap_mp_rust.png b/Admin/webfront/images/minimap_mp_rust.png deleted file mode 100644 index dea454aa9e89419bf16528d91c4008faa879a4f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187613 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ÂGh!Th?ypx|dpCa_;VZ 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%0DcrkDYdv5N%5@0iv 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 z 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Μw6Y_?m)2f_C*UA<$?W)uQ3-3SrKD|lSTwXB7y zH;NK3rO}D0U1C$oR1r0wim7c#b&YL+>mA@AKl>NH`wP|&@ZB8+R*~a*yRBN_vZkTF zmMI>J7l?p{@EfW;TN$ok@dLjy&}rdF7H`S|{|tDEaVoH_%Ed_;55F$Bkh+l`HygxnT*fwFxf5BTuq{a0oWlPG~8LWhpR<6I%^O1|G~}Uvveq*jYntg$?RS@UOhRSo$^(y z<;ni3du9tntu!hT!xioyD6ow$jh6&Z%6oM6-Yt*T#oFCM(x+Z27~TXUH?V zF`z>}=EDdanO?XI+sZIyL5YksM-st8OO?-kUKQWL1s-s+x_@{7tUFmgxj8#)Ut28> z_wM(Ht3|kT>aVg0x6is)IV)d&kc+~zc0T(Dv*U~QkkfE<*3Gk1+~Mr3d}Ve2?%wNq zvTW{d3;7(qz3eNz?4>Y8WDSyqNk@4)O-aSXtoABDhGMvGp11pcueLRN+e>C+i6abSVj+V5-N*7=>eq3HVHgnK z*_Eqen@Kz!B{Wu^XG(E05vs~VBogod9s(Y#AnsKttFT*DRR{xx%PB9f7B~0L?A7J@ z;rwCy;fwPydvrDTML2%bUenWX^r$`I9qk_^p#uKF*X^=575Mv=_WE1Z5VTaiX?Ug;?E9Ckwj95G|lYZZ4a^VR;mm* zG(lcoEa$T`j#i8L>~%R=ork0QSL0Fth@T$rpS7>~X*@bhhqekwXYJh1tGf@*U$N70 z{IH$xopQWt=d*j&@%_u=y-!U}mW%le+PLjoxL6NY6?78%9bb2YygdohfU8#!g&=Jk zN08~3_5#*b;H*?*qNT}*UM~z|-4-zM;$q4gk@eOGXNp78WGGg%O4C6ErW+>w4Ec4`>V_4eD7iR>S}Q~e}h+9grkT3Ys>R^{GdHqEyDi8ZtkD0?>uM^S%#yB z-HbP9#}C?94n7l)AGU}4_vF>p`TXFty0f}Gp52Ql%log)Rx_e?+EwYs5EIeG`#c@8 zo%D7(%?lE4F3U>1?}x(aq4Hu7EtB9SeOKjSd&B0&#V7!$rm#-nvPM}?VGX*!-kzaL znXbJsQ#F-|6{8OBT89@wj|p7lk>A|{WSyV9`Zs>!-FLvpB%AGw0xCI3<#q?l>{;AV zbv{%s;8ihnePupoqd4ij_nR!yYjacC$#BpSNUbI=gXWYu?+`BrK`nbRd2y|UUJQ_; z%Lcrl%}~th3e&+I$>?DOOBs$UnVggJ|C8k+?0@#^gwy%#v%`md5s%-vI$;rx&e}si z<<5il(9gs1!*=fXZ@&D-)qM6Dy>tI+zJJE6tJ9OcQ|?@zy*zteUR$2MGP~yof+}=6 z$Ai;5d>^J~ai zrWJ0eJR9$GaeSMr4SlOU8c2AXOW_VE=`Hl*E?I3;nwu-zRb?rN4i5N@VZ8H)ZIEZrEn_r%X)!Ii?;R zL0{t9X6E^wB_`tFJA)sNSc>Zf!i9>a>WD^_3oRcXK!snwkL<6&iA-?zmkK`QjWled zkc`>ih>IMDCo;CrTzu!5BST+ZZ_mPGBD!AZ4f=vEl1p0|+qY-~;%eS9*}uoh^2y=s zth>p*`E=FJeNo?jzzJi@*yoFXsEFoU9gi zW@nr%Pfup|IWZLls!ZjB;#qzcWgB*wY#7ogk{pKtW0TDu;sSErH?dYt$at5L0^BQT z)Av~nE&+@x*lx0kg;~=mXqv8dvQe|?8q?aq+KQ<_@!@ zz_`ww|_c|JKfJ!t1V2}ft$&HdAGyj;9; za9SO$+7Ih#I9@CcX7_fFSLesGdwgj1&;EZNzEIJ+_w*8`qwEc~`}O^mfEjCG? z51+?9-A=60ah`CNKC)bdqc{4K)p
u#jQ@X8A4I^g7}bHQRJw%ssjs}GLn_=m zkVs!{wQdEPB$}Q26xx(E4hM6rK-{bOjp~M{nw5xz?J|#S3}7rAwu^h`#s4x-ny(z` zwkb|*GYGJC*r2qn2?M;gT+ClS>t4G!ua3{!o1Dwh!^Mf-^W(Gj!<<$xpS3rO^Na>L zjkj~fcl0Qo@N@F=YB8VR^ABB|&t~^{b-9=yeAZsQT-@5nQMxn$B?+`s=u|_ogAQ_C z;GnLC9(m>vSZ`WN3$06EVp~0=3M^1)-Dr`9JWIxr;j*ZWl#5Kc&aMV=^z10UXfr6!+b}N>Ir354da(FbQO5_UMm)ShkSwAVn}}4H zQaKf_hU1Agrq}{qzEy7BaRlBxAK$N2>gHfV>${uhpe4V~Q@7c|_R`wsf|@|FX&T{G z`7c*F%CuD=!$P)Aw&T_Le0Iuf%f;dT{bz^6G9Ew3)xfFDFBjqXEFBK3aP**?`xpl9 zRmb=H15P8kfJHJ&hRHSbX~7)-`Eh< z%n_Ti&KM&dh^@;|0N$waXmV={yUT0eIx?vE#IyKed?7&_qjngqAygnGRaf;y+8~rJ zYLphoL2w4Ph`DL%yq7Cy+#|G!%U_p!3(o}KNzsS?Kz3{~yloEEfm!Q~&VUYPNS8 z^LA}PN^De~us*cGcR;B#Do_nXF}=0zt1?`ty(NBS3NBW);@XBb^tM&z+PWneT3ezv zqsW)JWGpx>q@k z#}8J&ifzW9*FU2HXQy(qN{6#kUb}xa-#?q&d841t?#0`er?1WK&yH7%`QE9Ytj_OF z&*a!$%8r?2eqrTBVs{4u)s9ZqTGVSnuwkk-=XSd6Qs1AApw1tjh z_ahk0l<5YITgRBVWrAW;))P-yF`(Wsb=FKa=9@vhnPT{aq&D@nz`$hV;_Je;9PLqb zS~LU5Tt;c#twoI^UTkZ`0fpS`5v^PZPlrJU$<2yPsN|{~R|=u+NIGV?{UG^1@$LTF z84?NP%{y@G(@4lr&=+tZF8CM$0Co+I$@;iaeB#dqdYif!B&I6!hJE6s8#hEv!-!IR zwHVj`VfU)M9*)k=e~mn-jvlu2VHJ)uHt_gicXM{H_|SuNc<_2SKD(Mt&$#`dpC6q1 z?aRf<>`aeW8Bnsi|H}TEzUnW6`?7ddHA>j+u+|Af{_dJ$F_2hg2V#&qh15o;4Rn=w z@l43_Bi-nm=fid+Zop)-v96kKMp=k7$*sMpQ#MM%@GKaxo;s|jtWB5{&c5y28d8nu zAmUjFH@mOOwLnns_P(B&6H}6LH+jJ`3M+RboE+KjLgA-e_#< zgrSWRlRz?+QKyF_0cTKL&{O6YPi{>w+7o|0+dP$ zX*@n_4`-)24R~E%Teh=<({TH8akzgPj#u}OXQzBG2bc>b)M;V&s0SUO;01-E>ha%`xG0oAM4sla6Gr<@Hs~c?JK%=cyCu;?>_49Hq zHlt7oY_O>(h4qx_21PI*s5b*^ut_4PB*LKD)R&W(&wqh#jdsSMBWQGZhWPZlMN|5y zccYg2K;;S*u@k69m2GkBK{rWiZ4kU~8x(O(AR&QdQxtvajh$!O3S4dEEX2FC%`yQD zYav|Mp&(DIvd5*xMP;lRqOW-J^%ADhQNb<*TA{Dwia59gc#Vqw7mh`WBw{ zZAwWnS`+-i@?y2RTz!@yw*>0t<0vi*6lNx@!5>}UjtJiN*J@|ZSswcj8=|l=F z8|bE$qC#9-$W$0nnSiwDEf%|X@28h?m~xcdl|BK_`#Lt!3UME)w2E=92=j?IXP;b7Tv zJY8inwKP7>CD88G3)6{hF5s48&RuovP*QbjnTwDOUb5sM-KYs$+403P+&R0N4~uyG zIwu#4aCFwaHvF6)Jxm!5c6I2>c(mLc&hGK*!|r(h%wAnA<_D+t>cjSM{~o_$b(Z`8 zPY(AU$gf(Ry>hTT$j_jM*pZ?afEz5s&NT|evqFV|{QL|{(V>9`EpoKT%fBhmuFRU$ z{Wu)nYS5|ywFz-F3d+Csn&~vFVO9PZuQedS@wz>mdzcFJq36!*`n zmzPg&9=vh+t5%E1J(;iW-`#(GKB~@jR2@VYD`g{rHdJz}2H|pqxlJ|`U32@NIuabt z=bpBB#ciu-Bst{^r0Lssji={k7-}Qe+;kK*_Q_^aOU4H%rqh8Gg{UyQdRVMC;^Gq* zU6Uh=BQO-X(9^YW+neWEU>2Oxyy)UG>;pvE-OBtjI~E{#w;g=F@hh$Eq(qzNc988_ zp0WUOW|h(>@y?r^2O-n2oimj#J*1f8EQZs^w`M%_xVu_gfg?VBae#ik33ff6Ol=zq z63DYc+AW+WCTX+fEY;Wr3L!yT403b!TwZ!LGLPQIfFBdv;d71ZuRZFo{|oWe6PeF) zG(GJq?<-L2sJaU8vzI74iT#1;<@SJ!3e#;%B~@6D5CXKJ&Eh34rsC1MQBn(R!utAK zZ-i*YpyS>aBu%^l)%7?9l(nWvnz~%=-f7)a-eNH}H!N*Wk>=b91b^j?I>W8}lx{o*$cei5v6>Mw_SF)`bHeFWch;iEhLq%niTS(`x^gugy^G4Sv8ApYE*@H)f zx`g`iqbZS9GttIJ(L8ZnefMb|LX3^c^a3p`D~UFfVOtnjK>#F-5`STn>&ihmPg_t% z!nDb*)uV{{Q{A>2H<-pz$+Q`ZunB{1w?i^rwcwBK#%gxxh@Vp-)wYROs!7#V9ie5% zH=BuP7j#o0GRSCR!$!sHf-T`52Ysf3s)=>iGUkK&s0e7NP1MjK_k1MxR8nmZ79#L^E-zZYqrfFVJlasgZOkDt~*HaIeM?f;GxZI z_^eM}Wg+{lmfjS7%Ei8Fo7LNCKwP(^aeof?jx5X#nazH7@Al>Fj4AsxxYVrctY-1l zDSKhmiWWcLI&_#O%o{B>6%5+$D%)MyLP(;P6r<0n&z0fhSSjO;u3lg~Y)fGmxEPcQ zmkx2{F|`YLVFxS;_Sy0J86LfW;O&TmIE(=RT6EX}rt7nU@eyvO>YG=O#Su5KBy9yk zn|nxudX_qrDih(vQE{dhsO3%2WM3LHbi_|Zpvm5W#?)Qv!eTR>B4sBs%_rL@8!3k8 zG*#G&njLRxiT*sz5`2JZM&4{E^h4p-5E1E1VkQSzCc)t{8XHL(RRm;Rix0BI6x&>b z`0`cfB3TQ0_X@ZnDXmhxeGuvt4%+1#NZm|BU$brg=Sll^oo-(DE*hn#CIyGWgCmMZ zJlk#uX%Tz`R1SsZ*;irMcHrg3AkQ%{S!;T$S2?)g@`U-U9^?LE2|UPZW3J2(wm;Q& z;!p}?Kk*VO-4W`n50T4&3BX5kbWvi$EBqQn(OpmBz^ak?BU{P3!gIOiYFQa_l6>Or z)X`?_6?x&Zp6;!E_R2$|_ktfFHO=;0lj=rIwgXeO+HUL)*?34CXr|&#EnH6XCq}yj zu7GFbY)DNQTI3m_6;#5K5yo0|R7C>S1pS&dh)*TclSZXqT|*eB%%M%ODi#N`Rp=MO z&gIU8)pwYTV&*-wV6j?ny-iy%xzQ;P1;sDy^^fIVSC^c3Th1@h{kgn`Y84W&K%Dx&!0{XH~Aqz#a zj+^VTW~vQ->|f8(OEw)<#!htAc)=>V1+?}Fvjl8%V&<5t)nhWKW-!6rF_`GurmTyJ ztFo>eAL=OH#{Gj0(?DL$C~wNOd)ju>A00E<-hp4FXbn*g#3;Rad#)7?S8tcJr__&dx}~^m=Nb#00I!*0PM<_68`V$XvEz zk2UNMvQ{e`L)B5+V7gW}6pw(hv1z^41sgW|5h8N6?`Voih`yW+nIzYU3)AEX#h`FF zsxtaDQk$VBGJ02j9(sUUMIK&DPD4#hlTxLwa_JEorH}mM z6lu1&?9GJOZQ@BT#NuiJ9mAxh)sCfFpdtmyFpJO{H(Hs}3<8D^g&{7i_XfqVy)~wL z>n+AlYH_JAW$MhhqI90Fb`w`zu?t+W+pVC1!iI$4JZodRee4ueJ$WQ7FVeGjc>&i4 zW5%4xtMVLurERBeR_^YgPeayT9XyS+-YHJ9ZO7U2UWo0+V=Q~bVlqv;pWQoNtmZnr z*VA-BpZAcs_hj*mgRY`*7c9x38X+byO%f>FrIS`vy2;R1E#lINn(4+1 za}#f)7ehPdz+L%*n)`S(^DSPvn9xBgsa%So%60%vNf2zjRHtC3iq)4nWR7U0N{M4}#f5olE3)(%evkp(+Eev=ncw;pj~nXD^%oIkP*2m$mmaafF_{b0 zILO+mXUlN4>m^sT;i~Mo!nuMrT=g_-aC03ixw^^gz3bVg=Iv0RE%?smIt?2I+{f*m zJ)0_{>H}5pnSohjq*9hhX7>(zu?4K76E#uGf?y1J6}l>wFj~!vC57xTyS1OI zvRz$Am9sRum?T&yrT60ALzT4h9@yDHl{82i-RPi{tWvgwpzd1?R>p*-l-Zy%;O6dC z-F(e@R@KWtj1>{ zB)Q5sUu(wknkX_jW&;j3*b4{WUl0Ru-yZfc7k31+++xSY5UeBMRD?3d5=uiG3Xgdt zgozJ+eS2&_1%%ypx9{6F66e~*muKshNOSh)rwgyAi2Af13#<{HNLfB7O-f2BNgO-u zTdM`=y0QNsZ0xNVZaJfC`@Tam_o2_Jc82cpg8mK#Qn`j)%XK3bi-f06N{Z+tflhPl zryGDytHRYZZ83Mbs0$ieox~XN=XD}5ee-_qpeZp+o*D#VSyrV(@W;?yDQiV$d(m?1 zaL+)|wN1vs%@iGA>%=@o&?!6PAFMQ7FM!EI8$m~{N3?`ISD4EnCA_jwIKTEQ2imBy_O`_1Vk~D$c$gMgp zSGW1uS-bd008DFGuVL*)uBcU@?{Hko%m|zyE=C-s<-qZfm8%pyGcLs4ku1*rr|hXCW1yS=lh8z*}Kw-S@MoGQ{7;~dhH17_1=bNy>6(> zUE7~|?nzJ(vp_UA6l6E%0dn#DVC$%zK{4cW;^NzKeOz=YaNmMXa@wpygsQ44x=wvS zTi{BBzRxZH>>&YZWB;pZ~5W-}f8HNzDA@>lsdpL(%x3Qr0YkYG_H+Ut2IMEYi zwx1w$BU?@>y&KhAsN6f8Dto+CTUS*nuT#kq%Ay?|3Is23WU#3Cuk%my{FhSE{5O1T zb!#4R70rMz&X5+IrtyT0YLSDDMR+5dhAB~M5of{`NlN7EYMr_TNlGuTo=WlNN`jYL;RkUmQ_WRd0~BAI6A;#6j%v{f%z&%xcC zz8pVB=>!}zaT(~qToKSxwP@mYaxcI}&3RCKwIjrgs_VR*j8F^TrW{1=(!iv9_79U{+>pq{m})VCIkEjvR@ zp=Y#KtES^+w7w_1F< z_J+O7DQE1#8m8-Hb+aL^bNSdXDAv{ZdKQky|ar7KnE7^el_km7u2e)?RaLRcOwVVOM#@AR#1WUqe2ydoy}IH|N87r zHuB((Zo6bmHhDB+E#k67DRRH$!28F=`B5K4D5m&ioucBBCfOC#MQheH98IB)yw>8Z zrDku+df#;LJ$wzd>42+u( z&r!!-AS()Po2|u%w881wXlPxKc618bidu~6LsyNEEjOjBD9p5r`B3=vG^nex>Tor} zvbT(Q6;00x$9yF|TixRECd=$jNNgsU8qL(iryHYTtrPM4#T1%pL)|cKrmTHk=ZVTx@acM8 zBc3k}%gPbpR7$$>bSQ9rsxERZD1TiK$mi?_U5>*j6w?xl#f8CIs6(4ZDdu)5!g|Y7 ze-1R)Z7-0z4OHc7m)mEFHq}?Hr@gN}YwEh{jIhSpU)|naUDouPVx&dz(!0vtV7AIl z;*bW7vZ+(PS3Eej+l`m*=on%yAd^NiuSlo}DgUaWue59p^<4QThk!#`9%fY#0PZ*Q#tD;i9IRq415bUD6$IaHgA$0Zct7 zaXMj>`Soyr-XZkJKp}-+)53kU_uC>z-WCot+cm3Mk);ur0Q*gCtwwFYbptNzEc3Tj zi`H@9j8#B>SaET2dp0Dd0T=fCc*T=TE+hfX!GR0BtcVX}oX>!w7=%%CZ?rHtcqx(LW-ILakWHt+~%#}2C^Pne3wHgB(-7PMg2 zGbzJ2Qm+MRBAY40MxvTwm^Q>Q!Zu{IX;H^IJQ4w)uvQ|@8kjy0pA(;J!mskal)m)QFFI!zY=|*!A}JEnb?eHdppCm%h;G7G zZ*EM)vm%Lz$JTTVa)Y?hRleO5-czAnB_3PGkF%fCR{leL$9jeclEr6wsJbF!r91Je z=t`mLDt7Eznb#4sR435qN+*CHk3Av)9%o?C!sg3yXl@S8+V?gBzQ&m(Hj{iJCmUPu z8)!A%WJpldI8DQJ?OaT+xpbKTq)^M6dR;JCL#$`fxPMpjA9-QV*S@gl26_J6%*=5S z8z*d|ce)M;6)7KqNJ}fMBNdn z5~tD0n!Sv1nmS&K#{#BnZ3?*nf0H{$V7(ea2IcV~edwRd{J%H|wsC^yg^g#y#abB? zypF0XLl5*S?Y4Zh?S6j&RJ%RRz!}SscGe**RJX_ zoK#G+BsCSpM2a1zLqXX)I!=SUyvlZ9H`)0OZzxNVjT)1Yxf3~cItI;vi|t$>8(aFd zeg|7D@TFiXwYaQxf{Q21m_RmGPi3-3ZAfg86j57APBm>*5?F8R?$LW4WhhYe!oVB2 zbAWSYco0Y4y2*<2TJZwKmIq_3Dn>iM!bT~(@r-E7u8W;yJiCn(11m=TPamzWuD8(G zx^E!`XxjihZMsUYvh&(@LXwy-2&5Fl7FX=Z&hQ*zkdNVr;|@q7pOHXPTrz&dv(@wX zeM{-8%KHJt%bt#^>nTO6j!sH0%B;tu9kJ6)O{b$`8E^?b9VJ~`p;mR;TkO~=U8-)# z`oIU{@&)<}+j$*7-!voERH?>2`fLKWz9S(Yc8_>tu)kY*7 zB(VAsvxA`;%Bn!TQQLZZUfsx>#Lc&$gzU;@N|h^c7ca79_c$C>^N~y{q4kPUnh~i; zF(>weRCJ}Y-?_MDa9G(_6sD8{9>j~G$homy8?l> z#k+nWgDutIsXJz)hO^$9(bn8tGu{`|kai}5{HV!=uIA8Ak!)eNDjfF=PWH4FRGkbQ8xC;!?d`E#@ z>48S4V+YOLpCUpjYc(4$gD!6^6`f( zG`YJWg`|)aVhdHsd|vMRx~JWdxSz#njP#BsV$>zx8gX_i=Y(xyxQmKLgODX>kQHr> z7|$b-0OAJ<%S4Ixh|d(Plh7Uof4!Y#sAx1gjJ|upM-!tt-_d6gBTQ9P zyt9$Lq++{7W?HgC5zhOE^Yqz;6Xi3~%(4`V8=GTa0I?I$h{@AV)0;u>Z+cNN-k4w_ z8|MuKlM~kSpm~=(&{%?NBeo+_HVCSNSpBI8JXMx)(A+A-5nkQtK93-~jK`*2@6aCQ z!|T_wcw9RT^xjPdRhsnag4{co{-46PUK79sftHi@vk#Jj$u$mdY8WP5CU!X;#NdFA z0?7KLSxP^wFI=S4A|)k~dPHFm6nQ&f{Z2h%7EN2A93hza7)N^|7$=ZK*4~*&wUqXo zRxlS$h-J}5XgG_$Cm{`nT46U+%udc_lR*>{A!^2hG4x~&Ndb$el&LwXuk>uk4iKHi zICG*fVUjlb(KMKSde8N-BeuCnmnt|z$g?&+rK$^$$=e*8OdZB&8ZkLoLQ95`Xux*h zq3?*$kcD)6MKfqvqxp)t8NN>AgJ`A$-6IndF&MRn2_*}5h|2S})(BJ|a zD|;i@;i=Bj0vCb{7LD0p4AEexG&)SSY*I+6q}L#w>3x^9x@E7@7PyEIr^ykNqex+5 z-xXRwPoYSA5)c-Km=?t*{dK~gME7K3F=U1jGevk#&^a|bqQ;cH^tG!}*)SiPl)<)` z#36dx$Eb=nqC12*(*`4EaCFB6(I|If;;;wn2RLrOjUHwVXKK3~g^3tpLZ@Vk`F6x> z0)qIm#@1y0yfb}6hHqSFB9W$yPbqi<1=I|e{xGRLO#`KaZ!Kw} zqJ1=I%!vj$+ak*6E?VjT%v8D$v(QQD5j{0@!&;$7%EaZ;G^kG@63H6or-9TBP#jW@ z=CJ5g(bRw!HYichqQ#(S<_j(GrT~?;5c1AE!9I($CM5H&pO`jA8G;P*VDf@uSRuBl zSnA9uIn%%)$GKUo^SI?-@qhoDg*GLFS@vbHUwzf{4MyCPVNsOGl&zSl*%@Z+)U|QC zkC3HX)lWU5h}#b^jD7~fOn0*#vwnsZAXsvW9>@;|>tTrCP!$uf#ilU@(kB^=Gf_Ej zG7H=D2TmJ&12HUD4Q123%-2otq6w5u0!x_wjMC6JOv-hX_++JingE^lLH{*}aFCy3 zVEowkm(+L6wr4MIn}?FBmJ;CHcFLdvl_5GCXCySzeBKQ@mLM)<)Mt549OEkDd?T{kPlJZV1 zqf+k`D(BP{wlBZ;&I>G6rHon91WotJ0WseIZeP&Zpe7ASr4+VPbcWD7P)dv=dA58s z(cmbFoIfx%Ox5?Ll!yv)rZZ&Gksl)Gh8Rt6h-GA;65wMwpxQ$)+C-YO?X$*xt_JL( znrL`<93M{B9-s?6(sbFzludW%nrLFox6dQ{f<7Zs(nLm{uuH3-;Ydh-WxmdVp7^Qh zkB{Rtn(H|DgY%6dyIWyrR)TYG^3jRcl(C3n_Q}H#u-0d)6kVo7V`aErPzvddFby_< z4bmW_Z>uOlPhR|?C{$5lVl=%Y!F`p$N?S-uFN?%Zi_`^yiESZfSU1zE~HA-bGUnzhqwAq1?7|;sL}V>v%Z!4gW37_ZuUMVGKl* zA8>dncS6~ylu=AHI*H3Ntn3LGl*~H{N>KJLW*NOvGc1`zgCc#FDPXe{c0a6y5~MZl z{MzU=?E+McFZ4ixL={X6(iSSBgT!CZw4`Yz6%8h~v}ukh49l`E9U84^A=pUELmVOM z#v0F}jc9Z3^ByL~)!<=@X1%7tV=DPl8>=e09@6WcD`N38;e02k=&bpQY%d$8Lol-_ z#6By5dH-C69(5DVJ4TaoOCA7vXM+ulF!V_dks=sO?4ya%WPKKN-8IH_T0022Q+2`l zVCnqx9yoX%7v{*>L)wpw%z?HeKV)%4={YkPd_njMpZW@&h~~+V_}>~)c!cq=EXFsP zYnl|K+JkId9&SN`J)K1w@xW9Yldu3afS7Mk-!)(`-S&X2>rZhwJsKV#WN5**0wrcX=)&pmkFII!YyUAl7 zeVK8LV~$GXi!p%=PwBmjZRXSHB{_nU7A*b7(~{|g9{#3zk2#pw77LcXsLG3)D`UP2z2HE{qAep~mYNnlR*q&pe(`+53Dk9ej#+-H^N zDvNe+p;<2$_uhR?gMewj*r13Jl*UX`9)(G()ofp!;Bw%xX(!kg!rp*nj+;5EuATP4L*A=MVWNt5p+co-A*btd&><|OrBH@{KB>@X!f|CG%X zDbi&5qEN=brS0eoZ_sJedV;m&Vn}nBX2{Y`#&{)O)DYX^M>h9L@7)*;G%i2v$`~ND z&f#N4&0@YG1S4}G+brkH+xp9E>Nry`E>z=`*kcc=)A~jY6bEs@xALNIX}~AR0x*8o zqwtzLIl{HH>ovK5B2^+Ls@X*2Q9o6WVLv!t(`tPu!38U6?32Y7iZmI_GC^ZNik6@h z^vNJTm}B|M!%!K-K(@_ADSDM;0vV!k2iLVd4` zX35UoFI4gKU$X4}8FO~CeMCDsNEVnJ{D~#NR{m|=gXUs=GXJHTMtF&#KhJ5hQ5 z`GX6u_VDG|e_t;cAk#R5e(Z+TVx~jL2ChxEFsq{3-sB;QK+zWM5a^ri|L!ZCZ?FrP zm|j`+Q$0l(7K#je7hD_&u%<6sXdjBClCw1 zrv$1RIY&0cw9yvz@c@N)-C3HqcFz~E}A+*p$1{5j}$(ObCOEC3SWLiXg;*F+ghrz7P{b8w~-y5HF{h zP(rjcF3l=rifHGENYc1@3Khf`g$jEoy=ZLnsC0#>8hk<4pJs|}o~-n3ruSt3iz#Mg z==o$k&L(4Ek>5Wn9%fLrZOc5biy>9ZBjGrb@lkbO@Mw19qq6qN-|`6g~Ece4{`g=bBbgUXFTD zGnVS*|L2dg&&^SiSRn6{l(nCzzB&O6WG~_vx5;%ZVXQ>+h}dw1DMzD<=p(?RFj9%a zu0I|@MqlhnFD9drQJAQGgz*TK6!N4pF#Dk9NE@>7u$R$k4MEZ%61)ALKx%6t|Q+~CZpLwL?)Z@n95%#E} zoVDmL~l(?=LT9u5f#XkyZ(s6;g)DlwnJ@xP}3WSNPFk&ODu zI5e}#uKa9tw9Y4o+>Rd+#)AMtfw2f@DFIVFNOw5Q9zmo%a+rw75qT6;9*@J+{{;R? zCq&wLsV%-5VIhhNa!miGm~=8cT@X(K$zCAKdQm|$J(16Zwm-sggfP_^ARL1v>5g!V3u+G7mN7|*7+ z@zCq5i+21NRf>zd2PvlIq&<#hJU(C$#-oF4ZJ$k#<0!LZmkIe8^N6T)?YwA@9mmJU z^qC&TNW9>LHtg4irpYId zkM`)se3K|Ui84I{L`*yw(DFEbgpAP<#vn(*9=~+}rr)0=fuJcSOAr&?W4Z~lsN_eU z$TmYf?XXJVw1tW~)~_~6251l=Tlfrx>I*0X8&bsJV zS-U}9#6(m0$J`gKZn$7GKjiZk!v~--qD62WJrJuJ74r+cFy*?sGN1pVZPF4$wC~5* z^g1=Mv<(fL>U(Qk*wVCZH2I6TCSatif7@Y1;(KAEcmDoMRX9RCxXsxt3_*yI1`GNJZS^+o)AVS9&P0yS|@jl z`-LLv9eu`I7|)`?JI{3CnUfpc(KeMWhM#}DG2!m*+Qhl9DYiIx9{-cPe*T=BaUqO4 zKB)i`3cszO%OA_86WiP!Fl&r!9@hiqqAgS!5)(_Ji6>ZOT{*K((jq1~bo#d+JN)jV z+SrTcwzHix2X!3m*ic15<#oSBk)1MIl5dzlTl+0;r1e6>PEw?6&(j_-!68nLGg*YpVJy!gu=g#KeOZ5{N2RDY6Eb_ASxl zw5t7b?U()Us+V{77xRyH{wwbMlfK+EW%W^)5BuU`#d719tXOWEvRd(S<6X64S$kJ~ zG|PH@S*>(gr@zUqs~+~t<;_UJ=pL0s4a%W|xsHIgNHcwmtL_)o{kv-vHyj=^2E+Wr9te-vqjJ0fXyCnOpabp^1W}*)7dEJ5PcT4@*m_KZP-MjMxFv+sBvurZb zg0pkBdj6rfbY?c8nA7FVPs!wSHeHe3K6T#_RKC*#3+C^3{FVF*z&vau;5_4F*^z4P z@yl*x8dH@1!2Z={%O#6HpfC6U@M68NpH-dDp$n(XuhSRId|e5rH$d|4DS=dhK5;&b zf^GHrE58$cd0RGAQakdFNn*w39f;xfr@D?tyaD6g;KXx=6Ea!@LYVf!iS6P(sRMv! zR^MO9Kbhs`=52Mu)h5{Lwtcg?bJZ%$>-%D{3YYcTvI=w7wpz8n*{to^DlG7vt-3|M zmh(DXWS(jjF1fK)eRqklA1KPn-P7 zzGP9I=K@*ZLHosc@p_=kJ#PMwhzcux{#igqLav=i$eW#XSv=cD=*_J!8?23Ouu1Qp z^##C2fc@8zjEQk7zh9EA-)17HHTPw;dFRkd#bHK|`1Ya|rlz07U}y~^qaT@XbkS?` z8j0JuSg%;S?*v>DQVsa}B=Z?g{iktILiP-0m8#glxX&?o>n%@17BP zTFONB-fdPirTP6XUjCta&Y_-fHV!kVfk)w@MXb+zVk^(LZR9u^Z%~0PGi|xbHavS5 z4ZP&ucP-8mPM5#=Rt-2rV4-wFZdi)=wt>7iD2<81E&fISBxHP6M0}03;{$p3#5EAb zn6$F?(*y-D+D;5MXt3dH=;ZzczD%p%O_kEa`Rm)CUoUR>VY9Z&Kj_)bMlJ;uVF3xY{dh_mWb;ELX|GIi7KYr-u)s3BFdP7Y6g90tu zzQt!zW#k$`t#=J2y%F6yU~&PnqeL_r+r$C34VqSx{dB(i{Ok}m!2Eu?KWnia8BB=f zx;0+P2dsy>I?s_>t?e^+6w@Qyat<2|?wn1)QncO{Es`tRbz^l|huYn6e-;LGBj{}R zQRKXrkAjaC!n~p4Y>m?9VbT|R*5EkL*Bp|s&-?x$=dxjRpq*ka7k}!12n3_C%RP;L z>nIv5V^6lQ^d_dKD#s}FkK{Ph;N}-!_Uy{^=yoSUVRxd7i}qT~iNhGSNKWg71SkNj z5(>eZ*k_o7pd(Viwk7T^tK06U)o(AJebL2cy{JCPb$xG_@8p^rceUykTHC8tSjgI5 ztqzsm*c2(NuRer%$`by8_j>*C>AJkN%MbU)I zD%lY?ZDyElGq-C;na0u@Odf6Cl8sslDH!}7szWqLrpyk(^0}OGu9e-edHI}=Vo8K& zQBsn1Y)YcxArdEGa$48NNpNiN)j6MpyKD3D#NAQ(rU4ixf(!_0>L!0x`&ZS9>trP^XrUcE2Stlvsyf0APN`vJa8Ywn!xl&zV7&7VFDghDX``ux zTdLWn?&fpu>Wsn!L~X8z$zy|yv%SnLepd(ee|Yx#%e>mqi+1j%$_Dc=SQCP+xvf=vHnL)rp9@JgG$-xi46H9Doc;w0F%cj*Xh^Sg{H~2zy6TzM4!T8Qr=q;_$Dw` zeSNV#tL1!gZ;{P&g*9U0^Pzn=Jt3{3|5N?T-z@)Q{IUMycjqgr z`mTJrVlFp}^H1$ty>nNqZoz%AybTNeqg}4Lx!kb))Lovx=jCl!RKG7?t-^KnK6_QK zFXtWrR@C1`4ve=qUpYd0lKq=d1mb{E&BzdRv?kV6{1c2V8PZ|e2p?4PS;yH7$a!B>8*StfAMH<9s0Eb_h#6=}me`j78B)^aF{;VHWq97jEn<+|chXfRLsHcu|g<`dNIjiqp&Hp3+@Njco zz30vSy<4urf;(5O!rRSyasJ7FzuUO0)o#fj?bRp0kae+Kg@vx|^1;vNH}c}4zNp^0 zWqo%!zbRg>!lHUe;;|f|Xxm(*g?K>QFyf1d7mcA>Z(Q{scw7H*Ufu9^vvDtP zxvtmlMe6^nRr|eJ+pC-IrG8vot-^JE$`ZEARajI*dict{ybYIf!<$uDoPS)dhjJzj zg7g5HDQE*G6k;usYOX#4i$cKr`y@=Z#gL$qpBDkc!JNg$Y{(jn9*<FxHg` zCHb%a;XB2>p1`igbndcnWMJhyw3xGoc-BCk+_XM+!N-!eeb}@cauTmyV)SwfCgmu!z~L1b(wu;Ou;>@kE;!v?d4f&wJQ_4-#KC+1?agNTsQNF#$I z)$Fz!pRC-c^oNuXDwqs&t~tUR+6g zZb%wHg!-XQ&!xhV$(LAf?D9STM&6w*-pjSF?Q#`f?C$OImv*6R_wv_pvAu~`E0+54 zV)@Bm%RS3gd%=5Iehl;Ky}o()Lveo7zP|N~`C8w6@{9BLCY?CJODC;%ZBS@h-(u}Z zjdjT|=pD(};`|gBtSWBLK*i63g_dY~Y$&&lW&|0`E@1Ob5Y~$v?jC;lp?#tKOLNA- zyOM*BO@uPifX|Vl#YE0xPG%tn)R|!Ea&n5WvBa{G!R-GvTz8vURQkM&e5=%}9T>7b zK4H`YSpywD2zr0f?}(VYi#DG>pZsOF{*K$3caL6e-l+_&Uv?Y_QAxWQiHJ@P*hq&> zhM?R{X)=oQ-)mfMxMDTSyd>|$H|lXwQG+P!@-CW(6dJh0iXoa5Iz8A>29$^<6qajB zP+`qtdCNa+Zr)V?d49dQPd(lj``s#B>e^l1h6Q(SxeAx(zr9%Awr`*Mf48jL%lSL^ zU48RowUQq`hRf>4Ue)39e8o#7mriX#LD9OXnHO8MP%xS*nzo`2hP=e-pv+>QwC%#) z+TbF=VCcxt;=DCVMvqAZ#(B{F{L8b5e|`S4R(ZGH%rO>U^?lARGed%&rDaPVlA@3< z&oj+sV{@UPt9mlo@;6dwDf28^6#c~y{A68e{ z@7%>^ZI`R?eZ4ELR{m1g?&?#xWbKv@?f2%rTdsJ+4Ob80n)i0OSzpd?>{WetU47y= zYrmM^6jz`8;{3f{_vT4F1Vuz*bWpUk#YmBTp+4o~Xf!FEFdFYjZe}B>WG3PZtk5Z0 z*Tf3%h>w|y@v`u?b3V*J=<^qMtX4m)>&-?~n5MU*%-Eh8aG35~4-kmtU9=tj6fk)% z-n0eS?K!k$J(xJ#$2e1%x!!qfw1-2cV1x4@|D-aBTS4^WCo!PEC!6zR^|zk#^XJI% zvuciLw*IHZ)|6Ov9^l|-yJ7lo9F+b9hKMkG@caroO*7*svla+$r@y8K&Zq8S7tNW? zIe|k2@@{hIlGrI&h(xO*N=rtV@1wy_MfYN<6Wo~Sp(#bs=_*{`|1!59)_+jhZ?y{gxj)s20*S)qlOQ44YP|2Q_)zSzkgQz@j6&|4MAoODywOKzc zCX+f?cQ)hW->o7n5$65WHjgS3!3b~`@g<6Mxd%hk;5>O4L0d$#DmjOVC#Rj$C2!r% zm;n=U05|Haj_F62s)ZNPPez;(MCCIYvyvJ|TqNp$`q4k8R_jZd)R*fe5YqGShHfpI znDv4-!#E%g;;@10V&Xtw`i7+`@vDazL(Eh;Ssz5nqUPkC^(bCEWad;RL^*xNdqfEK zv~Jpx5;e@_&j0wZsqAX~_q%t0b+w6?5BKxxlYdjE^!Vz=Uai90{*Nqg!zDL%S$}*b z?`GfCVNu=WR}bs?*?U=T?k*QU$2Z&cqI%Dp&3XZaCys|Bik3``H(u&|L~p#KP3Av6 z#geL6Pc*SB_enp5Ay`lvFhuJ%XhyFDTjVuOhS0zI_@CuPFQ3-K6Ud>=yV3Crc6&wy ziAGz>#oE}Y3c+X^2eL(Gbio#yBylKadisefkHc6N4Mff9ouBQ@fZYevlcn4k$;^}7 z`cx-8|E%b|=7;sO=-%l?z+vM-b%$VjOg~d7n-d{ux{pLO8zMx_FeVuOJY;0@gqBTG znXgEo?Au5aC+bB{%poxvn_vgSrFVUDUPO~z(}L^OJg@JaU48lc{k!LO72ekC$>O$s zwq4uhDqQkDg^2%gQQd~c`Hd`B_phpV`HS1I;KsgKh0F7I=DJ>ARzLH$zQ0VnfgjF+ zVxO5_q=iDW*h*^%wz4CPA830Cov*ac1lHDfO}7);FRiXlW*G*alcNMFENWA-kE zFZG>+5wTo;SsN3`4+lr#=D4>%TMif z{oYld!uR8!Cs&`stLnX7-iF2e#x5T|U7x=n=d8%l8EMba9+5mp**jb^d^4! zaqSNiqzj?}_EWUHHwq@s+hov&_EZE2d*x-8+FF7gnp0oIG` z4m*nKyy#1%U{zhOFYlKB0l__!%8LnEV+ z2O)-D68?gy5kuT(&<`=5PgyMkLFzOzj^+d?OPJTho6mfn4vmbId}mSAdcPS)j26+= zAUY}aDQP~=(+wcE=uLN3t;|oWpP&ErKlADPJ0N;U$(y{30O0yAZFk?muswQ8o?jTa=tLID{XJlaWt{ryM37- zgEi;6SO>5KJMZE}y8T?9%u5t49&FJr;LC9I_k-q5u;UU;WM#{Jc-5dNre`y!e~PjL z^+IHqbbX2_263Lghrs$*uGt{b<4jui^+GhluIxo(df|E#Q6ym+%vW@@iA2o?2WzSU zOf--wanO4hw9O^!k;qZ@sq3LRu^owKCz|!5ko9RpXcFQ1PGBqMg?;s}Z>q(LpFaJ( z`01b4|Lg9)SiaZm``TT-W5Heda@Ahwy}P;%*WB3Uef_<;nO=QpFSswRR{rhzdwH|@ z@Oplu*Q@s8{Jp)dKfJC!lE|-ZQMB5L8vj-P;YRA6cg;*iMf(gDH5n8G)y4Fpg0o$^ z{K%R`X$h{;`CPYOcn*hdf|Jc`NAqlX+3SBXuBIoCkL1Uk+`Hznrz`KW1(cT17|^z$ zpiOg;&*tUHvUtFVUD2EM)ld$N&BRcrfN^ix|_c3TEXg zay*YhPj8H5olD7gGTS}He}n0JRCI8>p%Fx-HwrJ&AE~(JQ+&nx;&1=S{Ci#7s}+lS zW3N83U|lXhbZ_G?c6r;r)sJ@hu({^OE;rp}T-#+GE@wA#y}5f?-RO1QE~*bKH|xJR z|76|>cq=)YQ?$eaDB1!{>_@;BX336;g=h1?^H%Nzu z$nlT6= zPIDr8YBjLnzo`qG0jo31qV7;;q7~6m+5%$aPrTuG3;R#&A8+erwc<^^w#(XozgxSj zPunGbw68vdMgPbA#iz}(|C3#A){E+uPi zgN`B^ing5?v`hIJ#Rvzu{!}(+J;4%7LYk9xp>i5k?w2jZhNgdQsLZ_H*!4!Bw(xRt zxsK=j`SqGr|8K!6Y|fsMJAYQLk(}K3J!ZL*SQB$PC~Vt{!TQ!9&kCh0S~fP=*p$s+ z)7h2ug3A2awvQAWV-f8%JKJO~=$eiB1=g}=lR6H?ByeWtyrYiyPR538_vH-mpGyve z#JTX90q0#R-z|+{W@4gMC#%4aoXS_du=KZ(GABp{QuqLucc#moQUnlnFImdfsh)33ur3eLn0v1Erm`RJ{)(S}n61L~!`fZdcW<&U)2mOLm**>Y z^`Tu<@7(fZ{i<5oWqo&1y_X;BdXf77#n}yS>-C~~XMR|(URA%atk;WEu;M79g$jf$ zSD~0C+$~W)_o7;E){B?tg`Qt5KIljJ zRlkFElj*Lhx+YHiqtEDaCF>0l3C&r=(H1RnqC$(IE3A+O4Biz5g;N_ET$@CgDrg_e zhKFbaMOzfxGfZ@`y(2nfeDj2MyCZT&o_99j8uQt(i9lcc(sHk7VkZY@sr`$pgHeaL zkhXDoHw<*c)BrotvVoZ*CZ5O!sAM;kko7y@v+3nIXP~>7ot&ioxxkm~xX4SG^T4ZR zsx>^n;}8v*9Dlrw`m>6z?dh-+@7z8M0IT~b9T&UN=Lt)nc5B^KMsAh(etssht z8F3j={Z8L;`5Py*S!^%|J4RJIh|)*%al=_eTZLQ$XiGpoD}ECdaK%I0YF-4&+^Y=H zqk=J}B-&z*78rv@DBZLu2RHZYvMfu^`dFUDJa(YQoJA93c~-j1h2c3D3va!+YMfWH zt)V}rV|;3-d9L|rk^_C(h|Pw)swmojW86q{zNF1R0hCYq-8$r*s_NqEe|Y|SKA*E` z8sb*~<;iXk>Gf%HU`#}$GAYhWdNJQ~Q&qQjf6LF$mcQLB>d$WZ$-mW`i&v|#IQw|< z@?%)Yja{xbFVCCeWgRZfjeYaJepB7Za(j1K-SD=)Tb#Y)y8hFvi&cEPy)UX=hCq}8 zq4Ps(U|}d;UW`;UEuoRVY(yoWpyo~PGxy^&eNzsP6_4T}HA;0W1Oq*x1C};^3 zZF9CIZy`&v40(9olo9STy6Ak^mrt-P~WtMKyt#=gAum%O*j`u^?t$}a2s%lS?5VzZuC@6DUd`nvkG{+oyO;_SUW zSIN69hujosDgk2wn|$;{K@w$}AW}*%$-in_jE@?EEn1A9s|KjEIW!+%UEB+6;A8(x zZvW38et}=4F4pVyf*Og9Gd+FPHAI&IG1}G^_>_IzwuNo!U}LM=cBD3}NYbNtHY7O= za;##TyGXII(WqUJmnN2tD6W^Ms@$3Q%{2F`?K_$|xJF&ob?$Qg>0+FL^f(oluIdDI zEYb@VzJt$YgCsJxs6<4+!|#x3gPys`2fhgj(^6D5nzT);7Fu8;)?1jLz*A8(Vi)y< zBt__rBPuh@xoS#dNm(FbU*77Q_(!{3$wJrZ8Q<8e+xEKuqg}4TTi&^=kB7zija}C5 zW%b@(J*?kW@7!?zzu4ZVZeTsHR{T`oFXlg+rIMHsCt~1`T_(t=swGMPPHE^^|Bx4H z2z1W^--<73yQa+B#n$rHeRwbp>jfJO{CT#M4=+E8;Ug%WSp$4B`|Z*&&uijTOkc*V zr|=LUfY@R~fpMO)0rCm7h41L1ZM8HpCZB#ZqG;8Zu@{v}R4gH{Leyv(2J89L5nF{5 zQ{|NE-sb`vagC`CwavZ2`Z9Nn;E^06l(2{?T{~d5^KQO*CbAvq^ZJxaI7D;qY?maI zf|wqCI7bMSh^?IEf?^$GFoKzbU8f>4eY_hi{U}d%$pM!Vu;*o$vN2Ax>)F_7EQ(_QM`j_LIT{|miDpV%yB`sXE`rs_w$do z`15?f_`@!q^Da`Z0yECGAO9}_Ud6?qXY1#SFTma9S?#&xf;Ohu7;Vm56CVc1fNd={ zL@nB}En1?X4SCn)IigOyF^^!7OrN9{8Vq?B2OxWr>8TKPSYe9BdKe}Qgab=YS0o^) zWAa%;P^#K%TNol^>5UoS5Sm2;HpG%L;)E^xG~=5YdgOCco^n)wB@qiydZ1DjN&@L|b)#?V@N9M?Kh*Eup55@*w{>-PBi9?h zlp>7)1=CY#hsKsbE+bTQFB(hDdgrAd?~5V{J%plYy8zbH5aXx$rn$QRi?CT{o5YHskWB<1jVt?r%>#xuxAfB?-MB3VggYJQ57BCT z#6xrVLp+O+^|rvo!SW$CXrLGMg4+Es z28t)!cTC9)fpjpmVq;2q^9ELqUOcXiu01g#FFw^j#e28B4GVeCRsH!l=Qq=K3rL)AUI?-t9O;9*l$Ja3dRDbCdqbjPkK3D!aO_O3qT z)!GYd*))Uj-sHgqYtsc?v=kC#pkYxc*ywn%j>hDKv^h*G)&xFP^3GEvBzikw*^v{M zBOA9!o7OcGp?w;57bzam<5Q@Qz`W*wiDueFN)yd|K(V-eA!g5fQ>L`ytWV3or$gxV z@7bpjugd@SY3q82Y0dyMDX~aIzk_V1s785Kmt2_=Ki8Wp*dv58jG)DThSb zT!@*bpxk=%xBc()W{Chck*_1 zf3dvbt*kH4Z{+*UdVZ#;_v`)KV1!E+_nW|`SNMVeUcST!Bz-rN2C}>@5i%unP>BkIPj7}d7h>c9do7g6O zh?n`MaW;YImm3wOY+@Oo5`(dj8`&4banMVON0FxynZ$ql;j<()0ex?h3Ehzs`lw>| zAOuvxF!`5gu)Wn{IEvIlH0{t&1}*m~|EV2!+Ac;-j8s&LHqpY*OQ5Q@cz_C=SZQa zT!ef`NTSeu2m~$KqP5+`q*;d%a>Wiaj|3r_5jfHFze+eOfhy^pGgXJzDn3To6FHA* z!jp`mMug<2KupGi!w_|xbh9=N>W)xIKrDTR$~U-it5H-87Da-B>rJ#O$(U;iQADLM zF{Y4Ci>gFRP%2%$s_J$zzs;BR`a0g^N&lO_sCjvQBi9@MYJS7__3Bmi+r@Hox48Of zuDN+j%@6B!{^~v@y+kQg3U3BPRE~{p`~MFBUi2fwgIv1s00000NkvXXu0mjf{J-kZ diff --git a/Admin/webfront/login.html b/Admin/webfront/login.html deleted file mode 100644 index b94079b1c..000000000 --- a/Admin/webfront/login.html +++ /dev/null @@ -1,12 +0,0 @@ -
-
Register
-
-
-
- - - - - -
-
diff --git a/Admin/webfront/main.css b/Admin/webfront/main.css deleted file mode 100644 index 9eb8edd45..000000000 --- a/Admin/webfront/main.css +++ /dev/null @@ -1,237 +0,0 @@ -* { margin: 0; padding: 0; } -html { background-color: rgb(34, 34, 34); color: rgb(204, 204, 204); font-family: 'Open Sans', serif; min-width: 720px; } -body { background-color: rgb(34,34,34); color: rgb(204, 204, 204); font-family: 'Open Sans'; } - -a:link, a:visited, input[type="submit"], input[type="submit"]:hover { -webkit-transition: color 100ms ease-out; -moz-transition: color 100ms ease-out; -o-transition: color 100ms ease-out; transition: color 100ms ease-out; text-decoration: none; color: rgb(204, 204, 204); } -a:link:hover, a:visited:hover { color: rgb(0, 122, 204); } - -.error { color: rgba(255, 69, 69, 0.85); } - -div#header { border-bottom: solid #ff6633 1px; width: calc(100% - 10px); background-color: #181818; padding-left: 10px; } - -div#header #navHeader { color: #fff; font-size: 4vw; width: 25vw; } -div#header #navContainer { display: table; width: 100%; } -div#header #navContainer .navEntry { display: table-cell; text-align: center; vertical-align: middle; } -div#header #navContainer .navEntry a { padding: 1.2vw; width: 4vw; } -div#header #navContainer .navEntry:hover { background-color: rgb(34, 34, 34); } - -div#content { margin: 3em 10%; } -div#content .serverContainer { background-color: #191919; margin-top: 0; margin-bottom: 0; font-size: 1.25vw; padding-bottom: 100px; } -div#content hr { border-width: 0; height: 0.25em; background-color: #007ACC; } -div#content .serverInfo { width: 100%; } -div#content .serverInfo .tableCell { padding: 0 0.5em; } - -div#content .serverTitle { width: calc( 100% / 3); background-color: #007ACC; } -div#content .serverPlayers { text-align: right; width: calc( 100% / 3); background-color: #007ACC; } -div#content .serverMap { text-align: center; width: calc( 100% / 3); background-color: #007ACC; } -div#content .serverPlayerList {float: right; margin: 0.5em; } -div#content .serverChatList { float: left; margin: 0.5em; max-width: 60%; overflow:hidden } -div#content .playerName { font-size: 1.1vw; color: rgba(78, 140, 77, 0.64); width: 10em; text-align: right; } -div#content .playerName:hover { color: rgb(0, 122, 204) !important; } -div#content .chatPlayerName { font-weight: bold; font-size: 1.1vw; color:#fff; padding-right: 0.5em; opacity: 0.5; } -div#content .chatPlayerMessage {font-size: 1.1vw; color: #fff; opacity: 1; } - -div#content .playerPenalty, div#content .playerInfo { margin: 0 auto; padding: 1em 10px; background-color: #181818; width: calc(100% - 20px); } -div#content .penaltyName { width: 15%; } -div#content .penaltyName a:link, div#content .penaltyName a:visited, div#content .playerInfo a:link, div#content .playerInfo a:visited { color: rgb(0, 122, 204) !important; } -div#content .penaltyName a:hover, div#content .playerInfo a:hover { color: rgb(255, 255, 255) !important; opacity: 0.75; } -div#content .penaltyTime { text-align: left; width:8%; } -div#content .penaltyOrigin {width: 12%;} -div#content .penaltyRemaining { text-align: right; width: 10%; } -div#content .playerPenalty .penaltyTime { opacity: 0.5; } -div#content .penaltyType { width: 10%; } -div#content .penaltyReason { width: 45%; } -div#content .penaltyHeader, div#content .contentHeader { width: calc(100% - 20px); background-color: #007ACC; font-size: 15pt; padding: 0.5em 10px; } -div#content .alternate_1 { background-color: rgb(34, 34, 34); } - -div#content #paginationButtons { color: #007ACC; font-size: 30pt; } -div#content #nextPage, div#content #previousPage { padding-right: 0.5em; padding-top: 0.5em; } - -div#content .contentColumn { width: 16%; } - -div#content .playerSearchWrap { width: 60%; margin-bottom: 3em; } -div#content .search { background-color: #181818; border: none; color: #fff; font-size: 16pt; width: 60%; font-size: 15pt; padding: 0.5em 10px; } -div#content .searchButton { width: 20%; background-color: #007ACC; font-size: 16pt; border: none; color: #fff; font-size: 15pt; padding: 0.5em 10px; margin-right: -5px; } -div#content .searchButton:hover { color: #fff; } - -div#content .playerInfo .tableCell { width: 16%; } -div#content .hiddenElements { display: none; color: rgb(204, 204, 204); } -div#content .hiddenWrapper { color: #007ACC;} - -div#content #consoleWrap { width: 60%; margin: 0 auto; } -div#content #console { padding: 1em; height: 35vh; background-color: #181818; } -div#content #consoleWrap .search { width: calc(80% - 10px); float: left; } -div#consoleWrap .playerSearchWrap input[type="text"]:focus, select:focus { border-width: 0; outline: none; } -div#consoleWrap .playerSearchWrap { margin: 0 !important; width: 100%; } -div#consoleWrap .searchButton { width: calc(20% - 10px); } -div#consoleWrap .searchButton:hover { background-color: #007ACC !important; } - -input[type="text"], input[type="password"], textarea, select#threadCategory, select#serverSelection { margin: 0.25em; background-color: rgb(34, 34, 34); border: solid 1px rgb(55, 55, 55); color: #fff; font-size: 16pt; font-size: 15pt; padding: 0.5em 10px; } -select#serverSelection { background-color: #181818; margin: 0;} -input.search { margin: 0; } -input[type="submit"]:hover, div#submitReplyButton:hover { background-color: #ff6633 !important; } -label { text-align: right; } - -div.infoBox .header { text-align: center; background-color: #007ACC; padding: 0.5em 0; width: 100%; margin: 0 auto; } -div.infoBox form { padding: 10px; } -div.infoBox { width: 50%; margin: 0 auto; background-color: #181818; border: 1em solid #007ACC; border-width: 0 0 0.25em 0; min-width: 550px; } -div.infoBox input[type="text"], div.infoBox input[type="password"] { width: 70%; } -div.infoBox input[type="submit"], #userCP input[type="submit"] { width: 20%; background-color: #007ACC; font-size: 16pt; border: none; color: #fff; font-size: 15pt; padding: 0.5em 10px; margin: 0.25em; } - -div.alertBox { display: none; margin-top: 15px; margin-left: 15px; } - -div#consoleWrap select { width: 100%; } - -div#view { width: 100%; margin: 0 auto; } -div#threadView { width: 80%; padding-right: 3em;} -div#threadView hr { width: 100%; } -div#recentTitle { position: relative; top: -1em; } -div#view .threadPreview { background-color: #181818; padding: 0 10px; width: calc(100% - 20px); } -div#view .threadPreview .threadTitle { padding: 0 0.5em; width: 80%; } -div#view .threadPreview .threadInfo { font-size: 9pt; text-align: right; width: 50%; } -div#view .categoryDescription { font-size: 10.5pt; opacity: 0.5; margin-left: 2em; position: relative; top: -2.5px; } -div#content .individualThreadInfo { border-bottom: 1px solid rgba(255, 255, 255, 0.2); padding: 0.5em 1em; display: table; width: calc(100% - 2em); } -div#content .individualThreadInfo:nth-child(3) { border-bottom: none; padding-bottom: 0.5em; } -div#content .individualThreadInfo i { font-size: 16pt; width: 16pt; } -div.title a:link:hover, div.title a:visited:hover { color: #ff6633 !important; } - -div#categoryHeader { font-size: 2em; position: relative; top: -15px; } -hr.simple { position: absolute; left: 0; width: 100% !important; border: none; height: 1px !important; background-color: rgba(255,255,255, 0.3) !important; margin: 1em 0; } -div#categoryContainer { width: 100%; background-color: rgb(24, 24, 24); margin-top: 1em; /*border: 1px solid rgba(255,255,255, 0.2); border-top: none; border-botom:*/ } -div#categoryContainer .categoryThread { padding: 0.5em; width: calc(100% - 1em); } -div#categoryContainer .categoryThread:nth-child(even) { background-color: rgb(19, 19, 19); } -div#categoryContainer .threadTitle { font-weight: bold; text-align: left; } -div#categoryContainer .threadAuthor { font-size: 0.75em; opacity: 0.5; font-style: italic; } -div#categoryContainer .threadTime { vertical-align: middle; text-align: right; } -div#categoryContainer .threadReplyCount { vertical-align: middle; width: 1em; text-align: center; padding: 0 0.5em; } -div#categoryContainer .threadReplyBG { background-color: #007ACC; width: 2em; height: 1.4em; border-radius: 8px; } - -div#postThreadCaption, div#replyThreadCaption, div#submitReplyButton { background-color: #007ACC; padding: 0.5em 1em; opacity: 0.9; margin-top: -10px; } -div#replyThreadCaption { margin: 0; } -div#postThreadCaption:hover, div#replyThreadCaption:hover { color: #fff; opacity: 1; } - -div#postThreadContainer, div#threadContainer { width: 80%; margin: 0 auto; } -textarea#threadContent { width: calc(100% - 40px); height: 20em; font-size: 12pt; max-width: calc(100% - 40px); min-width: calc(100% - 40px);} -select#threadCategory { border: solid 1px rgb(55, 55, 55); width: 25%; } -input#threadTitle { width: calc(75% - 50px); } - -div#threadContainer .userInfo { width: 10em; padding: 1em; margin: 0 auto; text-align: center; } -div#threadContainer .threadInfo { padding: 1em; vertical-align: top; background-color: #181818; } -div#threadContainer .threadStart { border-bottom: 1px solid rgba(255,255,255,0.2); } -div.threadInfo .threadTitle { font-size: 24pt; word-break: break-all; } -div#threadContainer .userAvatar { margin: 0.5em 0; width: 10em; height: 10em; text-align: center; background-size: contain; border-radius: 10px; background-repeat: no-repeat; background-position: center center; } -div#threadContainer .threadContent { margin: 1em 0; font-size: 11pt; word-break: break-all; } -div#threadContainer .threadContent img { max-width: 100%;} -div#threadContainer .threadContent a { color: rgb(0, 122, 204) !important; } -div#threadContainer .threadContent a:hover { color: #fff !important; } -div.threadContent ol, div.threadContent ol { margin: 1em; } -div.categoryThread .threadActions { color: rgba(255, 69, 69, 0.85); font-size: 18pt; width: 19px; } - -div#postReplyContainer { position: fixed; bottom: 0; left: 0; width: 100%; height: 20em; background-color: #181818; } -div#postReplyClose { position: absolute; right: 0.25em; font-size: 24pt; } -div#postReplyClose:hover { color: #007ACC; cursor: pointer; } - -div#replyContentContainer { width: 68%; margin: 0.75em auto; } -textarea#replyContentBox { background-color: rgb(14,14,14); width: 100%; height: 10em; margin: 0.5em 0; resize: none; overflow:hidden } -div#submitReplyButton { margin: 0; width: 3em; text-align: center; cursor: pointer; } - -div#textNav { position: relative; top: -1.5em; word-break: break-all; } - -.categoryThread .fa-circle-o { width: 1em; padding-right: 0.5em; display: table-cell; vertical-align: middle; } - -div #userCover { - position: absolute; - left: 0; - padding: 0.5em 0; - width: 100%; - background: #ff6633; - font-size: 24pt; - text-align: center; - color: #fff; - margin-top: -1.5em; -} - -div#userInfoBox { background-color: #181818; padding: 1em; padding-top: 2em; width: 65%; margin: 0 auto; } -div#userInfoBox .fa { font-size: 3em; width: 65px; padding: 0.25em 0; } -div.userInfoField .tableCell { vertical-align: middle; padding-right: 1em; padding-left: 0.25em; } - -div#userAvatar { width: 20em; height: 20em; background-size: contain; margin-right: 1.5em; border-radius: 50px; background-position: center center; background-color: rgba(0,0,0,0.1); } - -.loader { - position: fixed; - left: 0px; - top: 0px; - width: 100%; - height: 100%; - z-index: 9999; - background: url('data:image/gif;base64,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'); - background-repeat: no-repeat; - background-position: center center; - background-size: 5%; - opacity: 0.5; - display: none; -} - -.table { display: table; } -.tableCell { display: table-cell; } -.alignRight { text-align: right; } - -.themeBlue { color: #007ACC !important; } -.themeBlue:hover { color: #fff !important; } -.themeOrange { color: #ff6633; } -.themeOrange:hover{ color: #007ACC !important; } - -div.threadInfo .actionHover { float: right; color: rgba(255, 69, 69, 0.85); margin: 0 4px; } -.actionHover { cursor: pointer; } -.actionHover:hover { color: #007ACC !important; } -.actionHover.actionEdit { color:#007ACC !important; } - -.datThing { background-color: #007ACC; font-size: 16pt; border: none; color: #fff; font-size: 15pt; padding: 0.5em 10px; } -span.light { opacity: 0.5; } -span.userTitle span:hover {color: #007ACC !important; } -input#bannercolor { margin: 0.35em; width: 265px; border: none; height: 45px; } -div#footer { position: fixed; bottom: 0.5em; right: 0.5em; opacity: 0.5; } - -.privilege-title { font-size: 24pt; } -.privilege-title + hr { margin-bottom: 10px; } -.privilege hr { margin-top: 10px !important; } -.admin-name a { font-size: 14pt; color: #007ACC !important; } -.admin-name a:hover { color: #fff !important; } -.clients { margin: 0.5em; } -.canvasjs-chart-credit { display: none; } -.player-history { margin-top: -100px; height: 100px; } - -.stats-minimap-image { height: 512px; width: 512px; } -.stats-minimap-container { max-width: 512px; margin: 2em 0; float: left;} -#stats { width: 100%; } -.stats-serverinfo { float: left;margin: 2em 1em; font-size: 16pt; } -#KillEventCount { margin-bottom: 1em; } - -.slider { - -webkit-appearance: none; - width: 100%; - height: 15px; - background: rgb(24,24,24); - outline: 1px rgba(255, 255, 255, 0.1) solid; - opacity: 0.7; - -webkit-transition: .2s; - transition: opacity .2s; -} - -.slider::-webkit-slider-thumb { - -webkit-appearance: none; - appearance: none; - width: 25px; - height: 25px; - border-radius: 50%; - background: #007ACC; - cursor: pointer; -} - -.slider::-moz-range-thumb { - width: 25px; - height: 25px; - border-radius: 50%; - background: #007ACC; - cursor: pointer; -} \ No newline at end of file diff --git a/Admin/webfront/main.html b/Admin/webfront/main.html deleted file mode 100644 index 26ab93834..000000000 --- a/Admin/webfront/main.html +++ /dev/null @@ -1,106 +0,0 @@ - - -
-
diff --git a/Admin/webfront/mobile.css b/Admin/webfront/mobile.css deleted file mode 100644 index 1412d27e8..000000000 --- a/Admin/webfront/mobile.css +++ /dev/null @@ -1,8 +0,0 @@ -@media screen and (max-width: 1200px) -{ - div#content { padding-left: 0; margin-left: 1em; padding-right: 0; margin-right: 1em; } - div#view { width: 100%; } - div#threadContainer { width: 90%; } - div#userInfoBox { width: 95%; } - div#userCover { width: 100%; left: 0; } -} diff --git a/Admin/webfront/notfound.html b/Admin/webfront/notfound.html deleted file mode 100644 index bee188ff4..000000000 --- a/Admin/webfront/notfound.html +++ /dev/null @@ -1,5 +0,0 @@ -
-
IW4M Admin
-

404 Page not found!

-
-
\ No newline at end of file diff --git a/Admin/webfront/penalties.html b/Admin/webfront/penalties.html deleted file mode 100644 index e7ddedc13..000000000 --- a/Admin/webfront/penalties.html +++ /dev/null @@ -1,58 +0,0 @@ - - -
-
Name
-
Type
-
Reason
-
Admin
-
Time
-
Remaining
-
-
-
-
-
- - -
diff --git a/Admin/webfront/players.html b/Admin/webfront/players.html deleted file mode 100644 index e3d671a5e..000000000 --- a/Admin/webfront/players.html +++ /dev/null @@ -1,117 +0,0 @@ - - - -
- - -
- -
-
Name
-
Level
-
Last Seen
-
-
-
-
- -
- - -
- - diff --git a/Admin/webfront/scripts/wordcloud2.js b/Admin/webfront/scripts/wordcloud2.js deleted file mode 100644 index 35fd5d6e2..000000000 --- a/Admin/webfront/scripts/wordcloud2.js +++ /dev/null @@ -1,2369 +0,0 @@ -'use strict'; - - - -// setImmediate - -if (!window.setImmediate) { - - window.setImmediate = (function setupSetImmediate() { - - return window.msSetImmediate || - - window.webkitSetImmediate || - - window.mozSetImmediate || - - window.oSetImmediate || - - (function setupSetZeroTimeout() { - - if (!window.postMessage || !window.addEventListener) { - - return null; - - } - - - - var callbacks = [undefined]; - - var message = 'zero-timeout-message'; - - - - // Like setTimeout, but only takes a function argument. There's - - // no time argument (always zero) and no arguments (you have to - - // use a closure). - - var setZeroTimeout = function setZeroTimeout(callback) { - - var id = callbacks.length; - - callbacks.push(callback); - - window.postMessage(message + id.toString(36), '*'); - - - - return id; - - }; - - - - window.addEventListener('message', function setZeroTimeoutMessage(evt) { - - // Skipping checking event source, retarded IE confused this window - - // object with another in the presence of iframe - - if (typeof evt.data !== 'string' || - - evt.data.substr(0, message.length) !== message/* || - - evt.source !== window */) { - - return; - - } - - - - evt.stopImmediatePropagation(); - - - - var id = parseInt(evt.data.substr(message.length), 36); - - if (!callbacks[id]) { - - return; - - } - - - - callbacks[id](); - - callbacks[id] = undefined; - - }, true); - - - - /* specify clearImmediate() here since we need the scope */ - - window.clearImmediate = function clearZeroTimeout(id) { - - if (!callbacks[id]) { - - return; - - } - - - - callbacks[id] = undefined; - - }; - - - - return setZeroTimeout; - - })() || - - // fallback - - function setImmediateFallback(fn) { - - window.setTimeout(fn, 0); - - }; - - })(); - -} - - - -if (!window.clearImmediate) { - - window.clearImmediate = (function setupClearImmediate() { - - return window.msClearImmediate || - - window.webkitClearImmediate || - - window.mozClearImmediate || - - window.oClearImmediate || - - // "clearZeroTimeout" is implement on the previous block || - - // fallback - - function clearImmediateFallback(timer) { - - window.clearTimeout(timer); - - }; - - })(); - -} - - - -(function(global) { - - - - // Check if WordCloud can run on this browser - - var isSupported = (function isSupported() { - - var canvas = document.createElement('canvas'); - - if (!canvas || !canvas.getContext) { - - return false; - - } - - - - var ctx = canvas.getContext('2d'); - - if (!ctx) { - - return false; - - } - - if (!ctx.getImageData) { - - return false; - - } - - if (!ctx.fillText) { - - return false; - - } - - - - if (!Array.prototype.some) { - - return false; - - } - - if (!Array.prototype.push) { - - return false; - - } - - - - return true; - - }()); - - - - // Find out if the browser impose minium font size by - - // drawing small texts on a canvas and measure it's width. - - var minFontSize = (function getMinFontSize() { - - if (!isSupported) { - - return; - - } - - - - var ctx = document.createElement('canvas').getContext('2d'); - - - - // start from 20 - - var size = 20; - - - - // two sizes to measure - - var hanWidth, mWidth; - - - - while (size) { - - ctx.font = size.toString(10) + 'px sans-serif'; - - if ((ctx.measureText('\uFF37').width === hanWidth) && - - (ctx.measureText('m').width) === mWidth) { - - return (size + 1); - - } - - - - hanWidth = ctx.measureText('\uFF37').width; - - mWidth = ctx.measureText('m').width; - - - - size--; - - } - - - - return 0; - - })(); - - - - // Based on http://jsfromhell.com/array/shuffle - - var shuffleArray = function shuffleArray(arr) { - - for (var j, x, i = arr.length; i; - - j = Math.floor(Math.random() * i), - - x = arr[--i], arr[i] = arr[j], - - arr[j] = x) {} - - return arr; - - }; - - - - var WordCloud = function WordCloud(elements, options) { - - if (!isSupported) { - - return; - - } - - - - if (!Array.isArray(elements)) { - - elements = [elements]; - - } - - - - elements.forEach(function(el, i) { - - if (typeof el === 'string') { - - elements[i] = document.getElementById(el); - - if (!elements[i]) { - - throw 'The element id specified is not found.'; - - } - - } else if (!el.tagName && !el.appendChild) { - - throw 'You must pass valid HTML elements, or ID of the element.'; - - } - - }); - - - - /* Default values to be overwritten by options object */ - - var settings = { - - list: [], - - fontFamily: '"Trebuchet MS", "Heiti TC", "?????", ' + - - '"Arial Unicode MS", "Droid Fallback Sans", sans-serif', - - fontWeight: 'normal', - - color: 'random-dark', - - minSize: 0, // 0 to disable - - weightFactor: 1, - - clearCanvas: true, - - backgroundColor: '#fff', // opaque white = rgba(255, 255, 255, 1) - - - - gridSize: 8, - - drawOutOfBound: false, - - origin: null, - - - - drawMask: false, - - maskColor: 'rgba(255,0,0,0.3)', - - maskGapWidth: 0.3, - - - - wait: 0, - - abortThreshold: 0, // disabled - - abort: function noop() {}, - - - - minRotation: - Math.PI / 2, - - maxRotation: Math.PI / 2, - - rotationSteps: 0, - - - - shuffle: true, - - rotateRatio: 0.1, - - - - shape: 'circle', - - ellipticity: 0.65, - - - - classes: null, - - - - hover: null, - - click: null - - }; - - - - if (options) { - - for (var key in options) { - - if (key in settings) { - - settings[key] = options[key]; - - } - - } - - } - - - - /* Convert weightFactor into a function */ - - if (typeof settings.weightFactor !== 'function') { - - var factor = settings.weightFactor; - - settings.weightFactor = function weightFactor(pt) { - - return pt * factor; //in px - - }; - - } - - - - /* Convert shape into a function */ - - if (typeof settings.shape !== 'function') { - - switch (settings.shape) { - - case 'circle': - - /* falls through */ - - default: - - // 'circle' is the default and a shortcut in the code loop. - - settings.shape = 'circle'; - - break; - - - - case 'cardioid': - - settings.shape = function shapeCardioid(theta) { - - return 1 - Math.sin(theta); - - }; - - break; - - - - /* - - - - To work out an X-gon, one has to calculate "m", - - where 1/(cos(2*PI/X)+m*sin(2*PI/X)) = 1/(cos(0)+m*sin(0)) - - http://www.wolframalpha.com/input/?i=1%2F%28cos%282*PI%2FX%29%2Bm*sin%28 - - 2*PI%2FX%29%29+%3D+1%2F%28cos%280%29%2Bm*sin%280%29%29 - - - - Copy the solution into polar equation r = 1/(cos(t') + m*sin(t')) - - where t' equals to mod(t, 2PI/X); - - - - */ - - - - case 'diamond': - - // http://www.wolframalpha.com/input/?i=plot+r+%3D+1%2F%28cos%28mod+ - - // %28t%2C+PI%2F2%29%29%2Bsin%28mod+%28t%2C+PI%2F2%29%29%29%2C+t+%3D - - // +0+..+2*PI - - settings.shape = function shapeSquare(theta) { - - var thetaPrime = theta % (2 * Math.PI / 4); - - return 1 / (Math.cos(thetaPrime) + Math.sin(thetaPrime)); - - }; - - break; - - - - case 'square': - - // http://www.wolframalpha.com/input/?i=plot+r+%3D+min(1%2Fabs(cos(t - - // )),1%2Fabs(sin(t)))),+t+%3D+0+..+2*PI - - settings.shape = function shapeSquare(theta) { - - return Math.min( - - 1 / Math.abs(Math.cos(theta)), - - 1 / Math.abs(Math.sin(theta)) - - ); - - }; - - break; - - - - case 'triangle-forward': - - // http://www.wolframalpha.com/input/?i=plot+r+%3D+1%2F%28cos%28mod+ - - // %28t%2C+2*PI%2F3%29%29%2Bsqrt%283%29sin%28mod+%28t%2C+2*PI%2F3%29 - - // %29%29%2C+t+%3D+0+..+2*PI - - settings.shape = function shapeTriangle(theta) { - - var thetaPrime = theta % (2 * Math.PI / 3); - - return 1 / (Math.cos(thetaPrime) + - - Math.sqrt(3) * Math.sin(thetaPrime)); - - }; - - break; - - - - case 'triangle': - - case 'triangle-upright': - - settings.shape = function shapeTriangle(theta) { - - var thetaPrime = (theta + Math.PI * 3 / 2) % (2 * Math.PI / 3); - - return 1 / (Math.cos(thetaPrime) + - - Math.sqrt(3) * Math.sin(thetaPrime)); - - }; - - break; - - - - case 'pentagon': - - settings.shape = function shapePentagon(theta) { - - var thetaPrime = (theta + 0.955) % (2 * Math.PI / 5); - - return 1 / (Math.cos(thetaPrime) + - - 0.726543 * Math.sin(thetaPrime)); - - }; - - break; - - - - case 'star': - - settings.shape = function shapeStar(theta) { - - var thetaPrime = (theta + 0.955) % (2 * Math.PI / 10); - - if ((theta + 0.955) % (2 * Math.PI / 5) - (2 * Math.PI / 10) >= 0) { - - return 1 / (Math.cos((2 * Math.PI / 10) - thetaPrime) + - - 3.07768 * Math.sin((2 * Math.PI / 10) - thetaPrime)); - - } else { - - return 1 / (Math.cos(thetaPrime) + - - 3.07768 * Math.sin(thetaPrime)); - - } - - }; - - break; - - } - - } - - - - /* Make sure gridSize is a whole number and is not smaller than 4px */ - - settings.gridSize = Math.max(Math.floor(settings.gridSize), 4); - - - - /* shorthand */ - - var g = settings.gridSize; - - var maskRectWidth = g - settings.maskGapWidth; - - - - /* normalize rotation settings */ - - var rotationRange = Math.abs(settings.maxRotation - settings.minRotation); - - var rotationSteps = Math.abs(Math.floor(settings.rotationSteps)); - - var minRotation = Math.min(settings.maxRotation, settings.minRotation); - - - - /* information/object available to all functions, set when start() */ - - var grid, // 2d array containing filling information - - ngx, ngy, // width and height of the grid - - center, // position of the center of the cloud - - maxRadius; - - - - /* timestamp for measuring each putWord() action */ - - var escapeTime; - - - - /* function for getting the color of the text */ - - var getTextColor; - - function random_hsl_color(min, max) { - - return 'hsl(' + - - (Math.random() * 360).toFixed() + ',' + - - (Math.random() * 30 + 70).toFixed() + '%,' + - - (Math.random() * (max - min) + min).toFixed() + '%)'; - - } - - switch (settings.color) { - - case 'random-dark': - - getTextColor = function getRandomDarkColor() { - - return random_hsl_color(10, 50); - - }; - - break; - - - - case 'random-light': - - getTextColor = function getRandomLightColor() { - - return random_hsl_color(50, 90); - - }; - - break; - - - - default: - - if (typeof settings.color === 'function') { - - getTextColor = settings.color; - - } - - break; - - } - - - - /* function for getting the classes of the text */ - - var getTextClasses = null; - - if (typeof settings.classes === 'function') { - - getTextClasses = settings.classes; - - } - - - - /* Interactive */ - - var interactive = false; - - var infoGrid = []; - - var hovered; - - - - var getInfoGridFromMouseTouchEvent = - - function getInfoGridFromMouseTouchEvent(evt) { - - var canvas = evt.currentTarget; - - var rect = canvas.getBoundingClientRect(); - - var clientX; - - var clientY; - - /** Detect if touches are available */ - - if (evt.touches) { - - clientX = evt.touches[0].clientX; - - clientY = evt.touches[0].clientY; - - } else { - - clientX = evt.clientX; - - clientY = evt.clientY; - - } - - var eventX = clientX - rect.left; - - var eventY = clientY - rect.top; - - - - var x = Math.floor(eventX * ((canvas.width / rect.width) || 1) / g); - - var y = Math.floor(eventY * ((canvas.height / rect.height) || 1) / g); - - - - return infoGrid[x][y]; - - }; - - - - var wordcloudhover = function wordcloudhover(evt) { - - var info = getInfoGridFromMouseTouchEvent(evt); - - - - if (hovered === info) { - - return; - - } - - - - hovered = info; - - if (!info) { - - settings.hover(undefined, undefined, evt); - - - - return; - - } - - - - settings.hover(info.item, info.dimension, evt); - - - - }; - - - - var wordcloudclick = function wordcloudclick(evt) { - - var info = getInfoGridFromMouseTouchEvent(evt); - - if (!info) { - - return; - - } - - - - settings.click(info.item, info.dimension, evt); - - evt.preventDefault(); - - }; - - - - /* Get points on the grid for a given radius away from the center */ - - var pointsAtRadius = []; - - var getPointsAtRadius = function getPointsAtRadius(radius) { - - if (pointsAtRadius[radius]) { - - return pointsAtRadius[radius]; - - } - - - - // Look for these number of points on each radius - - var T = radius * 8; - - - - // Getting all the points at this radius - - var t = T; - - var points = []; - - - - if (radius === 0) { - - points.push([center[0], center[1], 0]); - - } - - - - while (t--) { - - // distort the radius to put the cloud in shape - - var rx = 1; - - if (settings.shape !== 'circle') { - - rx = settings.shape(t / T * 2 * Math.PI); // 0 to 1 - - } - - - - // Push [x, y, t]; t is used solely for getTextColor() - - points.push([ - - center[0] + radius * rx * Math.cos(-t / T * 2 * Math.PI), - - center[1] + radius * rx * Math.sin(-t / T * 2 * Math.PI) * - - settings.ellipticity, - - t / T * 2 * Math.PI]); - - } - - - - pointsAtRadius[radius] = points; - - return points; - - }; - - - - /* Return true if we had spent too much time */ - - var exceedTime = function exceedTime() { - - return ((settings.abortThreshold > 0) && - - ((new Date()).getTime() - escapeTime > settings.abortThreshold)); - - }; - - - - /* Get the deg of rotation according to settings, and luck. */ - - var getRotateDeg = function getRotateDeg() { - - if (settings.rotateRatio === 0) { - - return 0; - - } - - - - if (Math.random() > settings.rotateRatio) { - - return 0; - - } - - - - if (rotationRange === 0) { - - return minRotation; - - } - - - - if (rotationSteps > 0) { - - // Min rotation + zero or more steps * span of one step - - return minRotation + - - Math.floor(Math.random() * rotationSteps) * - - rotationRange / (rotationSteps - 1); - - } - - else { - - return minRotation + Math.random() * rotationRange; - - } - - }; - - - - var getTextInfo = function getTextInfo(word, weight, rotateDeg) { - - // calculate the acutal font size - - // fontSize === 0 means weightFactor function wants the text skipped, - - // and size < minSize means we cannot draw the text. - - var debug = false; - - var fontSize = settings.weightFactor(weight); - - if (fontSize <= settings.minSize) { - - return false; - - } - - - - // Scale factor here is to make sure fillText is not limited by - - // the minium font size set by browser. - - // It will always be 1 or 2n. - - var mu = 1; - - if (fontSize < minFontSize) { - - mu = (function calculateScaleFactor() { - - var mu = 2; - - while (mu * fontSize < minFontSize) { - - mu += 2; - - } - - return mu; - - })(); - - } - - - - var fcanvas = document.createElement('canvas'); - - var fctx = fcanvas.getContext('2d', { willReadFrequently: true }); - - - - fctx.font = settings.fontWeight + ' ' + - - (fontSize * mu).toString(10) + 'px ' + settings.fontFamily; - - - - // Estimate the dimension of the text with measureText(). - - var fw = fctx.measureText(word).width / mu; - - var fh = Math.max(fontSize * mu, - - fctx.measureText('m').width, - - fctx.measureText('\uFF37').width) / mu; - - - - // Create a boundary box that is larger than our estimates, - - // so text don't get cut of (it sill might) - - var boxWidth = fw + fh * 2; - - var boxHeight = fh * 3; - - var fgw = Math.ceil(boxWidth / g); - - var fgh = Math.ceil(boxHeight / g); - - boxWidth = fgw * g; - - boxHeight = fgh * g; - - - - // Calculate the proper offsets to make the text centered at - - // the preferred position. - - - - // This is simply half of the width. - - var fillTextOffsetX = - fw / 2; - - // Instead of moving the box to the exact middle of the preferred - - // position, for Y-offset we move 0.4 instead, so Latin alphabets look - - // vertical centered. - - var fillTextOffsetY = - fh * 0.4; - - - - // Calculate the actual dimension of the canvas, considering the rotation. - - var cgh = Math.ceil((boxWidth * Math.abs(Math.sin(rotateDeg)) + - - boxHeight * Math.abs(Math.cos(rotateDeg))) / g); - - var cgw = Math.ceil((boxWidth * Math.abs(Math.cos(rotateDeg)) + - - boxHeight * Math.abs(Math.sin(rotateDeg))) / g); - - var width = cgw * g; - - var height = cgh * g; - - - - fcanvas.setAttribute('width', width); - - fcanvas.setAttribute('height', height); - - - - if (debug) { - - // Attach fcanvas to the DOM - - document.body.appendChild(fcanvas); - - // Save it's state so that we could restore and draw the grid correctly. - - fctx.save(); - - } - - - - // Scale the canvas with |mu|. - - fctx.scale(1 / mu, 1 / mu); - - fctx.translate(width * mu / 2, height * mu / 2); - - fctx.rotate(- rotateDeg); - - - - // Once the width/height is set, ctx info will be reset. - - // Set it again here. - - fctx.font = settings.fontWeight + ' ' + - - (fontSize * mu).toString(10) + 'px ' + settings.fontFamily; - - - - // Fill the text into the fcanvas. - - // XXX: We cannot because textBaseline = 'top' here because - - // Firefox and Chrome uses different default line-height for canvas. - - // Please read https://bugzil.la/737852#c6. - - // Here, we use textBaseline = 'middle' and draw the text at exactly - - // 0.5 * fontSize lower. - - fctx.fillStyle = '#000'; - - fctx.textBaseline = 'middle'; - - fctx.fillText(word, fillTextOffsetX * mu, - - (fillTextOffsetY + fontSize * 0.5) * mu); - - - - // Get the pixels of the text - - var imageData = fctx.getImageData(0, 0, width, height).data; - - - - if (exceedTime()) { - - return false; - - } - - - - if (debug) { - - // Draw the box of the original estimation - - fctx.strokeRect(fillTextOffsetX * mu, - - fillTextOffsetY, fw * mu, fh * mu); - - fctx.restore(); - - } - - - - // Read the pixels and save the information to the occupied array - - var occupied = []; - - var gx = cgw, gy, x, y; - - var bounds = [cgh / 2, cgw / 2, cgh / 2, cgw / 2]; - - while (gx--) { - - gy = cgh; - - while (gy--) { - - y = g; - - singleGridLoop: { - - while (y--) { - - x = g; - - while (x--) { - - if (imageData[((gy * g + y) * width + - - (gx * g + x)) * 4 + 3]) { - - occupied.push([gx, gy]); - - - - if (gx < bounds[3]) { - - bounds[3] = gx; - - } - - if (gx > bounds[1]) { - - bounds[1] = gx; - - } - - if (gy < bounds[0]) { - - bounds[0] = gy; - - } - - if (gy > bounds[2]) { - - bounds[2] = gy; - - } - - - - if (debug) { - - fctx.fillStyle = 'rgba(255, 0, 0, 0.5)'; - - fctx.fillRect(gx * g, gy * g, g - 0.5, g - 0.5); - - } - - break singleGridLoop; - - } - - } - - } - - if (debug) { - - fctx.fillStyle = 'rgba(0, 0, 255, 0.5)'; - - fctx.fillRect(gx * g, gy * g, g - 0.5, g - 0.5); - - } - - } - - } - - } - - - - if (debug) { - - fctx.fillStyle = 'rgba(0, 255, 0, 0.5)'; - - fctx.fillRect(bounds[3] * g, - - bounds[0] * g, - - (bounds[1] - bounds[3] + 1) * g, - - (bounds[2] - bounds[0] + 1) * g); - - } - - - - // Return information needed to create the text on the real canvas - - return { - - mu: mu, - - occupied: occupied, - - bounds: bounds, - - gw: cgw, - - gh: cgh, - - fillTextOffsetX: fillTextOffsetX, - - fillTextOffsetY: fillTextOffsetY, - - fillTextWidth: fw, - - fillTextHeight: fh, - - fontSize: fontSize - - }; - - }; - - - - /* Determine if there is room available in the given dimension */ - - var canFitText = function canFitText(gx, gy, gw, gh, occupied) { - - // Go through the occupied points, - - // return false if the space is not available. - - var i = occupied.length; - - while (i--) { - - var px = gx + occupied[i][0]; - - var py = gy + occupied[i][1]; - - - - if (px >= ngx || py >= ngy || px < 0 || py < 0) { - - if (!settings.drawOutOfBound) { - - return false; - - } - - continue; - - } - - - - if (!grid[px][py]) { - - return false; - - } - - } - - return true; - - }; - - - - /* Actually draw the text on the grid */ - - var drawText = function drawText(gx, gy, info, word, weight, - - distance, theta, rotateDeg, attributes) { - - - - var fontSize = info.fontSize; - - var color; - - if (getTextColor) { - - color = getTextColor(word, weight, fontSize, distance, theta); - - } else { - - color = settings.color; - - } - - - - var classes; - - if (getTextClasses) { - - classes = getTextClasses(word, weight, fontSize, distance, theta); - - } else { - - classes = settings.classes; - - } - - - - var dimension; - - var bounds = info.bounds; - - dimension = { - - x: (gx + bounds[3]) * g, - - y: (gy + bounds[0]) * g, - - w: (bounds[1] - bounds[3] + 1) * g, - - h: (bounds[2] - bounds[0] + 1) * g - - }; - - - - elements.forEach(function(el) { - - if (el.getContext) { - - var ctx = el.getContext('2d'); - - var mu = info.mu; - - - - // Save the current state before messing it - - ctx.save(); - - ctx.scale(1 / mu, 1 / mu); - - - - ctx.font = settings.fontWeight + ' ' + - - (fontSize * mu).toString(10) + 'px ' + settings.fontFamily; - - ctx.fillStyle = color; - - - - // Translate the canvas position to the origin coordinate of where - - // the text should be put. - - ctx.translate((gx + info.gw / 2) * g * mu, - - (gy + info.gh / 2) * g * mu); - - - - if (rotateDeg !== 0) { - - ctx.rotate(- rotateDeg); - - } - - - - // Finally, fill the text. - - - - // XXX: We cannot because textBaseline = 'top' here because - - // Firefox and Chrome uses different default line-height for canvas. - - // Please read https://bugzil.la/737852#c6. - - // Here, we use textBaseline = 'middle' and draw the text at exactly - - // 0.5 * fontSize lower. - - ctx.textBaseline = 'middle'; - - ctx.fillText(word, info.fillTextOffsetX * mu, - - (info.fillTextOffsetY + fontSize * 0.5) * mu); - - - - // The below box is always matches how s are positioned - - /* ctx.strokeRect(info.fillTextOffsetX, info.fillTextOffsetY, - - info.fillTextWidth, info.fillTextHeight); */ - - - - // Restore the state. - - ctx.restore(); - - } else { - - // drawText on DIV element - - var span = document.createElement('span'); - - var transformRule = ''; - - transformRule = 'rotate(' + (- rotateDeg / Math.PI * 180) + 'deg) '; - - if (info.mu !== 1) { - - transformRule += - - 'translateX(-' + (info.fillTextWidth / 4) + 'px) ' + - - 'scale(' + (1 / info.mu) + ')'; - - } - - var styleRules = { - - 'position': 'absolute', - - 'display': 'block', - - 'font': settings.fontWeight + ' ' + - - (fontSize * info.mu) + 'px ' + settings.fontFamily, - - 'left': ((gx + info.gw / 2) * g + info.fillTextOffsetX) + 'px', - - 'top': ((gy + info.gh / 2) * g + info.fillTextOffsetY) + 'px', - - 'width': info.fillTextWidth + 'px', - - 'height': info.fillTextHeight + 'px', - - 'lineHeight': fontSize + 'px', - - 'whiteSpace': 'nowrap', - - 'transform': transformRule, - - 'webkitTransform': transformRule, - - 'msTransform': transformRule, - - 'transformOrigin': '50% 40%', - - 'webkitTransformOrigin': '50% 40%', - - 'msTransformOrigin': '50% 40%' - - }; - - if (color) { - - styleRules.color = color; - - } - - span.textContent = word; - - for (var cssProp in styleRules) { - - span.style[cssProp] = styleRules[cssProp]; - - } - - if (attributes) { - - for (var attribute in attributes) { - - span.setAttribute(attribute, attributes[attribute]); - - } - - } - - if (classes) { - - span.className += classes; - - } - - el.appendChild(span); - - } - - }); - - }; - - - - /* Help function to updateGrid */ - - var fillGridAt = function fillGridAt(x, y, drawMask, dimension, item) { - - if (x >= ngx || y >= ngy || x < 0 || y < 0) { - - return; - - } - - - - grid[x][y] = false; - - - - if (drawMask) { - - var ctx = elements[0].getContext('2d'); - - ctx.fillRect(x * g, y * g, maskRectWidth, maskRectWidth); - - } - - - - if (interactive) { - - infoGrid[x][y] = { item: item, dimension: dimension }; - - } - - }; - - - - /* Update the filling information of the given space with occupied points. - - Draw the mask on the canvas if necessary. */ - - var updateGrid = function updateGrid(gx, gy, gw, gh, info, item) { - - var occupied = info.occupied; - - var drawMask = settings.drawMask; - - var ctx; - - if (drawMask) { - - ctx = elements[0].getContext('2d'); - - ctx.save(); - - ctx.fillStyle = settings.maskColor; - - } - - - - var dimension; - - if (interactive) { - - var bounds = info.bounds; - - dimension = { - - x: (gx + bounds[3]) * g, - - y: (gy + bounds[0]) * g, - - w: (bounds[1] - bounds[3] + 1) * g, - - h: (bounds[2] - bounds[0] + 1) * g - - }; - - } - - - - var i = occupied.length; - - while (i--) { - - var px = gx + occupied[i][0]; - - var py = gy + occupied[i][1]; - - - - if (px >= ngx || py >= ngy || px < 0 || py < 0) { - - continue; - - } - - - - fillGridAt(px, py, drawMask, dimension, item); - - } - - - - if (drawMask) { - - ctx.restore(); - - } - - }; - - - - /* putWord() processes each item on the list, - - calculate it's size and determine it's position, and actually - - put it on the canvas. */ - - var putWord = function putWord(item) { - - var word, weight, attributes; - - if (Array.isArray(item)) { - - word = item[0]; - - weight = item[1]; - - } else { - - word = item.word; - - weight = item.weight; - - attributes = item.attributes; - - } - - var rotateDeg = getRotateDeg(); - - - - // get info needed to put the text onto the canvas - - var info = getTextInfo(word, weight, rotateDeg); - - - - // not getting the info means we shouldn't be drawing this one. - - if (!info) { - - return false; - - } - - - - if (exceedTime()) { - - return false; - - } - - - - // If drawOutOfBound is set to false, - - // skip the loop if we have already know the bounding box of - - // word is larger than the canvas. - - if (!settings.drawOutOfBound) { - - var bounds = info.bounds; - - if ((bounds[1] - bounds[3] + 1) > ngx || - - (bounds[2] - bounds[0] + 1) > ngy) { - - return false; - - } - - } - - - - // Determine the position to put the text by - - // start looking for the nearest points - - var r = maxRadius + 1; - - - - var tryToPutWordAtPoint = function(gxy) { - - var gx = Math.floor(gxy[0] - info.gw / 2); - - var gy = Math.floor(gxy[1] - info.gh / 2); - - var gw = info.gw; - - var gh = info.gh; - - - - // If we cannot fit the text at this position, return false - - // and go to the next position. - - if (!canFitText(gx, gy, gw, gh, info.occupied)) { - - return false; - - } - - - - // Actually put the text on the canvas - - drawText(gx, gy, info, word, weight, - - (maxRadius - r), gxy[2], rotateDeg, attributes); - - - - // Mark the spaces on the grid as filled - - updateGrid(gx, gy, gw, gh, info, item); - - - - // Return true so some() will stop and also return true. - - return true; - - }; - - - - while (r--) { - - var points = getPointsAtRadius(maxRadius - r); - - - - if (settings.shuffle) { - - points = [].concat(points); - - shuffleArray(points); - - } - - - - // Try to fit the words by looking at each point. - - // array.some() will stop and return true - - // when putWordAtPoint() returns true. - - // If all the points returns false, array.some() returns false. - - var drawn = points.some(tryToPutWordAtPoint); - - - - if (drawn) { - - // leave putWord() and return true - - return true; - - } - - } - - // we tried all distances but text won't fit, return false - - return false; - - }; - - - - /* Send DOM event to all elements. Will stop sending event and return - - if the previous one is canceled (for cancelable events). */ - - var sendEvent = function sendEvent(type, cancelable, detail) { - - if (cancelable) { - - return !elements.some(function(el) { - - var evt = document.createEvent('CustomEvent'); - - evt.initCustomEvent(type, true, cancelable, detail || {}); - - return !el.dispatchEvent(evt); - - }, this); - - } else { - - elements.forEach(function(el) { - - var evt = document.createEvent('CustomEvent'); - - evt.initCustomEvent(type, true, cancelable, detail || {}); - - el.dispatchEvent(evt); - - }, this); - - } - - }; - - - - /* Start drawing on a canvas */ - - var start = function start() { - - // For dimensions, clearCanvas etc., - - // we only care about the first element. - - var canvas = elements[0]; - - - - if (canvas.getContext) { - - ngx = Math.ceil(canvas.width / g); - - ngy = Math.ceil(canvas.height / g); - - } else { - - var rect = canvas.getBoundingClientRect(); - - ngx = Math.ceil(rect.width / g); - - ngy = Math.ceil(rect.height / g); - - } - - - - // Sending a wordcloudstart event which cause the previous loop to stop. - - // Do nothing if the event is canceled. - - if (!sendEvent('wordcloudstart', true)) { - - return; - - } - - - - // Determine the center of the word cloud - - center = (settings.origin) ? - - [settings.origin[0]/g, settings.origin[1]/g] : - - [ngx / 2, ngy / 2]; - - - - // Maxium radius to look for space - - maxRadius = Math.floor(Math.sqrt(ngx * ngx + ngy * ngy)); - - - - /* Clear the canvas only if the clearCanvas is set, - - if not, update the grid to the current canvas state */ - - grid = []; - - - - var gx, gy, i; - - if (!canvas.getContext || settings.clearCanvas) { - - elements.forEach(function(el) { - - if (el.getContext) { - - var ctx = el.getContext('2d'); - - ctx.fillStyle = settings.backgroundColor; - - ctx.clearRect(0, 0, ngx * (g + 1), ngy * (g + 1)); - - ctx.fillRect(0, 0, ngx * (g + 1), ngy * (g + 1)); - - } else { - - el.textContent = ''; - - el.style.backgroundColor = settings.backgroundColor; - - el.style.position = 'relative'; - - } - - }); - - - - /* fill the grid with empty state */ - - gx = ngx; - - while (gx--) { - - grid[gx] = []; - - gy = ngy; - - while (gy--) { - - grid[gx][gy] = true; - - } - - } - - } else { - - /* Determine bgPixel by creating - - another canvas and fill the specified background color. */ - - var bctx = document.createElement('canvas').getContext('2d'); - - - - bctx.fillStyle = settings.backgroundColor; - - bctx.fillRect(0, 0, 1, 1); - - var bgPixel = bctx.getImageData(0, 0, 1, 1).data; - - - - /* Read back the pixels of the canvas we got to tell which part of the - - canvas is empty. - - (no clearCanvas only works with a canvas, not divs) */ - - var imageData = - - canvas.getContext('2d').getImageData(0, 0, ngx * g, ngy * g).data; - - - - gx = ngx; - - var x, y; - - while (gx--) { - - grid[gx] = []; - - gy = ngy; - - while (gy--) { - - y = g; - - singleGridLoop: while (y--) { - - x = g; - - while (x--) { - - i = 4; - - while (i--) { - - if (imageData[((gy * g + y) * ngx * g + - - (gx * g + x)) * 4 + i] !== bgPixel[i]) { - - grid[gx][gy] = false; - - break singleGridLoop; - - } - - } - - } - - } - - if (grid[gx][gy] !== false) { - - grid[gx][gy] = true; - - } - - } - - } - - - - imageData = bctx = bgPixel = undefined; - - } - - - - // fill the infoGrid with empty state if we need it - - if (settings.hover || settings.click) { - - - - interactive = true; - - - - /* fill the grid with empty state */ - - gx = ngx + 1; - - while (gx--) { - - infoGrid[gx] = []; - - } - - - - if (settings.hover) { - - canvas.addEventListener('mousemove', wordcloudhover); - - } - - - - var touchend = function (e) { - - e.preventDefault(); - - }; - - - - if (settings.click) { - - canvas.addEventListener('click', wordcloudclick); - - canvas.addEventListener('touchstart', wordcloudclick); - - canvas.addEventListener('touchend', touchend); - - canvas.style.webkitTapHighlightColor = 'rgba(0, 0, 0, 0)'; - - } - - - - canvas.addEventListener('wordcloudstart', function stopInteraction() { - - canvas.removeEventListener('wordcloudstart', stopInteraction); - - - - canvas.removeEventListener('mousemove', wordcloudhover); - - canvas.removeEventListener('click', wordcloudclick); - - canvas.removeEventListener('touchstart', wordcloudclick); - - canvas.removeEventListener('touchend', touchend); - - hovered = undefined; - - }); - - } - - - - i = 0; - - var loopingFunction, stoppingFunction; - - if (settings.wait !== 0) { - - loopingFunction = window.setTimeout; - - stoppingFunction = window.clearTimeout; - - } else { - - loopingFunction = window.setImmediate; - - stoppingFunction = window.clearImmediate; - - } - - - - var addEventListener = function addEventListener(type, listener) { - - elements.forEach(function(el) { - - el.addEventListener(type, listener); - - }, this); - - }; - - - - var removeEventListener = function removeEventListener(type, listener) { - - elements.forEach(function(el) { - - el.removeEventListener(type, listener); - - }, this); - - }; - - - - var anotherWordCloudStart = function anotherWordCloudStart() { - - removeEventListener('wordcloudstart', anotherWordCloudStart); - - stoppingFunction(timer); - - }; - - - - addEventListener('wordcloudstart', anotherWordCloudStart); - - - - var timer = loopingFunction(function loop() { - - if (i >= settings.list.length) { - - stoppingFunction(timer); - - sendEvent('wordcloudstop', false); - - removeEventListener('wordcloudstart', anotherWordCloudStart); - - - - return; - - } - - escapeTime = (new Date()).getTime(); - - var drawn = putWord(settings.list[i]); - - var canceled = !sendEvent('wordclouddrawn', true, { - - item: settings.list[i], drawn: drawn }); - - if (exceedTime() || canceled) { - - stoppingFunction(timer); - - settings.abort(); - - sendEvent('wordcloudabort', false); - - sendEvent('wordcloudstop', false); - - removeEventListener('wordcloudstart', anotherWordCloudStart); - - return; - - } - - i++; - - timer = loopingFunction(loop, settings.wait); - - }, settings.wait); - - }; - - - - // All set, start the drawing - - start(); - - }; - - - - WordCloud.isSupported = isSupported; - - WordCloud.minFontSize = minFontSize; - - - - // Expose the library as an AMD module - - if (typeof define === 'function' && define.amd) { - - global.WordCloud = WordCloud; - - define('wordcloud', [], function() { return WordCloud; }); - - } else if (typeof module !== 'undefined' && module.exports) { - - module.exports = WordCloud; - - } else { - - global.WordCloud = WordCloud; - - } - - - -})(this); //jshint ignore:line \ No newline at end of file diff --git a/Admin/webfront/stats.html b/Admin/webfront/stats.html deleted file mode 100644 index 4a371cd23..000000000 --- a/Admin/webfront/stats.html +++ /dev/null @@ -1,146 +0,0 @@ -
-
- - -
-
- - diff --git a/IW4MAdmin.sln b/IW4MAdmin.sln index 28fe4406c..7d8ee6125 100644 --- a/IW4MAdmin.sln +++ b/IW4MAdmin.sln @@ -1,18 +1,8 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 -VisualStudioVersion = 15.0.27130.2027 +VisualStudioVersion = 15.0.27130.2036 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Application", "Admin\Application.csproj", "{DD5DCDA2-51DB-4B1A-922F-5705546E6115}" - ProjectSection(ProjectDependencies) = postProject - {B8C2A759-8663-4F6F-9BA4-19595F5E12C1} = {B8C2A759-8663-4F6F-9BA4-19595F5E12C1} - {AF097E6B-48D5-4452-9CCF-0A81A21F341D} = {AF097E6B-48D5-4452-9CCF-0A81A21F341D} - {4785AB75-66F3-4391-985D-63A5A049A0FA} = {4785AB75-66F3-4391-985D-63A5A049A0FA} - {428D8EB9-ECA3-4A66-AA59-3A944378C33F} = {428D8EB9-ECA3-4A66-AA59-3A944378C33F} - {C9E821BF-23AD-4CB5-B7F9-B3B99B606650} = {C9E821BF-23AD-4CB5-B7F9-B3B99B606650} - {D51EECEB-438A-47DA-870F-7D7B41BC24D6} = {D51EECEB-438A-47DA-870F-7D7B41BC24D6} - EndProjectSection -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StatsPlugin", "Plugins\SimpleStats\StatsPlugin.csproj", "{4785AB75-66F3-4391-985D-63A5A049A0FA}" ProjectSection(ProjectDependencies) = postProject {D51EECEB-438A-47DA-870F-7D7B41BC24D6} = {D51EECEB-438A-47DA-870F-7D7B41BC24D6} @@ -46,6 +36,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Plugins\Tests\Test EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebfrontCore", "WebfrontCore\WebfrontCore.csproj", "{65340D7D-5831-406C-ACAD-B13BA634BDE2}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Config", "Config", "{4101CDED-AF1E-4FCF-9194-BEA2E634016E}" + ProjectSection(SolutionItems) = preProject + Admin\Config\maps.cfg = Admin\Config\maps.cfg + Admin\Config\messages.cfg = Admin\Config\messages.cfg + Admin\Config\rules.cfg = Admin\Config\rules.cfg + Admin\Config\web.cfg = Admin\Config\web.cfg + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -66,38 +64,6 @@ Global Release-Stable|x86 = Release-Stable|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|Mixed Platforms.Build.0 = Debug|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|x64.ActiveCfg = Debug|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|x64.Build.0 = Debug|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|x86.ActiveCfg = Debug|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Debug|x86.Build.0 = Debug|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|Any CPU.ActiveCfg = Debug|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|Any CPU.Build.0 = Debug|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|Mixed Platforms.ActiveCfg = Release-Stable|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|Mixed Platforms.Build.0 = Release-Stable|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|x64.ActiveCfg = Release-Nightly|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|x64.Build.0 = Release-Nightly|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|x86.ActiveCfg = Release|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release|x86.Build.0 = Release|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|Any CPU.ActiveCfg = Release-Nightly|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|Any CPU.Build.0 = Release-Nightly|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|Mixed Platforms.ActiveCfg = Release-Nightly|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|Mixed Platforms.Build.0 = Release-Nightly|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|x64.ActiveCfg = Release-Nightly|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|x64.Build.0 = Release-Nightly|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|x86.ActiveCfg = Release-Nightly|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Nightly|x86.Build.0 = Release-Nightly|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|Any CPU.ActiveCfg = Release-Stable|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|Any CPU.Build.0 = Release-Stable|Any CPU - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|Mixed Platforms.ActiveCfg = Release-Stable|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|Mixed Platforms.Build.0 = Release-Stable|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|x64.ActiveCfg = Release-Stable|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|x64.Build.0 = Release-Stable|x64 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|x86.ActiveCfg = Release-Stable|x86 - {DD5DCDA2-51DB-4B1A-922F-5705546E6115}.Release-Stable|x86.Build.0 = Release-Stable|x86 {4785AB75-66F3-4391-985D-63A5A049A0FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4785AB75-66F3-4391-985D-63A5A049A0FA}.Debug|Any CPU.Build.0 = Debug|Any CPU {4785AB75-66F3-4391-985D-63A5A049A0FA}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 @@ -384,6 +350,7 @@ Global {C9E821BF-23AD-4CB5-B7F9-B3B99B606650} = {26E8B310-269E-46D4-A612-24601F16065F} {1479DE87-ACB5-4046-81C8-A0BA5041227D} = {26E8B310-269E-46D4-A612-24601F16065F} {B8C2A759-8663-4F6F-9BA4-19595F5E12C1} = {26E8B310-269E-46D4-A612-24601F16065F} + {4101CDED-AF1E-4FCF-9194-BEA2E634016E} = {8C8F3945-0AEF-4949-A1F7-B18E952E50BC} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {84F8F8E0-1F73-41E0-BD8D-BB6676E2EE87} diff --git a/Plugins/EventAPI/EventAPI.csproj b/Plugins/EventAPI/EventAPI.csproj index ccd88208e..08dfe5194 100644 --- a/Plugins/EventAPI/EventAPI.csproj +++ b/Plugins/EventAPI/EventAPI.csproj @@ -72,14 +72,8 @@ - - ..\..\packages\Newtonsoft.Json.10.0.2\lib\net45\Newtonsoft.Json.dll - - - - copy /Y "$(TargetDir)$(TargetName).dll" "$(SolutionDir)BUILD\plugins\" diff --git a/Plugins/EventAPI/packages.config b/Plugins/EventAPI/packages.config deleted file mode 100644 index a272c64df..000000000 --- a/Plugins/EventAPI/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Plugins/Welcome/CountryLookup.cs b/Plugins/Welcome/CountryLookup.cs index 1db60c2a0..6fb653324 100644 --- a/Plugins/Welcome/CountryLookup.cs +++ b/Plugins/Welcome/CountryLookup.cs @@ -59,7 +59,7 @@ namespace CountryLookupProj fileInput = new FileStream(fileName, FileMode.Open, FileAccess.Read); } - public string lookupCountryCode(string str) + public string LookupCountryCode(string str) { IPAddress addr; try @@ -70,10 +70,10 @@ namespace CountryLookupProj { return "--"; } - return lookupCountryCode(addr); + return LookupCountryCode(addr); } - private long addrToNum(IPAddress addr) + private long AddrToNum(IPAddress addr) { long ipnum = 0; byte[] b = BitConverter.GetBytes(addr.Address); @@ -89,12 +89,12 @@ namespace CountryLookupProj return ipnum; } - public string lookupCountryCode(IPAddress addr) + public string LookupCountryCode(IPAddress addr) { - return (countryCode[(int)SeekCountry(0, addrToNum(addr), 31)]); + return (countryCode[(int)SeekCountry(0, AddrToNum(addr), 31)]); } - public string lookupCountryName(string str) + public string LookupCountryName(string str) { IPAddress addr; try @@ -105,12 +105,12 @@ namespace CountryLookupProj { return "a third world country"; } - return lookupCountryName(addr); + return LookupCountryName(addr); } - public string lookupCountryName(IPAddress addr) + public string LookupCountryName(IPAddress addr) { - return (countryName[(int)SeekCountry(0, addrToNum(addr), 31)]); + return (countryName[(int)SeekCountry(0, AddrToNum(addr), 31)]); } private long SeekCountry(long offset, long ipnum, int depth) diff --git a/Plugins/Welcome/Plugin.cs b/Plugins/Welcome/Plugin.cs index 31c76b3f1..4b4aca94f 100644 --- a/Plugins/Welcome/Plugin.cs +++ b/Plugins/Welcome/Plugin.cs @@ -127,7 +127,7 @@ namespace Welcome_Plugin try { CountryLookupProj.CountryLookup CLT = new CountryLookupProj.CountryLookup("Plugins/GeoIP.dat"); - msg = msg.Replace("{{ClientLocation}}", CLT.lookupCountryName(joining.IPAddressString)); + msg = msg.Replace("{{ClientLocation}}", CLT.LookupCountryName(joining.IPAddressString)); } catch (Exception) diff --git a/SharedLibrary/Database/Importer.cs b/SharedLibrary/Database/Importer.cs index 2db50f8ca..bcc297850 100644 --- a/SharedLibrary/Database/Importer.cs +++ b/SharedLibrary/Database/Importer.cs @@ -74,9 +74,9 @@ namespace SharedLibrary.Database context.SaveChanges(); } - catch (Exception e) + catch (Exception) { - var a = 1; + } if (recreateContext) @@ -152,9 +152,9 @@ namespace SharedLibrary.Database context.SaveChanges(); } - catch (Exception e) + catch (Exception) { - var a = 1; + } if (recreateContext) @@ -208,9 +208,9 @@ namespace SharedLibrary.Database context.SaveChanges(); } - catch (Exception e) + catch (Exception) { - var a = 1; + } if (recreateContext) diff --git a/SharedLibrary/SharedLibrary.csproj b/SharedLibrary/SharedLibrary.csproj index a91f36fe7..30ff4685e 100644 --- a/SharedLibrary/SharedLibrary.csproj +++ b/SharedLibrary/SharedLibrary.csproj @@ -206,16 +206,13 @@ - move "$(TargetDir)Newtonsoft.Json.dll" "$(TargetDir)lib\Newtonsoft.Json.dll" -move "$(TargetDir)Newtonsoft.Json.dll" "$(SolutionDir)BUILD\Lib\Newtonsoft.Json.dll" -copy /Y "$(TargetDir)$(TargetName).dll" "$(SolutionDir)BUILD\lib" + copy /Y "$(TargetDir)$(TargetName).dll" "$(SolutionDir)BUILD\lib" copy /Y "$(TargetDir)$(TargetName).dll" "$(SolutionDir)Admin\lib" -copy /Y "$(TargetDir)Newtonsoft.Json.dll" "$(SolutionDir)BUILD\lib" -copy /Y "$(TargetDir)Newtonsoft.Json.dll" "$(SolutionDir)Admin\lib" - if not exist "$(TargetDir)x86" md "$(TargetDir)x86" - xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\NativeBinaries\x86\*.*" "$(TargetDir)x86" - if not exist "$(TargetDir)amd64" md "$(TargetDir)amd64" - xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\NativeBinaries\amd64\*.*" "$(TargetDir)amd64" + +if not exist "$(TargetDir)x86" md "$(TargetDir)x86" + xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\NativeBinaries\x86\*.*" "$(TargetDir)x86" +if not exist "$(TargetDir)amd64" md "$(TargetDir)amd64" + xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\NativeBinaries\amd64\*.*" "$(TargetDir)amd64" xcopy /Y /I /E "$(TargetDir)*" "$(SolutionDir)BUILD\Lib" diff --git a/Admin/Kayak.cs b/WebfrontCore/Application/Kayak.cs similarity index 100% rename from Admin/Kayak.cs rename to WebfrontCore/Application/Kayak.cs diff --git a/Admin/Logger.cs b/WebfrontCore/Application/Logger.cs similarity index 100% rename from Admin/Logger.cs rename to WebfrontCore/Application/Logger.cs diff --git a/Admin/Main.cs b/WebfrontCore/Application/Main.cs similarity index 77% rename from Admin/Main.cs rename to WebfrontCore/Application/Main.cs index b96504ce9..3f20d3740 100644 --- a/Admin/Main.cs +++ b/WebfrontCore/Application/Main.cs @@ -22,14 +22,12 @@ namespace IW4MAdmin static public ApplicationManager ServerManager = ApplicationManager.GetInstance(); public static string OperatingDirectory = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + Path.DirectorySeparatorChar; - public static void Main(string[] args) + public static void Start() { AppDomain.CurrentDomain.SetData("DataDirectory", OperatingDirectory); System.Diagnostics.Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.BelowNormal; Version = 1.6; - handler = new ConsoleEventDelegate(OnProcessExit); - SetConsoleCtrlHandler(handler, true); //double.TryParse(CheckUpdate(), out double latestVersion); Console.WriteLine("====================================================="); @@ -49,7 +47,6 @@ namespace IW4MAdmin Task.Run(() => { ServerManager.Start(); - /* String userInput; Player Origin = ServerManager.GetClientService().Get(1).Result.AsPlayer(); @@ -68,7 +65,7 @@ namespace IW4MAdmin ServerManager.Servers[0].ExecuteEvent(E); Console.Write('>'); - } while (ServerManager.Running);*/ + } while (ServerManager.Running); }); } @@ -80,43 +77,11 @@ namespace IW4MAdmin Console.ReadKey(); return; } - - try - { - - } - - catch (Exception e) - { - throw e; - } } - static ConsoleEventDelegate handler; - - static private bool OnProcessExit(int e) - { - try - { - ServerManager.Stop(); - return true; - } - - catch - { - return true; - } - } - - private delegate bool ConsoleEventDelegate(int eventType); - [DllImport("kernel32.dll", SetLastError = true)] - private static extern bool SetConsoleCtrlHandler(ConsoleEventDelegate callback, bool add); - static void CheckDirectories() { string curDirectory = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + Path.DirectorySeparatorChar; - if (!Directory.Exists($"{curDirectory}Lib")) - throw new Exception("Lib folder does not exist"); if (!Directory.Exists($"{curDirectory}Config")) { diff --git a/Admin/Manager.cs b/WebfrontCore/Application/Manager.cs similarity index 98% rename from Admin/Manager.cs rename to WebfrontCore/Application/Manager.cs index be6dcbdd9..1c38592e8 100644 --- a/Admin/Manager.cs +++ b/WebfrontCore/Application/Manager.cs @@ -28,8 +28,6 @@ namespace IW4MAdmin List TaskStatuses; List Commands; List MessageTokens; - //WebService WebSvc; - Thread WebThread; ClientService ClientSvc; AliasService AliasSvc; PenaltyService PenaltySvc; @@ -221,7 +219,7 @@ namespace IW4MAdmin } #if !DEBUG foreach (var S in Servers) - S.Broadcast("^1IW4MAdmin going offline!"); + S.Broadcast("^1IW4MAdmin going offline!").Wait(); #endif _servers.Clear(); //WebSvc.WebScheduler.Stop(); diff --git a/Admin/Server.cs b/WebfrontCore/Application/Server.cs similarity index 100% rename from Admin/Server.cs rename to WebfrontCore/Application/Server.cs diff --git a/Admin/ServerConfigurationGenerator.cs b/WebfrontCore/Application/ServerConfigurationGenerator.cs similarity index 100% rename from Admin/ServerConfigurationGenerator.cs rename to WebfrontCore/Application/ServerConfigurationGenerator.cs diff --git a/WebfrontCore/Startup.cs b/WebfrontCore/Startup.cs index 106db5c79..19d9c0468 100644 --- a/WebfrontCore/Startup.cs +++ b/WebfrontCore/Startup.cs @@ -21,7 +21,7 @@ namespace WebfrontCore .AddEnvironmentVariables(); Configuration = builder.Build(); - IW4MAdmin.Program.Main(null); + IW4MAdmin.Program.Start(); } public IConfigurationRoot Configuration { get; } diff --git a/WebfrontCore/WebfrontCore.csproj b/WebfrontCore/WebfrontCore.csproj index 32839abc0..af95ca8d8 100644 --- a/WebfrontCore/WebfrontCore.csproj +++ b/WebfrontCore/WebfrontCore.csproj @@ -3,18 +3,24 @@ net452 true - WebfrontCore + IW4MAdmin Exe WebfrontCore AnyCPU;x86 + wwwroot\favicon.ico x86 + + + + + PreserveNewest @@ -49,9 +55,6 @@ - - true - true @@ -63,8 +66,8 @@ - - + +