Beispiel #1
0
 /// <summary>
 /// Creates a body tag
 /// </summary>
 public static string Body(string bodyContents, string title = "")
 {
     return(@"<body><div align=""center""><h1>" + title + "</h1>" + bodyContents + "<h1>" + HTMLGenerator.GenerateLink("http://localhost:11100/scores", "High Scores") + "</h1></div></body>");
 }
Beispiel #2
0
        /// <summary>
        /// Queries the database and returns a large string of html for the webpage, based on the query
        /// </summary>
        private string StatsHTML(MySqlCommand query, int queryNum = 0, string title = "")
        {
            string html = "";

            using (MySqlConnection conn = new MySqlConnection(connectionString))
            {
                try
                {
                    // Open a connection
                    conn.Open();
                    query.Connection = conn;
                    string body;

                    // Execute the command and cycle through the DataReader object
                    using (MySqlDataReader reader = query.ExecuteReader())
                    {
                        string        table;
                        StringBuilder rows = new StringBuilder();

                        if (queryNum == 1) // High Scores web page
                        {
                            rows.Append(HTMLGenerator.TableRow(HTMLGenerator.TableHData("Game Id") +
                                                               HTMLGenerator.TableHData("Name") +
                                                               HTMLGenerator.TableHData("Lifetime") +
                                                               HTMLGenerator.TableHData("Max Mass") +
                                                               HTMLGenerator.TableHData("Highest Rank") +
                                                               HTMLGenerator.TableHData("Number of Cubes Eaten")));

                            while (reader.Read())
                            {
                                string id          = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/eaten?id=" + reader["GameId"].ToString(), reader["GameId"].ToString()));
                                string name        = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/games?player=" + reader["Name"].ToString(), reader["Name"].ToString()));
                                string lifetime    = HTMLGenerator.TableData(reader["Lifetime"].ToString());
                                string maxmass     = HTMLGenerator.TableData(reader["MaxMass"].ToString());
                                string highestRank = HTMLGenerator.TableData(reader["HighestRank"].ToString());
                                string cubesEaten  = HTMLGenerator.TableData(reader["CubesEaten"].ToString());

                                rows.Append(HTMLGenerator.TableRow(id + name + lifetime + maxmass + highestRank + cubesEaten));
                            }
                        }
                        else if (queryNum == 2) // Game Id Stats web page
                        {
                            rows.Append(HTMLGenerator.TableRow(HTMLGenerator.TableHData("GameId") +
                                                               HTMLGenerator.TableHData("Name") +
                                                               HTMLGenerator.TableHData("Lifetime") +
                                                               HTMLGenerator.TableHData("Max Mass") +
                                                               HTMLGenerator.TableHData("Highest Rank") +
                                                               HTMLGenerator.TableHData("Number of Cubes Eaten") +
                                                               HTMLGenerator.TableHData("Time Of Death") +
                                                               HTMLGenerator.TableHData("Number of Players Eaten")));

                            while (reader.Read())
                            {
                                string id            = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/eaten?id=" + reader["GameId"].ToString(), reader["GameId"].ToString()));
                                string name          = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/games?player=" + reader["Name"].ToString(), reader["Name"].ToString()));
                                string lifetime      = HTMLGenerator.TableData(reader["Lifetime"].ToString());
                                string maxmass       = HTMLGenerator.TableData(reader["MaxMass"].ToString());
                                string highestRank   = HTMLGenerator.TableData(reader["HighestRank"].ToString());
                                string cubesEaten    = HTMLGenerator.TableData(reader["CubesEaten"].ToString());
                                string timeofdeath   = HTMLGenerator.TableData(reader["TimeofDeath"].ToString());
                                string numplayerseat = HTMLGenerator.TableData(reader["NumPlayersEaten"].ToString());

                                rows.Append(HTMLGenerator.TableRow(id + name + lifetime + maxmass + highestRank + cubesEaten + timeofdeath + numplayerseat));
                            }
                        }
                        else if (queryNum == 3) // Player Name Stats web page
                        {
                            rows.Append(HTMLGenerator.TableRow(HTMLGenerator.TableHData("GameId") +
                                                               HTMLGenerator.TableHData("Name") +
                                                               HTMLGenerator.TableHData("Lifetime") +
                                                               HTMLGenerator.TableHData("Max Mass") +
                                                               HTMLGenerator.TableHData("Highest Rank") +
                                                               HTMLGenerator.TableHData("Number of Cubes Eaten") +
                                                               HTMLGenerator.TableHData("Time Of Death") +
                                                               HTMLGenerator.TableHData("Number of Players Eaten") +
                                                               HTMLGenerator.TableHData("Eaten Player Names")));

                            int           add    = 0;
                            StringBuilder eaten  = new StringBuilder();
                            string        others = "";

                            while (reader.Read())
                            {
                                string id            = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/eaten?id=" + reader["GameId"].ToString(), reader["GameId"].ToString()));
                                string name          = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/games?player=" + reader["Name"].ToString(), reader["Name"].ToString()));
                                string lifetime      = HTMLGenerator.TableData(reader["Lifetime"].ToString());
                                string maxmass       = HTMLGenerator.TableData(reader["MaxMass"].ToString());
                                string highestRank   = HTMLGenerator.TableData(reader["HighestRank"].ToString());
                                string cubesEaten    = HTMLGenerator.TableData(reader["CubesEaten"].ToString());
                                string timeofdeath   = HTMLGenerator.TableData(reader["TimeofDeath"].ToString());
                                string numplayerseat = HTMLGenerator.TableData(reader["NumPlayersEaten"].ToString());
                                string eatenname     = HTMLGenerator.TableData(HTMLGenerator.GenerateLink("http://localhost:11100/games?player=" + reader["EatenPlayer"].ToString(), reader["EatenPlayer"].ToString()));
                                eaten.Append("<p>" + HTMLGenerator.GenerateLink("http://localhost:11100/games?player=" + reader["EatenPlayer"].ToString(), reader["EatenPlayer"].ToString()) + "</p>");
                                if (add < 1)
                                {
                                    others = id + name + lifetime + maxmass + highestRank + cubesEaten + timeofdeath + numplayerseat;
                                }
                                add++;
                            }

                            others += HTMLGenerator.TableData(eaten.ToString());
                            rows.Append(HTMLGenerator.TableRow(others));
                        }

                        // Assemble all the html together
                        table = HTMLGenerator.Table(rows.ToString());
                        body  = HTMLGenerator.Body(table, title);
                        html  = HTMLGenerator.GenerateWebpage(title, body);
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    html = HTMLGenerator.GenerateError("Something went wrong in the database query");
                }
            }

            return(html);
        }