public ActionResult Send(ContactForm contactForm)
 {
     if (!ModelState.IsValid)
     {
         return(View("Index", contactForm));
     }
     else
     {
         //send  email
         EmailsHelper.SendEmail(db.Settings.FirstOrDefault(s => s.Key.Equals(Constant.ApplicationEmail, StringComparison.InvariantCultureIgnoreCase)).Value, "Formularz kontaktowy", ($"Zgłoszenie od {contactForm.FirstName} {contactForm.LastName} nr.tel: {contactForm.TextArea} o treści {contactForm.TextArea}"));
         return(RedirectToAction("Index", "Home"));
     }
 }
Exemple #2
0
        public ActionResult Create([Bind(Include = "Id,Payment,Shipment,Address")] Order order)
        {
            if (ModelState.IsValid)
            {
                if (Request.Cookies.AllKeys.Contains("Cart"))
                {
                    var cookie = Request.Cookies["Cart"];
                    var items  = JsonConvert.DeserializeObject <List <CartItem> >(cookie.Value);

                    var userId = User.Identity.GetUserId();

                    order.CreationDate = DateTime.Now;
                    order.UserId       = userId;
                    order.Status       = "Nowe";

                    order.Order_Product = items.Select(i => new Order_Product
                    {
                        ProductId = i.Product.Id,
                        Amount    = i.Count
                    }).ToList();

                    db.Orders.Add(order);
                    db.SaveChanges();

                    Response.Cookies.Remove("Cart");
                    cookie.Expires = DateTime.Now.AddDays(-10);
                    cookie.Value   = null;
                    Response.SetCookie(cookie);

                    var receiverEmail = db.AspNetUsers.Find(userId)?.Email;

                    var    message = string.Empty;
                    double sum     = 0;

                    foreach (var product in items)
                    {
                        sum     += (double)(product.Count * product.Product.Price);
                        message += $"Nazwa produktu: {product.Product.Name}, Cena: {product.Product.Price}, Ilosc: {product.Count}, Suma: {((double)(product.Count * product.Product.Price)).ToString()}";
                    }

                    message += $"Suma zamówienia: {sum.ToString()}, Sposób dostawy: {order.Shipment}, Metoda płatności: {order.Payment}";

                    EmailsHelper.SendEmail(receiverEmail, "Potwierdzenie zamówienia", message);

                    return(RedirectToAction("Index"));
                }
            }

            return(View(order));
        }
Exemple #3
0
        public ActionResult Edit(Order order)
        {
            if (ModelState.IsValid)
            {
                var currentOrder = db.Orders.Find(order.Id);
                var oldStatus    = currentOrder.Status;
                currentOrder.Status = order.Status;
                db.SaveChanges();

                var receiverEmail = db.AspNetUsers.Find(order.UserId)?.Address;
                if (!string.IsNullOrEmpty(receiverEmail))
                {
                    EmailsHelper.SendEmail(receiverEmail, "Zmiana statusu zamówienia", $"Status Twojego zamówienia został zmieniony z '{oldStatus}' na '{order.Status}'");
                }

                return(RedirectToAction("IndexAdmin"));
            }
            ViewBag.UserId = new SelectList(db.AspNetUsers, "Id", "Email", order.UserId);
            return(View(order));
        }