Пример #1
0
        //EventContextDB db = new EventContextDB();


        // The HttpContext object is unique to every session
        // As long as browser is not close to start a new session user will have access to their order and or cart
        public static OrderCart GetOrder(HttpContextBase context)   // OrderCartId is one of the properties
        {
            OrderCart order = new OrderCart();

            order.OrderCartId = order.GetOrderId(context);
            return(order);
        }
Пример #2
0
        public ActionResult OrderSummary(int orderNumber)
        {
            OrderCart order = OrderCart.GetCart(this.HttpContext);
            Order     o     = order.GetOrder(orderNumber);

            return(View(o));
        }
Пример #3
0
        // GET: Order
        public ActionResult Index()
        {
            OrderCart cart = OrderCart.GetOrder(this.HttpContext);

            if (cart.GetOrderCount() > 0)
            {
                OrderCartViewModel vm = new OrderCartViewModel()
                {
                    OrderItems = cart.GetOrderItems(),
                    OrderTotal = cart.GetOrderTotal()
                };

                return(View(vm));
            }
            else
            {
                OrderCartViewModel vm = new OrderCartViewModel()
                {
                    OrderItems = cart.GetOrderItems(),
                    OrderTotal = cart.GetOrderTotal(),
                    Message    = "No tickets ordered."
                };

                return(View(vm));
            }
        }
Пример #4
0
        // GET: Order
        public ActionResult Index()
        {
            OrderCart          cart = OrderCart.GetCart(this.HttpContext);
            OrderCartViewModel vm   = new OrderCartViewModel()
            {
                OrderItems = cart.GetCartItems()
            };

            return(View(vm));
        }
        // GET: Order
        public ActionResult Index()
        {
            OrderCart          order = OrderCart.GetOrder(this.HttpContext);
            OrderCartViewModel vm    = new OrderCartViewModel();

            //{
            //    OrderItems = order.GetOrderItems();     // This doesn'd take any parameter
            //    OrderTotal = GetOrderTotal()
            // }
            return(View());
        }
Пример #6
0
        public ActionResult AddToCart(int id, int count)
        {
            OrderCart cart      = OrderCart.GetCart(HttpContext);
            var       atcResult = cart.AddToCart(id, count);

            if (atcResult == 0)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            return(RedirectToAction("Summary", new { id = atcResult }));
        }
Пример #7
0
        public ActionResult CancelOrder(int id)
        {
            OrderCart cart = OrderCart.GetCart(HttpContext);

            string newStatus = cart.CancelOrder(id);

            OrderCartRemoveViewModel vm = new OrderCartRemoveViewModel()
            {
                DeleteId = id,
                Status   = newStatus
            };

            return(Json(vm));
        }
Пример #8
0
        public ActionResult RemoveOrder(int id)
        {
            OrderCart order      = OrderCart.GetCart(this.HttpContext);
            string    eventTitle = db.Orders.SingleOrDefault(o => o.OrderId == id).Events.Title;

            order.RemoveFromCart(id);

            OrderCartRemoveViewModel vm = new OrderCartRemoveViewModel()
            {
                DeleteId = id,
                Message  = "Your order for " + eventTitle + " has been cancelled."
            };

            return(Json(vm));
        }
Пример #9
0
        public ActionResult RemoveFromCart(int id)
        {
            OrderCart cart = OrderCart.GetOrder(this.HttpContext);

            Event someEvent = db.Orders.SingleOrDefault(c => c.RecordId == id).EventSelected;

            cart.RemoveFromCart(id);

            OrderCartRemoveViewModel vm = new OrderCartRemoveViewModel()
            {
                DeleteId = id,
                Message  = "Your order has been cancelled."
            };

            return(Json(vm));
        }
Пример #10
0
        public ActionResult OrderSummary(int id)
        {
            OrderCart    cart    = OrderCart.GetOrder(this.HttpContext);
            List <Order> myitems = cart.GetOrderItems();

            Order myorder = (Order)myitems.SingleOrDefault(m => m.EventId == id);

            CheckOutViewModel vm = new CheckOutViewModel()
            {
                CheckOutEvent   = myorder.EventSelected,
                NumberOfTickets = myorder.NumberOfTickets,
                OrderNumber     = myorder.OrderNumber
            };

            return(View(vm));
        }
Пример #11
0
        public ActionResult AddOrder(OrderSummaryViewModel vm)
        {
            OrderCart order = OrderCart.GetCart(this.HttpContext);

            int q = vm.SelectedOrderTicketQuantity;

            if (q > 0)
            {
                //adds to cart and gets order number
                int oNumber = order.AddToCart(vm.EventId, q);
                if (oNumber > 0)
                {
                    return(RedirectToAction("OrderSummary", new { orderNumber = oNumber }));
                }
            }
            return(Redirect("Index"));
        }
Пример #12
0
        public ActionResult RemoveFromOrder(int id)
        {
            OrderCart cart = OrderCart.GetOrder(this.HttpContext);

            string eventTitle = db.Orders.SingleOrDefault(a => a.RecordId == id).EventSelected.Title;

            cart.RemoveFromCart(id);


            OrderCartRemoveViewModel vm = new OrderCartRemoveViewModel()
            {
                DeleteId = id,
                Message  = "Your order for " + eventTitle + " has been cancelled.",
                Status   = "Cancelled"
            };

            return(Json(vm));
        }
Пример #13
0
        public ActionResult AddToOrder(int id, int NumberOfTickets)
        {
            int routeId = id;

            OrderCart cart = OrderCart.GetOrder(this.HttpContext);

            if (cart.TicketsAreAvailable(id, NumberOfTickets))
            {
                cart.AddToCart(id, NumberOfTickets);

                return(RedirectToAction("/OrderSummary", new { id = routeId }));
            }
            else
            {
                CheckOutViewModel vm = new CheckOutViewModel
                {
                    CheckOutEvent = db.Events.SingleOrDefault(a => a.EventId == id),
                    Message       = "because your order exceeds available Tickets"
                };

                return(View("CannotRegister", vm));
            }
        }