Пример #1
0
    protected void Save_Recipe(object sender, EventArgs e)
    {
        Page.Validate();
        HttpApplication webApp = HttpContext.Current.ApplicationInstance;

        if (Page.IsValid)
        {
            check = "";
            Recipess recipe = new Recipess();
            recipe.NameOfRecipe = nnameOfRecipe.Text;

            /*Cuisine Choice*/
            if (cuisineList.SelectedValue == "%")
            {
                if (cuisineList.Attributes["data-check"].Contains("hidden"))
                {
                    if (ccuisine.Text != "")
                    {
                        Session["cuisine"] = ccuisine.Text;
                    }
                    else
                    {
                        Session["cuisine"] = "No Cusisine";
                    }
                }
                else
                {
                    Session["cuisine"] = "No Cuisine";
                }
            }
            else
            {
                Session["cuisine"] = cuisineList.SelectedItem;
            }
            /*End of Cuisine Choice*/

            /*********Category choice***********************/
            if (categoryList.SelectedValue == "%")
            {
                if (categoryList.Attributes["data-check"].Contains("hidden"))
                {
                    if (ccategory.Text != "")
                    {
                        Session["category"] = ccategory.Text;
                    }
                    else
                    {
                        Session["category"] = "No Category";
                    }
                }
                else
                {
                    Session["category"] = "No Category";
                }
            }
            else
            {
                Session["category"] = categoryList.SelectedItem;
            }
            /*********End of category choice*******************/

            if (isPrivate.Checked)
            {
                recipe.IsPriv = 1;
            }
            else
            {
                recipe.IsPriv = 0;
            }

            recipe.CookingTime = ccookingTime.Text;
            recipe.Portion     = Convert.ToInt32(nnumberOfServings.Text);
            recipe.RecipeDesc  = description.Text;

            foreach (Control c in Page.Controls)
            {
                foreach (Control control in c.Controls)
                {
                    if (control is ListOfIngredients)
                    {
                        ListOfIngredients    list       = (ListOfIngredients)control;
                        IngridientComponents ingridient = new IngridientComponents();
                        ingridient.NameOfIngridient     = list.Ingridient;
                        ingridient.QuantityOfIngridient = Convert.ToInt32(list.Quantity);
                        ingridient.UnitOfMeasure        = list.Unit;
                        recipe.InsertIngridients(ingridient);
                    }
                }
            }

            ((List <Recipess>)webApp.Application["recipes"]).Add(recipe);
            insertNewRecipe(recipe);
            insertIngridientInRecipe(ingr_1);
            insertIngridientInRecipe(ingr_2);
            insertIngridientInRecipe(ingr_3);
            insertIngridientInRecipe(ingr_4);
            insertIngridientInRecipe(ingr_5);
            insertIngridientInRecipe(ingr_6);
            insertIngridientInRecipe(ingr_7);
            insertIngridientInRecipe(ingr_8);
            insertIngridientInRecipe(ingr_9);
            insertIngridientInRecipe(ingr_10);
            insertIngridientInRecipe(ingr_11);
            insertIngridientInRecipe(ingr_12);
            insertIngridientInRecipe(ingr_13);
            insertIngridientInRecipe(ingr_14);
            insertIngridientInRecipe(ingr_15);
            Response.Redirect("Recipes.aspx");
        }
        else
        {
            check = "Please, fix all errors";
        }
    }
Пример #2
0
    protected void insertNewRecipe(Recipess rec)
    {
        OracleCommand insertRecipeInfo;
        string        connStr;

        connStr = ConfigurationManager.ConnectionStrings["Recipes"].ConnectionString;
        conn    = new OracleConnection();
        conn.ConnectionString = connStr;

        insertRecipeInfo             = new OracleCommand("Sp_CreateRecipe", conn);
        insertRecipeInfo.CommandType = System.Data.CommandType.StoredProcedure;

        insertRecipeInfo.Parameters.Add("N_RECIPE_NAME", OracleDbType.Varchar2);
        insertRecipeInfo.Parameters["N_RECIPE_NAME"].Value = rec.NameOfRecipe;

        insertRecipeInfo.Parameters.Add("N_CATEGORY_NAME", OracleDbType.Varchar2);
        insertRecipeInfo.Parameters["N_CATEGORY_NAME"].Value = Session["category"].ToString();

        insertRecipeInfo.Parameters.Add("N_COOKING_TIME", OracleDbType.Varchar2);
        insertRecipeInfo.Parameters["N_COOKING_TIME"].Value = rec.CookingTime;

        insertRecipeInfo.Parameters.Add("N_PORTION", OracleDbType.Int32);
        insertRecipeInfo.Parameters["N_PORTION"].Value = rec.Portion;

        insertRecipeInfo.Parameters.Add("N_CUISINE_NAME", OracleDbType.Varchar2);
        insertRecipeInfo.Parameters["N_CUISINE_NAME"].Value = Session["cuisine"].ToString();

        insertRecipeInfo.Parameters.Add("N_DESCRIPTION", OracleDbType.Varchar2);
        insertRecipeInfo.Parameters["N_DESCRIPTION"].Value = rec.RecipeDesc;

        insertRecipeInfo.Parameters.Add("N_IS_PRIVATE", OracleDbType.Varchar2);
        insertRecipeInfo.Parameters["N_IS_PRIVATE"].Value = rec.IsPriv;

        insertRecipeInfo.Parameters.Add("N_IMAGE_PATH", OracleDbType.Varchar2);
        if (imagePath.Text != "")
        {
            insertRecipeInfo.Parameters["N_IMAGE_PATH"].Value = imagePath.Text;
        }
        else
        {
            insertRecipeInfo.Parameters["N_IMAGE_PATH"].Value = "https://upload.wikimedia.org/wikipedia/commons/a/ac/No_image_available.svg";
        }

        try
        {
            conn.Open();
            insertRecipeInfo.ExecuteNonQuery();
        }
        finally
        {
            int counter = 0;
            foreach (Control c in Page.Controls)
            {
                foreach (Control control in c.Controls)
                {
                    if (control is ListOfIngredients)
                    {
                        ListOfIngredients list = (ListOfIngredients)control;
                        if (list.Ingridient != "")
                        {
                            counter++;
                        }
                    }
                }
            }
            if (counter == 0)
            {
                conn.Close();
            }
        }
    }