private void FillProgram(hccProgram program) { _ProgramName = program.Name; _ProgramId = program.ProgramID.ToString(); rpet_plan_types.DataSource = hccProgramPlan.GetBy(program.ProgramID, true).Where(prog => prog.PricePerDay > 0).ToList(); rpet_plan_types.DataBind(); //Bind Plan Option data if there is any rpet_plan_options.DataSource = hccProgramOption.GetBy(program.ProgramID) .Where(a => !string.IsNullOrWhiteSpace(a.OptionText)).ToList(); rpet_plan_options.DataBind(); //Get the valid delivery dates List <hccProductionCalendar> calendar = hccProductionCalendar.GetNext4Calendars(); //List<hccProductionCalendar> calendar = hccProductionCalendar.GetAll().Where(cal => cal.OrderCutOffDate > DateTime.Now).OrderBy(ord => ord.DeliveryDate).ToList(); ddl_delivery_date.DataSource = calendar; ddl_delivery_date.DataTextField = "DeliveryDate"; ddl_delivery_date.DataValueField = "DeliveryDate";//"CalendarID"; ddl_delivery_date.DataBind(); MembershipUser user = Helpers.LoggedUser; if (user != null) { CartUserASPNetId = (Guid)user.ProviderUserKey; BindddlProfiles(); } multi_programs.ActiveViewIndex = multi_programs.ActiveViewIndex + 1; }
protected override void SetButtons() { ShowDeactivate = false; if (this.PrimaryKeyIndex > 0) { ShowDeactivate = true; if (CurrentProgram == null) { CurrentProgram = hccProgram.GetById(this.PrimaryKeyIndex); } if (CurrentProgram != null) { if (CurrentProgram.IsActive) { btnDeactivate.Text = "Retire"; UseReactivateBehavior = false; } else { btnDeactivate.Text = "Reactivate"; UseReactivateBehavior = true; } } } btnDeactivate.Visible = ShowDeactivate; }
void DisplayDailyPrice(object sender, EventArgs e) { if (ddlPlans.SelectedIndex > 0 && ddlOptions.SelectedIndex > 0) { hccProgramPlan plan = hccProgramPlan.GetById(int.Parse(ddlPlans.SelectedValue)); hccProgram program = hccProgram.GetById(int.Parse(ddlPrograms.SelectedValue)); hccProgramOption option = hccProgramOption.GetBy(program.ProgramID).SingleOrDefault(a => a.ProgramOptionID == int.Parse(ddlOptions.SelectedValue)); if (plan != null && option != null) { int numDays = plan.NumDaysPerWeek * plan.NumWeeks; decimal dailyPrice = plan.PricePerDay + option.OptionValue; decimal itemPrice = numDays * dailyPrice; lblPlanPrice.Text = string.Format("Daily Price: {0}; Total Price: {1}", dailyPrice.ToString("c"), itemPrice.ToString("c")); } else { lblPlanPrice.Text = string.Empty; } } else { lblPlanPrice.Text = string.Empty; } }
protected void ButtonRefresh_Click(object sender, EventArgs e) { hccProductionCalendar cal = hccProductionCalendar.GetBy(DateTime.Parse(txtStartDate.Text)); if (cal != null) { cM.CurrentCalendarId = cal.CalendarID; } cM.CurrentCartItem = hccCartItem.GetById(int.Parse(ddlCustomers.SelectedItem.Value)); if (cM.CurrentCartItem.Plan_PlanID != null) { hccProgramPlan plan = hccProgramPlan.GetById(cM.CurrentCartItem.Plan_PlanID.Value); hccProgram program = hccProgram.GetById(plan.ProgramID); if (plan != null && program != null) { // load user profile data hccUserProfile profile = cM.CurrentCartItem.UserProfile; hccUserProfile parent = hccUserProfile.GetParentProfileBy(profile.MembershipID); lblOrderData.Text = string.Format("Order #{0}: {1}/{2}", cM.CurrentCartItem.OrderNumber, program.Name, plan.Name); lblCustData.Text = string.Format("For: {0}, {1} ({2}) Delivery Date: {3}", parent.LastName, parent.FirstName, profile.ProfileName, txtStartDate.Text); //cM.CurrentCartItem.DeliveryDate.ToShortDateString() defaultMenuSelections = hccProgramDefaultMenu.GetBy(cM.CurrentCalendarId, program.ProgramID); days = cM.BindWeeklyGlance(defaultMenuSelections, plan.NumDaysPerWeek, int.Parse(ddlCustomers.SelectedValue)); lvCustomerMealReport.DataSource = days; lvCustomerMealReport.DataBind(); } } }
protected void btnLoadCustomers_Click(object sender, EventArgs e) { try { ddlCustomers.Items.Clear(); lstMCI = hccCartItem.Search_MealOrderTicketForWaaG(DateTime.Parse(txtStartDate.Text), (DateTime.Parse(txtStartDate.Text))); List <CustomerCalendarMenu> lstCMC = new List <CustomerCalendarMenu>(); var cccValue = new CustomerCalendarMenu(); var currentCustCalendarValues = (from c in lstMCI where c.CartItem.Plan_PlanID != null orderby c.CustomerName select c.CustomerName + "|" + c.CartItemId + "|" + c.OrderNumber + "|" + c.CartItem.Plan_PlanID).Distinct(); foreach (string c in currentCustCalendarValues) { hccProgramPlan plan = hccProgramPlan.GetById(int.Parse(c.Split('|')[3])); hccProgram prog = hccProgram.GetById(plan.ProgramID); ListItem li = new ListItem(c.Split('|')[0] + " order # " + c.Split('|')[2] + " " + prog.Name, c.Split('|')[1]); ddlCustomers.Items.Add(li); } } catch { } }
//void cbxRecurring_CheckedChanged(object sender, EventArgs e) //{ // if (ViewState["CartUserASPNetId"] == null) // { // Response.Redirect("~/login.aspx?rp=" + Request.Url.ToString().Split('/').Last(), true); // } //} protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (Page.RouteData.Values["programname"] != null) { if (string.IsNullOrEmpty(Page.RouteData.Values["programname"].ToString())) { BindrptMenuPrograms(); } else { hccProgram program = hccProgram.GetBy(true).Where(x => Regex.Replace(x.Name, @"[^\w\d/]", "-") == Page.RouteData.Values["programname"].ToString()).SingleOrDefault(); if (program != null) { FillProgram(program); } else { BindrptMenuPrograms(); } } } else { BindrptMenuPrograms(); } } }
protected void cstName_ServerValidate(object source, ServerValidateEventArgs args) { hccProgram existProg = hccProgram.GetBy(txtProgramName.Text.Trim()); if (existProg != null && existProg.ProgramID != this.PrimaryKeyIndex) { args.IsValid = false; } }
public void lnkSelectClick(Object sender, EventArgs e) { try { int programId = (Information.IsNumeric(((LinkButton)sender).CommandArgument)) ? Convert.ToInt32(((LinkButton)sender).CommandArgument) : 0; hccProgram program = hccProgram.GetById(programId); FillProgram(program); } catch (Exception) { throw; } }
protected void btnDeactivate_Click(object sender, EventArgs e) { if (CurrentProgram == null) { CurrentProgram = hccProgram.GetById(this.PrimaryKeyIndex); } if (CurrentProgram != null) { CurrentProgram.Retire(!UseReactivateBehavior); this.OnSaved(new ControlSavedEventArgs(CurrentProgram.ProgramID)); } }
void BindddlOptions(int programId) { ddlOptions.ClearSelection(); ddlOptions.Items.Clear(); hccProgram prog = hccProgram.GetById(programId); ddlOptions.DataSource = hccProgramOption.GetBy(prog.ProgramID).Where(a => !string.IsNullOrWhiteSpace(a.OptionText)).OrderBy(a => a.OptionIndex).ToList(); ddlOptions.DataTextField = "FullText"; ddlOptions.DataValueField = "ProgramOptionID"; ddlOptions.DataBind(); ddlOptions.Items.Insert(0, new ListItem("Select Options...", "-1")); ddlOptions.Enabled = true; }
void gvwPlansRetired_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { hccProgramPlan plan = (hccProgramPlan)e.Row.DataItem; if (plan != null) { hccProgram prog = hccProgram.GetById(plan.ProgramID); if (prog != null) { e.Row.Cells[4].Text = prog.Name; } } } }
void gvwProgramsActive_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { int menuItemId = int.Parse(e.Keys[0].ToString()); hccProgram del = hccProgram.GetById(menuItemId); if (del != null) { del.Retire(true); BindBothLists(); } } catch (Exception) { throw; } }
void gvwProgramsRetired_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { int progId = int.Parse(e.Keys[0].ToString()); hccProgram delItem = hccProgram.GetById(progId); if (delItem != null) { delItem.Retire(false); BindBothLists(); } } catch (Exception) { throw; } }
void rptMenuPrograms_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { hccProgram program = (hccProgram)e.Item.DataItem; Label lblPricePerDay = (Label)e.Item.FindControl("lblPricePerDay"); if (lblPricePerDay != null) { lblPricePerDay.Text = program.GetCheapestPlanPrice().ToString("c"); } if (program.MoreInfoNavID.HasValue) { HyperLink lnkMoreInfo = (HyperLink)e.Item.FindControl("lnkMoreInfo"); if (lnkMoreInfo != null && program.MoreInfoNavID.HasValue && program.MoreInfoNavID.Value > 0) { lnkMoreInfo.NavigateUrl = BayshoreSolutions.WebModules.Webpage.GetWebpage(program.MoreInfoNavID.Value).Path; } } } }
//public string GetProgramImage(string programName) //{ // var fileName = "/userfiles/images/programs/" + programName.Replace(" ", "-") + ".jpg"; // if (!File.Exists(Server.MapPath(fileName))) // return ""; // return "<img width='150' height='126' alt='' src='/userfiles/images/programs/" + programName.Replace(" ", "-") + ".jpg' class='left' />"; //} protected void btn_add_to_cart_Click(object sender, EventArgs e) { try { Page.Validate("AddToCartGroup"); if (Page.IsValid) { hccCart userCart = hccCart.GetCurrentCart(); //Define form variables int itemId = Convert.ToInt32(Request.Form["plan_type"]); int optionId = ((Request.Form["plan_option"] == null) ? 0 : Convert.ToInt32(Request.Form["plan_option"])); //Select chosen Program Plan hccProgramPlan plan = hccProgramPlan.GetById(itemId); if (plan == null) { throw new Exception("ProgramPlan not found: " + itemId.ToString()); } hccProgram prog = hccProgram.GetById(plan.ProgramID); hccProgramOption option = hccProgramOption.GetBy(plan.ProgramID).Where(a => a.ProgramOptionID == optionId).SingleOrDefault(); int numDays = plan.NumDaysPerWeek * plan.NumWeeks; int numMeals = numDays * plan.MealsPerDay; decimal dailyPrice = plan.PricePerDay + option.OptionValue; decimal itemPrice = numDays * dailyPrice; DateTime deliveryDate = DateTime.Parse(ddl_delivery_date.SelectedValue); MembershipUser user = Helpers.LoggedUser; hccCartItem newItem = new hccCartItem { CartID = userCart.CartID, CreatedBy = (user == null ? Guid.Empty : (Guid)user.ProviderUserKey), CreatedDate = DateTime.Now, IsTaxable = plan.IsTaxEligible, ItemDesc = plan.Description, NumberOfMeals = numMeals, //ItemName = string.Format("{0} - {1} - {2} - {3} & {4}", (prog == null ? string.Empty : prog.Name), plan.Name, option.OptionText, deliveryDate.ToShortDateString(), numMeals), ItemName = string.Format("{0} - {1} - {2} - {3}", (prog == null ? string.Empty : prog.Name), plan.Name, option.OptionText, deliveryDate.ToShortDateString()), ItemPrice = itemPrice, ItemTypeID = (int)Enums.CartItemType.DefinedPlan, Plan_IsAutoRenew = false, //chx_renew.Checked, Plan_PlanID = itemId, Plan_ProgramOptionID = optionId, DeliveryDate = deliveryDate, Quantity = int.Parse(txt_quantity.Text), UserProfileID = ((ddlProfiles.Items.Count == 0) ? 0 : Convert.ToInt32(ddlProfiles.SelectedValue)), IsCompleted = false }; Meals obj = new Meals(); obj.CartID = newItem.CartID; obj.MealCount = newItem.NumberOfMeals; obj.NoOfWeeks = plan.NumWeeks; var ID = obj.CartID; var Meal = obj.MealCount; var Weeks = obj.NoOfWeeks; HealthyChef.Templates.HealthyChef.Controls.TopHeader header = (HealthyChef.Templates.HealthyChef.Controls.TopHeader) this.Page.Master.FindControl("TopHeader1"); if (header != null) { header.MealsCountVal(ID, Meal); } newItem.GetOrderNumber(userCart); int profileId = 0; if (divProfiles.Visible) { profileId = int.Parse(ddlProfiles.SelectedValue); } else { if (CartUserASPNetId != Guid.Empty) { profileId = hccUserProfile.GetParentProfileBy(CartUserASPNetId).UserProfileID; } } if (profileId > 0) { newItem.UserProfileID = profileId; } hccCartItem existItem = hccCartItem.GetBy(userCart.CartID, newItem.ItemName, profileId); if (existItem == null) { newItem.Save(); hccProductionCalendar cal; for (int i = 0; i < plan.NumWeeks; i++) { cal = hccProductionCalendar.GetBy(newItem.DeliveryDate.AddDays(7 * i)); if (cal != null) { hccCartItemCalendar cartCal = new hccCartItemCalendar { CalendarID = cal.CalendarID, CartItemID = newItem.CartItemID }; cartCal.Save(); } else { BayshoreSolutions.WebModules.WebModulesAuditEvent.Raise( "No production calendar found for Delivery Date: " + newItem.DeliveryDate.AddDays(7 * i).ToShortDateString(), this); } } } else { existItem.AdjustQuantity(existItem.Quantity + newItem.Quantity); } //Recurring Order Record if (cbxRecurring.Checked) { List <hccRecurringOrder> lstRo = null; if (Session["autorenew"] != null) { lstRo = ((List <hccRecurringOrder>)Session["autorenew"]); } else { lstRo = new List <hccRecurringOrder>(); } //var filter = cartItemsRecurring.Where(ci => ci.ItemType == Enums.CartItemType.DefinedPlan); //for(var i = 0; i < int.Parse(txt_quantity.Text); i++) //{ lstRo.Add(new hccRecurringOrder { CartID = userCart.CartID, CartItemID = newItem.CartItemID, UserProfileID = newItem.UserProfileID, AspNetUserID = userCart.AspNetUserID, PurchaseNumber = userCart.PurchaseNumber, TotalAmount = newItem.ItemPrice }); Session["autorenew"] = lstRo; //} } HealthyChef.Templates.HealthyChef.Controls.TopHeader header1 = (HealthyChef.Templates.HealthyChef.Controls.TopHeader) this.Page.Master.FindControl("TopHeader1"); if (header1 != null) { header.SetCartCount(); } //Redirect user to Program Selection screen Response.Redirect("~/meal-programs.aspx"); //multi_programs.ActiveViewIndex = 0; //litMessage.Text = "Your Meal Program has been added to your cart."; } else { } } catch (Exception ex) { throw ex; } }
void BindDropDownLists(List <hccAllergen> userAllergens) { try { if (CurrentProgramId > 0 && CurrentCalendarId > 0) { hccProgram program = hccProgram.GetById(CurrentProgramId); hccProductionCalendar cal = hccProductionCalendar.GetById(CurrentCalendarId); hccMenu menu = cal.GetMenu(); if (program != null && menu != null) { List <hccProgramMealType> requiredMealTypes = hccProgramMealType.GetBy(program.ProgramID) .Where(a => a.RequiredQuantity > 0).ToList(); int day = int.Parse(rdoDays.SelectedValue); // Display for selected day pnlDefaultMenu.CssClass += " dayPanel"; HtmlGenericControl pName = new HtmlGenericControl("p"); pName.Attributes.Add("class", "dayName label"); pName.InnerText = "Day " + day.ToString(); pnlDefaultMenu.Controls.Add(pName); pnlDefaultMenu.Controls.Add(new HtmlGenericControl("hr")); requiredMealTypes.ForEach(delegate(hccProgramMealType mealType) { HtmlGenericControl liType = new HtmlGenericControl("li"); liType.InnerText = ((Enums.MealTypes)mealType.MealTypeID).ToString() + ": " + mealType.RequiredQuantity.ToString(); HtmlGenericControl mealTypespan = new HtmlGenericControl("span"); mealTypespan.InnerHtml = "<b>" + ((Enums.MealTypes)mealType.MealTypeID).ToString() + "</b>"; pnlDefaultMenu.Controls.Add(mealTypespan); int i = 1; while (i <= mealType.RequiredQuantity) { // container for meanu item HtmlGenericControl divItemContainer = new HtmlGenericControl("div"); divItemContainer.Attributes.Add("class", "divItemContainer"); pnlDefaultMenu.Controls.Add(divItemContainer); // container for ddl HtmlGenericControl divDdl = new HtmlGenericControl("div"); divDdl.Attributes.Add("class", "divDdl"); divItemContainer.Controls.Add(divDdl); DropDownList ddlMealItem = new DropDownList(); ddlMealItem.CssClass = "mealItemDdl"; ddlMealItem.Attributes.Add("calId", CurrentCalendarId.ToString()); ddlMealItem.Attributes.Add("progId", CurrentProgramId.ToString()); ddlMealItem.Attributes.Add("day", day.ToString()); ddlMealItem.Attributes.Add("type", mealType.MealTypeID.ToString()); ddlMealItem.Attributes.Add("ord", i.ToString()); List <hccMenuItem> menuItems = hccMenuItem.GetByMenuId(menu.MenuID) .Where(a => a.MealTypeID == mealType.MealTypeID).OrderBy(a => a.Name).ToList(); List <ListItem> menuItemsWithSizes = new List <ListItem>(); menuItems.ForEach(delegate(hccMenuItem mainItem) { hccMenuItem menuItem = hccMenuItem.GetById(mainItem.MenuItemID); bool hasAllergen = false; ListItem lItem = null; if (menuItem != null) { List <hccAllergen> matchAllergens = new List <hccAllergen>(); List <hccAllergen> menuItemAllergens = menuItem.GetAllergens(); matchAllergens = menuItemAllergens.Intersect(userAllergens).ToList(); if (matchAllergens.Count > 0) { hasAllergen = true; } } lItem = new ListItem(mainItem.Name + " : " + Enums.CartItemSize.ChildSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.ChildSize).ToString()); if (hasAllergen) { lItem.Attributes["class"] += " redFont"; } menuItemsWithSizes.Add(lItem); lItem = new ListItem(mainItem.Name + " : " + Enums.CartItemSize.SmallSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.SmallSize).ToString()); if (hasAllergen) { lItem.Attributes["class"] += " redFont"; } menuItemsWithSizes.Add(lItem); lItem = new ListItem(mainItem.Name + " : " + Enums.CartItemSize.RegularSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.RegularSize).ToString()); if (hasAllergen) { lItem.Attributes["class"] += " redFont"; } menuItemsWithSizes.Add(lItem); lItem = new ListItem(mainItem.Name + " : " + Enums.CartItemSize.LargeSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.LargeSize).ToString()); if (hasAllergen) { lItem.Attributes["class"] += " redFont"; } menuItemsWithSizes.Add(lItem); }); ddlMealItem.DataSource = new List <ListItem>(); ddlMealItem.DataTextField = "Text"; ddlMealItem.DataValueField = "Value"; ddlMealItem.DataBind(); ddlMealItem.Items.AddRange(menuItemsWithSizes.ToArray()); ddlMealItem.Items.Insert(0, new ListItem("None", "0")); divDdl.Controls.Add(ddlMealItem); // container for nutrition HtmlGenericControl divNuts = new HtmlGenericControl("div"); divNuts.Attributes.Add("class", "divNuts"); divItemContainer.Controls.Add(divNuts); // container for allergens HtmlGenericControl divAllrgs = new HtmlGenericControl("div"); divAllrgs.Attributes.Add("class", "divAllrgs"); divItemContainer.Controls.Add(divAllrgs); // container for prefs HtmlGenericControl divPrefs = new HtmlGenericControl("div"); divPrefs.Attributes.Add("class", "divPrefs"); divItemContainer.Controls.Add(divPrefs); divItemContainer.Controls.Add(new HtmlGenericControl("p")); i++; } pnlDefaultMenu.Controls.Add(new HtmlGenericControl("hr")); }); if (cal.DeliveryDate < DateTime.Now) { pnlDefaultMenu.Enabled = false; chkIsComplete.Enabled = false; //chkIsCancelled.Enabled = false; } } else { if (menu == null) { lblFeedback.Text += "No menu has been assigned to the Production Calendar associated with the Delivery Date assigned to this item. " + "Please assign a menu to the Production Calendar and select a Default Menu for this program, prior to continuing. "; pnlDefaultMenu.Visible = false; } } } } catch (Exception) { throw; } }
protected override void LoadForm() { try { hccProductionCalendar cal = null; if (Request.QueryString["dd"] != null && !string.IsNullOrEmpty(Request.QueryString["dd"])) { DateTime _delDate = DateTime.ParseExact(Request.QueryString["dd"].ToString(), "M/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture); cal = hccProductionCalendar.GetBy(_delDate); //cal = hccProductionCalendar.GetBy(DateTime.Parse(Request.QueryString["dd"].ToString())); if (cal != null) { CurrentCalendarId = cal.CalendarID; } lkbBack.PostBackUrl += "?cal=" + cal.CalendarID.ToString(); } hccProgramPlan plan = hccProgramPlan.GetById(CurrentCartItem.Plan_PlanID.Value); hccProgram program = hccProgram.GetById(plan.ProgramID); if (plan != null && program != null) { CurrentProgramId = program.ProgramID; CurrentNumOfDays = plan.NumDaysPerWeek; // load user profile data hccUserProfile profile = CurrentCartItem.UserProfile; hccUserProfile parent = hccUserProfile.GetParentProfileBy(profile.MembershipID); lblCustomerName.Text = parent.FirstName + " " + parent.LastName; lblProfileName.Text = profile.ProfileName; lblProgram.Text = program.Name; lblPlan.Text = plan.Name; lblPlanOption.Text = hccProgramOption.GetById(CurrentCartItem.Plan_ProgramOptionID.Value).OptionText; lblOrderNumber.Text = CurrentCartItem.OrderNumber; lblQuantity.Text = CurrentCartItem.Quantity.ToString(); lblDeliveryDate.Text = cal.DeliveryDate.ToShortDateString(); hccCartItemCalendar cartCal = hccCartItemCalendar.GetBy(CurrentCartItem.CartItemID, cal.CalendarID); if (cartCal != null) { chkIsComplete.Checked = cartCal.IsFulfilled; } chkIsCancelledDisplay.Checked = CurrentCartItem.IsCancelled; lvwAllrgs.DataSource = profile.GetAllergens(); lvwAllrgs.DataBind(); ProfileNotesEdit_AllergenNote.CurrentUserProfileId = profile.UserProfileID; ProfileNotesEdit_AllergenNote.Bind(); lvwPrefs.DataSource = profile.GetPreferences(); lvwPrefs.DataBind(); ProfileNotesEdit_PreferenceNote.CurrentUserProfileId = profile.UserProfileID; ProfileNotesEdit_PreferenceNote.Bind(); defaultMenuSelections = hccProgramDefaultMenu.GetBy(CurrentCalendarId, CurrentProgramId); days = BindWeeklyGlance(defaultMenuSelections, CurrentNumOfDays); BindDdlDays(days); BindForm(); } } catch (Exception) { throw; } }
void BindDropDownLists() { if (CurrentProgramId > 0 && CurrentCalendarId > 0) { hccProductionCalendar cal = hccProductionCalendar.GetById(CurrentCalendarId); hccMenu menu = cal.GetMenu(); if (menu == null) { lblFeedback.Text += "The selected delivery date does not have an associated menu. Please select a menu to use for the Production Calendar corresponding with this delivery date."; } else { hccProgram program = hccProgram.GetById(CurrentProgramId); if (program != null) { List <hccProgramMealType> mt = hccProgramMealType.GetBy(program.ProgramID); List <hccProgramMealType> requiredMealTypes = mt.Where(a => a.RequiredQuantity > 0).ToList(); // Display for 7 days for (int day = 1; day <= 7; day++) { Panel pnlDay = new Panel(); pnlDay.CssClass = "dayPanel"; HtmlGenericControl pName = new HtmlGenericControl("p"); pName.InnerHtml = "<center><b>Day " + day.ToString() + "</b></center>"; pnlDay.Controls.Add(pName); pnlDay.Controls.Add(new HtmlGenericControl("hr")); requiredMealTypes.ForEach(delegate(hccProgramMealType mealType) { if (day == 1) // list on the first item { HtmlGenericControl liType = new HtmlGenericControl("li"); liType.InnerText = ((Enums.MealTypes)mealType.MealTypeID).ToString() + ": " + mealType.RequiredQuantity.ToString(); ulReqTypes.Controls.Add(liType); HtmlGenericControl mealTypespan = new HtmlGenericControl("h4"); mealTypespan.InnerHtml = "<b>" + ((Enums.MealTypes)mealType.MealTypeID).ToString() + "</b>"; pnlDay.Controls.Add(mealTypespan); } else { HtmlGenericControl mealTypespan = new HtmlGenericControl("h4"); mealTypespan.InnerHtml = "<div> </div>"; pnlDay.Controls.Add(mealTypespan); } int i = 1; while (i <= mealType.RequiredQuantity) { DropDownList ddlMealItem = new DropDownList(); ddlMealItem.CssClass = "mealItemDdl"; ddlMealItem.Attributes.Add("calId", CurrentCalendarId.ToString()); ddlMealItem.Attributes.Add("progId", CurrentProgramId.ToString()); ddlMealItem.Attributes.Add("day", day.ToString()); ddlMealItem.Attributes.Add("type", mealType.MealTypeID.ToString()); ddlMealItem.Attributes.Add("ord", i.ToString()); List <hccMenuItem> menuItems = hccMenuItem.GetByMenuId(menu.MenuID) .Where(a => a.MealTypeID == mealType.MealTypeID).OrderBy(a => a.Name).ToList(); List <ListItem> menuItemsWithSizes = new List <ListItem>(); menuItems.ForEach(delegate(hccMenuItem mainItem) { menuItemsWithSizes.Add(new ListItem(mainItem.Name + " : " + Enums.CartItemSize.ChildSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.ChildSize).ToString())); menuItemsWithSizes.Add(new ListItem(mainItem.Name + " : " + Enums.CartItemSize.SmallSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.SmallSize).ToString())); menuItemsWithSizes.Add(new ListItem(mainItem.Name + " : " + Enums.CartItemSize.RegularSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.RegularSize).ToString())); menuItemsWithSizes.Add(new ListItem(mainItem.Name + " : " + Enums.CartItemSize.LargeSize.ToString(), mainItem.MenuItemID.ToString() + "-" + ((int)Enums.CartItemSize.LargeSize).ToString())); }); ddlMealItem.DataSource = menuItemsWithSizes; ddlMealItem.DataTextField = "Text"; ddlMealItem.DataValueField = "Value"; ddlMealItem.DataBind(); ddlMealItem.Items.Insert(0, new ListItem("None", "0")); pnlDay.Controls.Add(ddlMealItem); CheckBoxList menuitempreferencescheckBoxList = new CheckBoxList(); menuitempreferencescheckBoxList.CssClass = "mealItemchk"; menuitempreferencescheckBoxList.Attributes.Add("calId", CurrentCalendarId.ToString()); menuitempreferencescheckBoxList.Attributes.Add("progId", CurrentProgramId.ToString()); menuitempreferencescheckBoxList.Attributes.Add("day", day.ToString()); menuitempreferencescheckBoxList.Attributes.Add("type", mealType.MealTypeID.ToString()); menuitempreferencescheckBoxList.Attributes.Add("ord", i.ToString()); pnlDay.Controls.Add(menuitempreferencescheckBoxList); pnlDay.Controls.Add(new HtmlGenericControl("p")); i++; } pnlDay.Controls.Add(new HtmlGenericControl("hr")); }); HtmlGenericControl nut = new HtmlGenericControl("div"); nut.ID = "divNutrition" + day.ToString(); nut.Attributes.Add("day", day.ToString()); nut.Attributes.Add("class", "nutrition" + day); nut.InnerHtml = "<fieldset><legend>Calories</legend><p id='cals" + day.ToString() + "'>##Cals##</p></fieldset>" + "<fieldset><legend>Fat</legend><p id='fat" + day.ToString() + "'>##Fats##</p></fieldset>" + "<fieldset><legend>Protein</legend><p id='prtn" + day.ToString() + "'>##Ptrns##</p></fieldset>" + "<fieldset><legend>Carbohydrates</legend><p id='carb" + day.ToString() + "'>##Carbs##</p></fieldset>" + "<fieldset><legend>Dietary Fiber</legend><p id='fbr" + day.ToString() + "'>##Fbrs##</p></fieldset>" + "<fieldset><legend>Sodium</legend><p id='sod" + day.ToString() + "'>##Sod##</p></fieldset>"; pnlDay.Controls.Add(nut); pnlDefaultMenu.Controls.Add(pnlDay); } if (cal.DeliveryDate < DateTime.Now) { pnlDefaultMenu.Enabled = true; //[BWE] pnlDefaultMenu.Attributes.Add("class", "enabled"); //[BWE] } else { pnlDefaultMenu.Enabled = true; pnlDefaultMenu.Attributes.Remove("class"); } } } } }
protected override void SaveForm() { try { hccCart userCart = hccCart.GetById(this.PrimaryKeyIndex); MembershipUser user = Membership.GetUser(userCart.AspNetUserID); if (user != null) { hccProgramPlan selPlan = hccProgramPlan.GetById(int.Parse(ddlPlans.SelectedValue)); if (selPlan != null) { List <hccProgramOption> progOptions = hccProgramOption.GetBy(selPlan.ProgramID); hccProgramOption option = progOptions.Where(a => a.ProgramOptionID == (int.Parse(ddlOptions.SelectedValue))).SingleOrDefault(); hccProgram prog = hccProgram.GetById(selPlan.ProgramID); int numDays = selPlan.NumDaysPerWeek * selPlan.NumWeeks; decimal dailyPrice = selPlan.PricePerDay + option.OptionValue; decimal itemPrice = numDays * dailyPrice; int profileId = 0; //bool autoRenew = chkAutoRenew.Checked; string itemFullName = string.Empty; DateTime startDate = DateTime.Parse(ddlStartDates.SelectedItem.Text); itemFullName = string.Format("{0} - {1} - {2} - {3}", prog == null ? string.Empty : prog.Name, selPlan.Name, option.OptionText, startDate.ToShortDateString()); if (divProfiles.Visible) { profileId = int.Parse(ddlProfiles.SelectedValue); } else { profileId = hccUserProfile.GetParentProfileBy(userCart.AspNetUserID.Value).UserProfileID; } if (userCart != null && selPlan != null) { int currentQty = int.Parse(txtQuantity.Text.Trim()); hccCartItem existItem = hccCartItem.GetBy(userCart.CartID, itemFullName, profileId); if (existItem == null) { hccCartItem planItem = new hccCartItem { CartID = userCart.CartID, CreatedBy = (Guid)Membership.GetUser().ProviderUserKey, CreatedDate = DateTime.Now, IsTaxable = selPlan.IsTaxEligible, ItemDesc = selPlan.Description, ItemName = itemFullName, ItemPrice = itemPrice, ItemTypeID = (int)Enums.CartItemType.DefinedPlan, Plan_IsAutoRenew = false, //autoRenew, Plan_PlanID = selPlan.PlanID, Plan_ProgramOptionID = option.ProgramOptionID, DeliveryDate = startDate, UserProfileID = profileId, Quantity = currentQty, IsCompleted = false }; planItem.GetOrderNumber(userCart); planItem.Save(); hccProductionCalendar cal; for (int i = 0; i < selPlan.NumWeeks; i++) { cal = hccProductionCalendar.GetBy(planItem.DeliveryDate.AddDays(7 * i)); if (cal != null) { hccCartItemCalendar cartCal = new hccCartItemCalendar { CalendarID = cal.CalendarID, CartItemID = planItem.CartItemID, IsFulfilled = false }; cartCal.Save(); } else { BayshoreSolutions.WebModules.WebModulesAuditEvent.Raise( "No production calendar found for Delivery Date: " + planItem.DeliveryDate.AddDays(7 * i).ToShortDateString(), this); } } if (cbxRecurring.Checked) { var cartItemsRecurring = hccCartItem.GetBy(userCart.CartID); var filter = cartItemsRecurring.Where(ci => ci.ItemType == Enums.CartItemType.DefinedPlan); var roItem = new hccRecurringOrder(); roItem.CartID = planItem.CartID; roItem.CartItemID = planItem.CartItemID; roItem.UserProfileID = planItem.UserProfileID; roItem.AspNetUserID = userCart.AspNetUserID; roItem.PurchaseNumber = userCart.PurchaseNumber; roItem.TotalAmount = Math.Round(Convert.ToDecimal(Convert.ToDouble(planItem.ItemPrice) - Convert.ToDouble(planItem.ItemPrice) * 0.05), 2); roItem.Save(); if (planItem != null) { planItem.Plan_IsAutoRenew = true; planItem.Save(); } //foreach (var recurringOrder in filter.Select(item => new hccRecurringOrder //{ // CartID = item.CartID, // CartItemID = item.CartItemID, // UserProfileID = item.UserProfileID, // AspNetUserID = userCart.AspNetUserID, // PurchaseNumber = userCart.PurchaseNumber, // TotalAmount = userCart.TotalAmount //})) //{ // recurringOrder.Save(); //} } OnSaved(new ControlSavedEventArgs(planItem.CartItemID)); cbxRecurring.Checked = false; } else { if (existItem.AdjustQuantity(existItem.Quantity + currentQty)) { OnSaved(new ControlSavedEventArgs(existItem.CartItemID)); } cbxRecurring.Checked = false; } } } } //Page.Response.Redirect(Page.Request.Url.ToString()+ "#tabs9", true); } catch (Exception) { throw; } }
protected override void LoadForm() { try { CurrentProgram = hccProgram.GetById(this.PrimaryKeyIndex); if (!IsPostBack) { if (CurrentProgram == null) { CurrentProgram = new hccProgram(); } txtProgramName.Text = CurrentProgram.Name; txtProgramDesc.Text = CurrentProgram.Description; if (CurrentProgram.MoreInfoNavID.HasValue) { PagePicker1.SelectedNavigationId = CurrentProgram.MoreInfoNavID.Value; } if (!string.IsNullOrWhiteSpace(CurrentProgram.ImagePath)) { ImagePicker1.ImagePath = CurrentProgram.ImagePath; } chkDisplayOnWebsite.Checked = CurrentProgram.DisplayOnWebsite; //set req meal type vals List <hccProgramMealType> mt = hccProgramMealType.GetBy(CurrentProgram.ProgramID); foreach (GridViewRow row in gvwMealTypes.Rows) { if (row.RowType == DataControlRowType.DataRow) { int rowMealTypeId = int.Parse(gvwMealTypes.DataKeys[row.RowIndex].Value.ToString()); hccProgramMealType progMealType = mt.Where(a => a.ProgramID == this.PrimaryKeyIndex && a.MealTypeID == rowMealTypeId).SingleOrDefault(); TextBox txtReqQuantity = (TextBox)row.FindControl("txtReqQuantity"); if (txtReqQuantity != null && progMealType != null) { txtReqQuantity.Text = progMealType.RequiredQuantity.ToString(); } } } try { List <hccProgramOption> cr = hccProgramOption.GetBy(CurrentProgram.ProgramID); if (cr != null) { txtCalRange1Text.Text = cr.Single(a => a.OptionIndex == 1).OptionText; txtCalRange1Value.Text = cr.Single(a => a.OptionIndex == 1).OptionValue.ToString("f2"); chkIsDefault1.Checked = cr.Single(a => a.OptionIndex == 1).IsDefault; txtCalRange2Text.Text = cr.Single(a => a.OptionIndex == 2).OptionText; txtCalRange2Value.Text = cr.Single(a => a.OptionIndex == 2).OptionValue.ToString("f2"); chkIsDefault2.Checked = cr.Single(a => a.OptionIndex == 2).IsDefault; txtCalRange3Text.Text = cr.Single(a => a.OptionIndex == 3).OptionText; txtCalRange3Value.Text = cr.Single(a => a.OptionIndex == 3).OptionValue.ToString("f2"); chkIsDefault3.Checked = cr.Single(a => a.OptionIndex == 3).IsDefault; txtCalRange4Text.Text = cr.Single(a => a.OptionIndex == 4).OptionText; txtCalRange4Value.Text = cr.Single(a => a.OptionIndex == 4).OptionValue.ToString("f2"); chkIsDefault4.Checked = cr.Single(a => a.OptionIndex == 4).IsDefault; txtCalRange5Text.Text = cr.Single(a => a.OptionIndex == 5).OptionText; txtCalRange5Value.Text = cr.Single(a => a.OptionIndex == 5).OptionValue.ToString("f2"); chkIsDefault5.Checked = cr.Single(a => a.OptionIndex == 5).IsDefault; } } catch { } try { gvwPlans.DataSource = hccProgramPlan.GetBy(CurrentProgram.ProgramID, true); gvwPlans.DataBind(); } catch (Exception) { throw; } SetButtons(); } } catch (Exception) { throw; } }
protected override void SaveForm() { try { CurrentProgram = hccProgram.GetById(this.PrimaryKeyIndex); if (CurrentProgram == null) { CurrentProgram = new hccProgram { IsActive = true } } ; CurrentProgram.Name = txtProgramName.Text.Trim(); CurrentProgram.Description = txtProgramDesc.Text.Trim(); if (PagePicker1.SelectedNavigationId > 0) { CurrentProgram.MoreInfoNavID = PagePicker1.SelectedNavigationId; } else { CurrentProgram.MoreInfoNavID = 0; } if (!String.IsNullOrWhiteSpace(ImagePicker1.ImagePath)) { CurrentProgram.ImagePath = ImagePicker1.ImagePath; } CurrentProgram.DisplayOnWebsite = chkDisplayOnWebsite.Checked; if (this.PrimaryKeyIndex == 0) { CurrentProgram.Save(); this.PrimaryKeyIndex = CurrentProgram.ProgramID; } //set req meal type vals List <hccProgramMealType> mt = hccProgramMealType.GetBy(CurrentProgram.ProgramID); foreach (GridViewRow row in gvwMealTypes.Rows) { if (row.RowType == DataControlRowType.DataRow) { int rowMealTypeId = int.Parse(gvwMealTypes.DataKeys[row.RowIndex].Value.ToString()); hccProgramMealType progMealType = mt.Where(a => a.ProgramID == this.PrimaryKeyIndex && a.MealTypeID == rowMealTypeId).SingleOrDefault(); if (progMealType == null) { progMealType = new hccProgramMealType { ProgramID = this.PrimaryKeyIndex, MealTypeID = rowMealTypeId, RequiredQuantity = 0 } } ; TextBox txtReqQuantity = (TextBox)row.FindControl("txtReqQuantity"); if (txtReqQuantity != null) { progMealType.RequiredQuantity = string.IsNullOrWhiteSpace(txtReqQuantity.Text.Trim()) ? 0 : int.Parse(txtReqQuantity.Text.Trim()); } progMealType.Save(); } } List <hccProgramOption> cr = hccProgramOption.GetBy(CurrentProgram.ProgramID); var optionValue = 0m; hccProgramOption opt; try { opt = cr.FirstOrDefault(x => x.OptionIndex == 1); //hccProgramOption opt1 = cr.SingleOrDefault(a => a.OptionIndex == 1); optionValue = txtCalRange1Value.Text.Trim() != "" ? decimal.Parse(txtCalRange1Value.Text.Trim()) : 0m; if (opt == null) { opt = new hccProgramOption { OptionIndex = 1, ProgramID = CurrentProgram.ProgramID, OptionText = txtCalRange1Text.Text.Trim(), OptionValue = optionValue, IsDefault = chkIsDefault1.Checked }; //opt.Save(); } else { opt.OptionIndex = 1; opt.ProgramID = CurrentProgram.ProgramID; opt.OptionText = txtCalRange1Text.Text.Trim(); opt.OptionValue = optionValue; opt.IsDefault = chkIsDefault1.Checked; }; opt.Save(); } catch { } try { opt = cr.FirstOrDefault(x => x.OptionIndex == 2); //hccProgramOption opt2 = cr.SingleOrDefault(a => a.OptionIndex == 2); optionValue = txtCalRange2Value.Text.Trim() != "" ? decimal.Parse(txtCalRange2Value.Text.Trim()) : 0m; if (opt == null) { opt = new hccProgramOption { OptionIndex = 2, ProgramID = CurrentProgram.ProgramID, OptionText = txtCalRange2Text.Text.Trim(), OptionValue = optionValue, IsDefault = chkIsDefault2.Checked }; } else { opt.OptionIndex = 2; opt.ProgramID = CurrentProgram.ProgramID; opt.OptionText = txtCalRange2Text.Text.Trim(); opt.OptionValue = optionValue; opt.IsDefault = chkIsDefault2.Checked; }; opt.Save(); } catch { } try { //hccProgramOption opt3 = cr.SingleOrDefault(a => a.OptionIndex == 3); opt = cr.FirstOrDefault(x => x.OptionIndex == 3); optionValue = txtCalRange3Value.Text.Trim() != "" ? decimal.Parse(txtCalRange3Value.Text.Trim()) : 0m; if (opt == null) { opt = new hccProgramOption { OptionIndex = 3, ProgramID = CurrentProgram.ProgramID, OptionText = txtCalRange3Text.Text.Trim(), OptionValue = optionValue, IsDefault = chkIsDefault3.Checked }; //opt3.Save(); } else { opt.OptionIndex = 3; opt.ProgramID = CurrentProgram.ProgramID; opt.OptionText = txtCalRange3Text.Text.Trim(); opt.OptionValue = optionValue; opt.IsDefault = chkIsDefault3.Checked; }; opt.Save(); } catch { } try { opt = cr.FirstOrDefault(a => a.OptionIndex == 4); optionValue = txtCalRange4Value.Text.Trim() != "" ? decimal.Parse(txtCalRange4Value.Text.Trim()) : 0m; if (opt == null) { opt = new hccProgramOption { OptionIndex = 4, ProgramID = CurrentProgram.ProgramID, OptionText = txtCalRange4Text.Text.Trim(), OptionValue = optionValue, IsDefault = chkIsDefault4.Checked }; //opt4.Save(); } else { opt.OptionIndex = 4; opt.ProgramID = CurrentProgram.ProgramID; opt.OptionText = txtCalRange4Text.Text.Trim(); opt.OptionValue = optionValue; opt.IsDefault = chkIsDefault4.Checked; }; opt.Save(); } catch { } try { opt = cr.FirstOrDefault(a => a.OptionIndex == 5); optionValue = txtCalRange5Value.Text.Trim() != "" ? decimal.Parse(txtCalRange5Value.Text.Trim()) : 0m; if (opt == null) { opt = new hccProgramOption { OptionIndex = 5, ProgramID = CurrentProgram.ProgramID, OptionText = txtCalRange5Text.Text.Trim(), OptionValue = optionValue, IsDefault = chkIsDefault5.Checked }; //opt5.Save(); } else { opt.OptionIndex = 5; opt.ProgramID = CurrentProgram.ProgramID; opt.OptionText = txtCalRange5Text.Text.Trim(); opt.OptionValue = optionValue; opt.IsDefault = chkIsDefault5.Checked; }; opt.Save(); } catch { } CurrentProgram.Save(); this.OnSaved(new ControlSavedEventArgs(CurrentProgram.ProgramID)); } catch { throw; } Response.Redirect("~/WebModules/ShoppingCart/Admin/ProgramManager.aspx", false); }