// GET: Checkout public ActionResult Index(Menu[] menu) { ViewBag.setting = context.Settings.FirstOrDefault(); vmCheckout checkout = new vmCheckout(); checkout.Tags = context.Tags.ToList(); checkout.BlogCategories = context.BlogCategories.ToList(); checkout.InstaFeeds = context.InstaFeeds.ToList(); checkout.Blogs = context.Blogs.ToList(); HttpCookie cookie = Request.Cookies["Card"]; if (cookie != null) { List <string> Card = cookie.Value.Split(',').ToList(); Card.RemoveAt(Card.Count - 1); ViewBag.Card = Card; ViewBag.CardCount = Card.Count; List <Menu> Menu = new List <Menu>(); foreach (var item in menu) { foreach (var item2 in context.Menus.ToList()) { if (item2.Id == item.Id) { item2.Quantity = item.Quantity; Menu.Add(item2); } } } checkout.Menus = Menu; } else { ViewBag.CardCount = 0; } return(View(checkout)); }
public object Checkout(vmCheckout model) { string paymentStatus = string.Empty; var gateway = config.GetGateway(); var request = new TransactionRequest { Amount = model.Price, PaymentMethodNonce = model.PaymentMethodNonce, Options = new TransactionOptionsRequest { SubmitForSettlement = true } }; Result <Transaction> result = gateway.Transaction.Sale(request); if (result.IsSuccess()) { paymentStatus = "Succeded"; //Do Database Operations Here } else { string errorMessages = ""; foreach (ValidationError error in result.Errors.DeepAll()) { errorMessages += "Error: " + (int)error.Code + " - " + error.Message + "\n"; } paymentStatus = errorMessages; } return(paymentStatus); }