// GET: Basket
        public ActionResult Index()
        {
            BasketViewModel model = new BasketViewModel { Items = new List<BasketItemViewModel>() };
            Basket basket = GetCurrentUsersBasket();

            if (basket != null)
            {
                foreach (BasketItem basketItem in basket.Items)
                {
                    Item item = _itemRepository.Get(basketItem.ItemId);
                    if (item != null)
                    {
                        BasketItemViewModel itemModel = new BasketItemViewModel
                        {
                            Quantity = basketItem.Quantity,
                            Name = item.Name,
                            Cost = item.Price * basketItem.Quantity,
                            ItemId = basketItem.ItemId
                        };
                        model.Items.Add(itemModel);
                    }
                }
            }

            model.TotalCost = model.Items.Sum(c => c.Cost);
            return View(model);
        }
        public ActionResult CheckOut(BasketViewModel model)
        {
            Basket basket = _basketRepository.Get(User.Identity.Name);

            if (basket != null)
            {
                Order order = new Order
                {
                    Items = new List<OrderLine>(),
                    Status = OrderStatus.Draft,
                    UserId = basket.UserId,
                    OrderDate = DateTime.Today
                };

                foreach (BasketItem basketItem in basket.Items)
                {
                    OrderLine orderLine = new OrderLine { itemId = basketItem.ItemId, Quantity = basketItem.Quantity };
                    Item item = _itemRepository.Get(basketItem.ItemId);
                    orderLine.unitPrice = item.Price;
                    orderLine.Name = item.Name;
                    order.Items.Add(orderLine);
                }
                _orderRepository.Create(order);

                basket.Items.Clear();
                _basketRepository.Delete(basket.Id);

                return Redirect(Url.Action("Confirm", "Order", new {orderId = order.Id}));


            }
            return View(model);
        }