static private Card_Type_Elemnt Get_type_element(string card_name) // method for extracting the type and element type out of a cards name { Card_Type_Elemnt return_card = new Card_Type_Elemnt(); if (card_name.ToLower().Contains("water") == true) { return_card.element = "water"; } else if (card_name.ToLower().Contains("fire") == true) { return_card.element = "fire"; } else if (card_name.ToLower().Contains("normal") == true) { return_card.element = "normal"; } else { return_card.element = "normal"; } if (card_name.ToLower().Contains("spell")) { return_card.type = "spell"; } else if (card_name.ToLower().Contains("goblin")) { return_card.type = "goblin"; } else if (card_name.ToLower().Contains("dragon")) { return_card.type = "dragon"; } else if (card_name.ToLower().Contains("wizzard")) { return_card.type = "wizzard"; } else if (card_name.ToLower().Contains("ork")) { return_card.type = "ork"; } else if (card_name.ToLower().Contains("knight")) { return_card.type = "knight"; } else if (card_name.ToLower().Contains("kraken")) { return_card.type = "kraken"; } else if (card_name.ToLower().Contains("elve")) { return_card.type = "elve"; } else { return_card.type = "human"; } return(return_card); }
public static int Add_cards_to_shop(string i_username, string card_id, string card_name, double damage) { try { if (DBManagment.has_session(i_username) == false) //check if token is valid / has session { //throw new Exception("Not logged in / Invalid token"); return(1); } if (DBManagment.Check_admin(i_username) == false) // check if has permission (admin) { //throw new Exception("Not authorized, please contact an Admin!"); return(2); } int count_cards = 0; var con = new NpgsqlConnection(DBManagment.cs); con.Open(); var sql_count = "SELECT count (*) from store where card_id = @card_id"; var cmd = new NpgsqlCommand(sql_count, con); //prepared statments cmd.Parameters.AddWithValue("card_id", card_id); cmd.Prepare(); // NpgsqlDataReader GetCount = cmd.ExecuteReader(); //curser GetCount.Read(); count_cards = GetCount.GetInt32(0); GetCount.Close(); if (count_cards == 0) //check if name is unique(no one else with the same name) { Card_Type_Elemnt new_cte = Get_type_element(card_name); var sql_insert = "Insert into store (card_id, name, card_type, elementar_type, damage) values (@card_id, @name, @card_type, @elementar_type, @damage)"; var cmd2 = new NpgsqlCommand(sql_insert, con); //prepared statment cmd2.Parameters.AddWithValue("card_id", card_id); cmd2.Parameters.AddWithValue("name", card_name); cmd2.Parameters.AddWithValue("card_type", new_cte.type); cmd2.Parameters.AddWithValue("elementar_type", (ElementarType)Enum.Parse(typeof(ElementarType), new_cte.element)); cmd2.Parameters.AddWithValue("damage", damage); cmd2.Prepare(); // cmd2.ExecuteNonQuery(); return(0); } else { //throw new Exception("Error: Card already exists!"); return(3); } } catch (Exception e) { Console.WriteLine("{0} Exception caught.", e); return(4); } }