protected void OnTextChangedArticleAmount(object sender, EventArgs e) { var textBox = (TextBox)sender; var repeaterItem = (RepeaterItem)textBox.Parent; short quantity; var lblError = (Label)repeaterItem.FindControl("lblQuantityError"); var hfOrginalAmount = (HiddenField)repeaterItem.FindControl("hfOrginalAmount"); if (!short.TryParse(textBox.Text, out quantity) || quantity < 1) { textBox.Text = hfOrginalAmount.Value; lblError.Text = "Not a valid amount:"; lblError.Visible = true; return; } else { lblError.Visible = false; } var hfArticleID = (HiddenField)repeaterItem.FindControl("hfArticleID"); var productID = int.Parse(hfArticleID.Value); var shopingCart = (ShopingCart)Session[WebShopController.SessionKeyShopingCart]; WebShopController.AddOrUpdateProductToCart(ref shopingCart, productID, quantity, true); UppdateCartAndSession(shopingCart); }
protected void btnAddToCart_Click(object sender, EventArgs e) { ShopingCart shopingCart = (ShopingCart)Session[WebShopController.SessionKeyShopingCart]; if (shopingCart == null) { shopingCart = new ShopingCart(); } int productID = -1; if (!int.TryParse(hfActiveProduct.Value, out productID)) { // TODO: Implementera felkod om ProductID inte är en sifra (HidenField går inte att manupura på framsidan(?)). } short productQty; if (!short.TryParse(txtArticleAmount.Text, out productQty)) { // TODO: Implementera felkod om antalet inte är en sifra. } if (WebShopController.AddOrUpdateProductToCart(ref shopingCart, productID, productQty)) { //TODO: Implementera felkod om varan inte kan läggas i korgen. } Session[WebShopController.SessionKeyShopingCart] = shopingCart; WebShopController.UppdateMiniCart(Master, shopingCart); }
private void UppdateCartAndSession(ShopingCart shopingCart) { Session[WebShopController.SessionKeyShopingCart] = shopingCart; FillCartItemsAndPrice(shopingCart); WebShopController.UppdateMiniCart(Master, shopingCart); }
private void FillShopingCart() { using (var db = new AvensiaWebshopEntities()) { var shopingCart = (ShopingCart)Session[WebShopController.SessionKeyShopingCart] ?? new ShopingCart(); WebShopController.UppdateMiniCart(this, shopingCart); } }
private void ApplicationErrorMail(Exception ex) { string errorMessage = "Error description:\r\n" + ex; var fromAddress = new MailAddress("*****@*****.**", "FlyCycle Bot"); var toAddress = new MailAddress("*****@*****.**"); var subject = "Sidfel!"; var body = errorMessage + " Please reestablish the webpage asap"; WebShopController.SendMail(fromAddress, toAddress, subject, body, MailPriority.High); }
private void SendForm() { MailAddress fromAddress = new MailAddress(txtEmail.Text, $"{txtFirstName.Text} {txtForLastName.Text}"); string txtFromBody = $"Förnamn:{txtFirstName.Text},\n\r" + $"Efternamn:{txtForLastName.Text}\n\r" + $"E-post:{txtEmail.Text}\n\r" + $"Mail inehåll:\n\r" + txtMailContent.Text; string DroppDownAlternative = ddlOptions.Text; MailAddress toAddress = new MailAddress("*****@*****.**", "FlyCycle Suport"); WebShopController.SendMail(fromAddress, toAddress, DroppDownAlternative, txtFromBody); }
protected void repBasket_ItemCommand(object source, RepeaterCommandEventArgs e) { var shopingCart = (ShopingCart)Session[WebShopController.SessionKeyShopingCart]; switch (e.CommandName) { case "RemoveItem": WebShopController.RemoveProductFromCart(ref shopingCart, int.Parse(e.CommandArgument.ToString())); break; } UppdateCartAndSession(shopingCart); FillCartItemsAndPrice(shopingCart); }
private void FillProductInfo(int productModelId, int productID) { using (var db = new AvensiaWebshopEntities()) { var products = db.vProductAndDescripttionExtendedENOnly.Where(p => p.ProductModelID == productModelId) .OrderBy(product => product.Name); var activeProduct = (productID < 0) ? products.FirstOrDefault() : products.SingleOrDefault(p => p.ProductID == productID); hfActiveProduct.Value = activeProduct.ProductID.ToString(); ltPageHeader.Text = $"{activeProduct.ProductModel} {(activeProduct.Size != null ? $"Storlek {activeProduct.Size} " : string.Empty)}{(activeProduct.Color ?? string.Empty)}"; imgMainImage.ImageUrl = $"/Media.ashx?image={activeProduct.LargePhotoFileName}"; imgMainImage.AlternateText = activeProduct.Name; lbArticlePrice.Text = $"{activeProduct.ListPrice:N2}"; if (activeProduct.DiscountActive != null && activeProduct.DiscountActive.Value) { ltArticleOrginalPrice.Text = $"{activeProduct.ListPrice:N2}"; lbArticlePrice.Text = $"{WebShopController.GetProductPrice(activeProduct):N2}"; lbArticlePrice.CssClass = "articleDiscountedPrice"; panelArticleOriginalPrice.Visible = true; } else { lbArticlePrice.CssClass = string.Empty; panelArticleOriginalPrice.Visible = false; } ltArticleDescription.Text = activeProduct.Description; ltArticleNumber.Text = activeProduct.ProductNumber; if (products.Count() > 1 && (activeProduct.Color != null || activeProduct.Size != null)) { UpdateArticleChoiseDropDown(products, activeProduct); } } }
private void SendComfirmationMail(SalesOrderHeader salesOrderHeader, Customer customer) { try { var subject = "Thank you for ordering form FlyCycles"; var body = $"We have recived your order with the order ID {salesOrderHeader.SalesOrderNumber}.\r\n" + $"Best regards\r\n" + $"FlyCycles"; WebShopController.SendMail(WebShopController.SuportMail, new MailAddress(customer.EmailAddress, $"{customer.FirstName} {customer.LastName}"), subject, body); } catch (Exception ex) { // TODO: Logg order confirm mail error. panelMail.Visible = false; panelMailError.Visible = true; } }
private void LoadCampaigns() { repCampaign.DataSource = WebShopController.GetCampaigns(1); repCampaign.DataBind(); }
private void PopulatePopularProduct() { repPopularItems.DataSource = WebShopController.GetPopularProducts(6); repPopularItems.DataBind(); }