public static void DeleteRecipe(string _recipeid) { using (MySqlConnection conn = new MySqlConnection(PortalUtility.GetConnectionString("default"))) { conn.Open(); //Have to get all current images so we can delete the image files MySqlCommand imgcmd = new MySqlCommand("Recipe_Select_RecipeImages", conn); imgcmd.CommandType = CommandType.StoredProcedure; imgcmd.Parameters.AddWithValue("@pRecipeID", _recipeid); MySqlDataAdapter da = new MySqlDataAdapter(imgcmd); DataSet ds = new DataSet(); da.Fill(ds, "Images"); foreach (DataRow dr in ds.Tables["Images"].Rows) { (new RecipeImage(dr)).DeleteImage(conn); } MySqlCommand cmd = new MySqlCommand("Recipe_DeleteRecipe", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@pRecipeID", _recipeid); cmd.ExecuteNonQuery(); conn.Close(); } }
public string AddNewUser() { string resultmsg = string.Empty; if (!string.IsNullOrEmpty(this.UserName) && !string.IsNullOrEmpty(this.Password)) { this.EncryptionSeed = Guid.NewGuid().ToString(); this.Password = PortalUtility.HashString(this.EncryptionSeed, this.Password); try { using (MySqlConnection conn = new MySqlConnection(PortalUtility.GetConnectionString("default"))) { conn.Open(); MySqlCommand cmd = new MySqlCommand("Security_Insert_User", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@pUsername", this.UserName); cmd.Parameters.AddWithValue("@pPassword", this.Password); cmd.Parameters.AddWithValue("@pEncryptionSeed", this.EncryptionSeed); cmd.ExecuteNonQuery(); conn.Close(); resultmsg = "Success"; } } catch (Exception ex) { resultmsg = ex.Message; } } return(resultmsg); }
public void SaveCategory(string _recipeid) { using (MySqlConnection conn = new MySqlConnection(PortalUtility.GetConnectionString("default"))) { conn.Open(); SaveCategory(_recipeid, conn); conn.Close(); } }
public void SaveDirection() { using (MySqlConnection conn = new MySqlConnection(PortalUtility.GetConnectionString("default"))) { conn.Open(); SaveDirection(conn); conn.Close(); } }
public void DeleteImage() { using (MySqlConnection conn = new MySqlConnection(PortalUtility.GetConnectionString("default"))) { conn.Open(); DeleteImage(conn); conn.Close(); } }
public void SaveRecipe() { using (MySqlConnection conn = new MySqlConnection(PortalUtility.GetConnectionString("default"))) { conn.Open(); //Save base recipe information MySqlCommand cmd = new MySqlCommand("Recipe_SaveRecipe", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@pTitle", this.Title); cmd.Parameters.AddWithValue("@pDescription", this.Description); cmd.Parameters.AddWithValue("@pRecipeID", this.RecipeID); cmd.Parameters["@pRecipeID"].Direction = ParameterDirection.Input; cmd.Parameters.Add("@pRecipeIDOut", MySqlDbType.VarString); cmd.Parameters["@pRecipeIDOut"].Direction = ParameterDirection.Output; cmd.ExecuteNonQuery(); //Make sure we have the recipe id if it's a new recipe this.RecipeID = cmd.Parameters["@pRecipeIDOut"].Value.ToString(); //Clear out any existing directions, ingredients, and categories. //This is just easier/lazier than trying to only delete what has been removed cmd = new MySqlCommand("Recipe_ClearData", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@pRecipeID", this.RecipeID); cmd.ExecuteNonQuery(); //Save ingredients foreach (RecipeIngredient ing in this.IngredientList) { ing.RecipeID = this.RecipeID; ing.SaveIngredient(conn); } //Save directions foreach (RecipeDirection dir in this.DirectionList) { dir.RecipeID = this.RecipeID; dir.SaveDirection(conn); } //Save categories foreach (Recipe.Category cat in this.CategoryList) { //only save selected categories if (cat.IsSelected) { cat.SaveCategory(this.RecipeID, conn); } } //Save images foreach (RecipeImage img in this.ImageList) { img.RecipeID = this.RecipeID; img.SaveImage(conn); } //Delete any images that have been removed //Have to do this manually because we need to delete the physical image files cmd = new MySqlCommand("Recipe_Select_RecipeImages", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@pRecipeID", this.RecipeID); MySqlDataAdapter da = new MySqlDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds, "Images"); List <RecipeImage> currentimgs = new List <RecipeImage>(); foreach (DataRow dr in ds.Tables["Images"].Rows) { currentimgs.Add(new RecipeImage(dr)); } foreach (RecipeImage img in currentimgs) { if (!(this.ImageList.Exists(x => x.ImageName == img.ImageName))) { img.DeleteImage(conn); } } conn.Close(); } }