public void dessert_Data_Bound(Object sender, DataListItemEventArgs e) { // Get Live Meal data DataRowView item1 = (DataRowView)e.Item.DataItem; object[] dessert_Data = item1.Row.ItemArray; // Get the current datalist entry. Accordion dessert_Accordion = (Accordion)e.Item.FindControl("dessertAccordion"); //Find meal labels Label name_Label = (Label)dessert_Accordion.FindControl("dessertNameLabel"); Label chef_Label = (Label)dessert_Accordion.FindControl("dessertChefNameLabel"); Label price_Label = (Label)dessert_Accordion.FindControl("dessertPriceLabel"); Label location_Label = (Label)dessert_Accordion.FindControl("dessertLocationLabel"); Label time_Label = (Label)dessert_Accordion.FindControl("dessertTimeLabel"); Label date_Label = (Label)dessert_Accordion.FindControl("dessertDateLabel"); Label description_Label = (Label)dessert_Accordion.FindControl("dessertDescriptionLabel"); Label spaces_Label = (Label)dessert_Accordion.FindControl("dessertSpacesLabel"); //Find dietary icons Image meat_Icon = (Image)dessert_Accordion.FindControl("dessertMeatIcon"); Image fish_Icon = (Image)dessert_Accordion.FindControl("dessertFishIcon"); Image shellfish_Icon = (Image)dessert_Accordion.FindControl("dessertShellfishIcon"); Image wheat_Icon = (Image)dessert_Accordion.FindControl("dessertWheatIcon"); Image nut_Icon = (Image)dessert_Accordion.FindControl("dessertNutIcon"); Image dairy_Icon = (Image)dessert_Accordion.FindControl("dessertDairyIcon"); Image egg_Icon = (Image)dessert_Accordion.FindControl("dessertEggIcon"); //Store mealID int meal_ID = (int)dessert_Data[0]; dessertMealIDField.Value = meal_ID.ToString(); //Populate meal info name_Label.Text = (string)dessert_Data[1]; chef_Label.Text = (string)dessert_Data[3]; double price = Convert.ToDouble(dessert_Data[4]); price_Label.Text = price.ToString("c"); location_Label.Text = (string)dessert_Data[5]; time_Label.Text = (string)dessert_Data[6]; date_Label.Text = (string)dessert_Data[7]; //Showing dietary if ((Boolean)dessert_Data[8]) { meat_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { meat_Icon.Visible = false; } if ((Boolean)dessert_Data[9]) { fish_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { fish_Icon.Visible = false; } if ((Boolean)dessert_Data[10]) { shellfish_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { shellfish_Icon.Visible = false; } if ((Boolean)dessert_Data[11]) { wheat_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { wheat_Icon.Visible = false; } if ((Boolean)dessert_Data[12]) { nut_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { nut_Icon.Visible = false; } if ((Boolean)dessert_Data[13]) { dairy_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { dairy_Icon.Visible = false; } if ((Boolean)dessert_Data[14]) { egg_Icon.Visible = true; dessertDietaryPanel.Visible = true; } else { egg_Icon.Visible = false; } //Meal spaces total_Meal_Spaces = (int)dessert_Data[15]; taken_Meal_Spaces = (int)dessert_Data[16]; string meal_Spaces = taken_Meal_Spaces.ToString() + "/" + total_Meal_Spaces.ToString(); spaces_Label.Text = meal_Spaces; //Add description description_Label.Text = (string)dessert_Data[17]; //Check if logged in if not hide button, show text if (string.IsNullOrEmpty(User.Identity.GetUserId())) { dessert_Accordion.FindControl("dessertJoinButton").Visible = false; dessert_Accordion.FindControl("dessertLeaveButton").Visible = false; dessert_Accordion.FindControl("dessertManageButton").Visible = false; dessert_Accordion.FindControl("dessertLoginToJoinLabel").Visible = true; } else { //Check if user has hosted meal if ((string)dessert_Data[2] == User.Identity.GetUserId()) { dessert_Accordion.FindControl("dessertJoinButton").Visible = false; dessert_Accordion.FindControl("dessertLeaveButton").Visible = false; dessert_Accordion.FindControl("dessertManageButton").Visible = true; dessert_Accordion.FindControl("dessertLoginToJoinLabel").Visible = false; } else { //Check if user has already joined meal if (meal_Guest_Check(meal_ID.ToString(), User.Identity.GetUserId())) { dessert_Accordion.FindControl("dessertJoinButton").Visible = false; dessert_Accordion.FindControl("dessertLeaveButton").Visible = true; dessert_Accordion.FindControl("dessertManageButton").Visible = false; dessert_Accordion.FindControl("dessertLoginToJoinLabel").Visible = false; } else { dessert_Accordion.FindControl("dessertJoinButton").Visible = true; dessert_Accordion.FindControl("dessertLeaveButton").Visible = false; dessert_Accordion.FindControl("dessertManageButton").Visible = false; dessert_Accordion.FindControl("dessertLoginToJoinLabel").Visible = false; } } } }