public PageAdminRecord(PageAdminRecord r)
 {
     this.time = r.time;
     this.player = r.player;
     this.message = r.message;
 }
        private void recordToLog(string speaker, string message)
        {
            if (requestsFilePath == "" || requestsFileName == "")
            {
                ConsoleDebug("Missed !pageadmin request: " + speaker + " - " + message);
                return;
            }

            PageAdminRecord record = new PageAdminRecord(DateTime.Now, speaker, message);
            pageAdminQueue.Enqueue(record);

            string fileOutput = configure(requestsFilePath) + configure(requestsFileName);
            try
            {
                using (StreamWriter writer = new StreamWriter(fileOutput, true))
                {
                    string output = speaker + ": '" + message + "'";

                    if (serverInfo == null)
                    {
                        output += "; No Server Info";
                    }
                    else
                    {
                        string map = serverInfo.Map;
                        string gameMode = serverInfo.GameMode;
                        int playerCount = serverInfo.PlayerCount;
                        int maxPlayerCount = serverInfo.MaxPlayerCount;

                        output += "; Round: " + gameMode + " on " + map + " (" + playerCount + "/" + maxPlayerCount + ")";
                    }

                    ConsoleDebug("Requests Log Output (" + fileOutput + "): " + output);
                    writer.WriteLine(output);
                }
            }
            catch (Exception e)
            {
                ConsoleError(e.Message + "\n" + e.StackTrace);
            }
        }