// RETRIEVE
        void PopulateGVFood()
        {
            string         selectedFood   = tbSearch.Text.Trim();
            DietTrackingBO diettrackingbo = new DietTrackingBO();
            DataTable      dt             = new DataTable();

            dt = diettrackingbo.getFoodData(selectedFood);
            gvFood.DataSource = dt;
            gvFood.DataBind();
            //using (SqlConnection con = new SqlConnection(connectionString))
            //{
            //    using (SqlCommand cmd = new SqlCommand())
            //    {
            //        cmd.CommandText = "SELECT * FROM Food WHERE Food LIKE '%' + @Food + '%'";
            //        cmd.Connection = con;
            //        cmd.Parameters.AddWithValue("@Food", tbSearch.Text.Trim());
            //        DataTable dt = new DataTable();
            //        using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
            //        {
            //            sda.Fill(dt);
            //            gvFood.DataSource = dt;
            //            gvFood.DataBind();
            //        }
            //    }
            //}
        }
        // RETRIEVE
        void PopulateGridView()
        {
            string         selectedFood   = tbSearch.Text.Trim();
            DietTrackingBO diettrackingbo = new DietTrackingBO();
            DataTable      dt             = new DataTable();

            dt = diettrackingbo.getFoodData(selectedFood);
            gvFood.DataSource = dt;
            gvFood.DataBind();
        }
        protected void gvFood_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            int            id             = Convert.ToInt32(gvFood.DataKeys[e.RowIndex].Value.ToString());
            DietTrackingBO diettrackingbo = new DietTrackingBO();

            diettrackingbo.deleteFoodFromFoodDB(id);
            PopulateGridView();
            //using (SqlConnection sqlCon = new SqlConnection(connectionString))
            //{
            //    sqlCon.Open();
            //    string query = "DELETE FROM Food WHERE foodID = @id";
            //    SqlCommand sqlCmd = new SqlCommand(query, sqlCon);
            //    sqlCmd.Parameters.AddWithValue("@id", id);
            //    sqlCmd.ExecuteNonQuery();

            //}
        }
        protected void gvFood_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            string         userID         = Request.Cookies["CurrentLoggedInUser"].Value; //mock current user
            DietTrackingBO diettrackingbo = new DietTrackingBO();

            //try
            //{
            if (e.CommandName.Equals("Select"))
            {
                int         index = Convert.ToInt32(e.CommandArgument);
                GridViewRow row   = gvFood.Rows[index];
                String      foodname;
                int         calories, protein, fat, carbohydrate;
                foodname     = row.Cells[0].Text;
                calories     = Convert.ToInt32(row.Cells[1].Text);
                protein      = Convert.ToInt32(row.Cells[2].Text);
                fat          = Convert.ToInt32(row.Cells[3].Text);
                carbohydrate = Convert.ToInt32(row.Cells[4].Text);
                diettrackingbo.addDietTrackerItem(userID, foodname, calories, protein, fat, carbohydrate);
                PopulateGVDietTracker();

                //        using (SqlConnection sqlCon = new SqlConnection(connectionString))
                //        {
                //            sqlCon.Open();
                //            string query = "INSERT INTO DietTracker (Food, Calories, Protein, Fat, Carbohydrate) VALUES (@Food,@Calories,@Protein,@Fat,@Carbohydrate)";
                //            SqlCommand sqlCmd = new SqlCommand(query, sqlCon);
                //            sqlCmd.Parameters.AddWithValue("@Food", foodname);
                //            sqlCmd.Parameters.AddWithValue("@Calories", calories);
                //            sqlCmd.Parameters.AddWithValue("@Protein", protein);
                //            sqlCmd.Parameters.AddWithValue("@Fat", fat);
                //            sqlCmd.Parameters.AddWithValue("@Carbohydrate", carbohydrate);
                //            sqlCmd.ExecuteNonQuery();
                //            PopulateGVDietTracker();



                //}
            }
            //catch (Exception ex)
            //{
            //    LblSuccessMessage.Text = "";
            //    LblErrorMessage.Text = ex.Message;
            //}
        }
        void PopulateGVDietTracker()
        {
            string         userID        = Request.Cookies["CurrentLoggedInUser"].Value; //mock current user
            DataTable      dtbl          = new DataTable();
            DietTrackingBO diettrackerbo = new DietTrackingBO();

            dtbl = diettrackerbo.getDietTracker(userID);
            //using (SqlConnection sqlCon = new SqlConnection(connectionString))
            //{
            //    sqlCon.Open();
            //    SqlDataAdapter sqlDa = new SqlDataAdapter("Select * From DietTracker where User_ID=@paraUserID", sqlCon);
            //    sqlDa.SelectCommand.Parameters.AddWithValue("@paraUserID", userID);
            //    sqlDa.Fill(dtbl);
            //}
            if (dtbl.Rows.Count > 0)
            {
                excelSheetBtn.Visible    = true;
                calculateDiv.Visible     = true;
                gvDietTracker.DataSource = dtbl;
                gvDietTracker.DataBind();
                gvDietTracker.FooterRow.Visible       = true;
                gvDietTracker.FooterRow.Cells[0].Text = "TOTAL";

                gvDietTracker.FooterRow.Cells[1].Text = dtbl.Compute("Sum(Calories)", "").ToString();
                gvDietTracker.FooterRow.Cells[2].Text = dtbl.Compute("Sum(Protein)", "").ToString();
                gvDietTracker.FooterRow.Cells[3].Text = dtbl.Compute("Sum(Fat)", "").ToString();
                gvDietTracker.FooterRow.Cells[4].Text = dtbl.Compute("Sum(Carbohydrate)", "").ToString();
            }

            else
            {
                excelSheetBtn.Visible = false;
                calculateDiv.Visible  = false;
                dtbl.Rows.Add(dtbl.NewRow());
                gvDietTracker.DataSource = dtbl;
                gvDietTracker.DataBind();
                gvDietTracker.FooterRow.Visible = false;
                gvDietTracker.Rows[0].Cells.Clear();
                gvDietTracker.Rows[0].Cells.Add(new TableCell());
                gvDietTracker.Rows[0].Cells[0].ColumnSpan      = dtbl.Columns.Count;
                gvDietTracker.Rows[0].Cells[0].Text            = "No Food :(";
                gvDietTracker.Rows[0].Cells[0].HorizontalAlign = HorizontalAlign.Center;
            }
        }
        protected void gvDietTracker_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            string         userID         = Request.Cookies["CurrentLoggedInUser"].Value; //mock current user
            int            id             = Convert.ToInt32(gvDietTracker.DataKeys[e.RowIndex].Value.ToString());
            DietTrackingBO diettrackingbo = new DietTrackingBO();

            diettrackingbo.deleteDietTracker(userID, id);
            PopulateGVDietTracker();
            //using (SqlConnection sqlCon = new SqlConnection(connectionString))
            //{
            //    sqlCon.Open();
            //    string query = "DELETE FROM DietTracker WHERE foodID = @id";
            //    SqlCommand sqlCmd = new SqlCommand(query, sqlCon);
            //    sqlCmd.Parameters.AddWithValue("@id", id);
            //    sqlCmd.ExecuteNonQuery();
            //    PopulateGVDietTracker();

            //}
        }
 protected void gvFood_RowUpdating(object sender, GridViewUpdateEventArgs e)
 {
     try
     {
         DietTrackingBO diettrackingbo = new DietTrackingBO();
         string         food           = (gvFood.Rows[e.RowIndex].FindControl("txtFood") as TextBox).Text.Trim();
         string         calories       = (gvFood.Rows[e.RowIndex].FindControl("txtCalories") as TextBox).Text.Trim();
         string         protein        = (gvFood.Rows[e.RowIndex].FindControl("txtProtein") as TextBox).Text.Trim();
         string         fat            = (gvFood.Rows[e.RowIndex].FindControl("txtFat") as TextBox).Text.Trim();
         string         carbohydrate   = (gvFood.Rows[e.RowIndex].FindControl("txtCarbohydrate") as TextBox).Text.Trim();
         int            id             = Convert.ToInt32(gvFood.DataKeys[e.RowIndex].Value.ToString());
         diettrackingbo.updateFood(food, calories, protein, fat, carbohydrate, id);
         gvFood.EditIndex = -1;
         PopulateGridView();
         LblSuccessMessage.Text = "Selected Food Updated";
         LblErrorMessage.Text   = "";
         //using (SqlConnection sqlCon = new SqlConnection(connectionString))
         //{
         //    sqlCon.Open();
         //    string query = "UPDATE Food SET Food=@Food,Calories=@Calories,Protein=@Protein,Fat=@Fat,Carbohydrate=@Carbohydrate WHERE foodID = @id";
         //    SqlCommand sqlCmd = new SqlCommand(query, sqlCon);
         //    sqlCmd.Parameters.AddWithValue("@Food", food);
         //    sqlCmd.Parameters.AddWithValue("@Calories", calories);
         //    sqlCmd.Parameters.AddWithValue("@Protein", protein);
         //    sqlCmd.Parameters.AddWithValue("@Fat", fat);
         //    sqlCmd.Parameters.AddWithValue("@Carbohydrate", carbohydrate);
         //    sqlCmd.Parameters.AddWithValue("@id", id);
         //    sqlCmd.ExecuteNonQuery();
         //    gvFood.EditIndex = -1;
         //    PopulateGridView();
         //    LblSuccessMessage.Text = "Selected Food Updated";
         //    LblErrorMessage.Text = "";
         //}
     }
     catch (Exception ex)
     {
         LblSuccessMessage.Text = "";
         LblErrorMessage.Text   = ex.Message;
     }
 }
 protected void gvFood_RowCommand(object sender, GridViewCommandEventArgs e)
 {
     try
     {
         string         food           = (gvFood.FooterRow.FindControl("txtFoodFooter") as TextBox).Text.Trim();
         string         calories       = (gvFood.FooterRow.FindControl("txtCaloriesFooter") as TextBox).Text.Trim();
         string         protein        = (gvFood.FooterRow.FindControl("txtProteinFooter") as TextBox).Text.Trim();
         string         fat            = (gvFood.FooterRow.FindControl("txtFatFooter") as TextBox).Text.Trim();
         string         carbohydrates  = (gvFood.FooterRow.FindControl("txtCarbohydrateFooter") as TextBox).Text.Trim();
         DietTrackingBO diettrackingbo = new DietTrackingBO();
         if (e.CommandName.Equals("Add"))
         {
             diettrackingbo.addFood(food, calories, protein, fat, carbohydrates);
             PopulateGridView();
             LblSuccessMessage.Text = "Thank you for adding your food recommendation!";
             LblErrorMessage.Text   = "";
         }
     }
     catch (Exception ex)
     {
         LblSuccessMessage.Text = "";
         LblErrorMessage.Text   = ex.Message;
     }
 }