public Order CreateOrder(Order newOrder, string userId)
        {
            var cart = DownloadCart();

            newOrder.DateAdded = DateTime.Now;
            newOrder.UserId    = userId;

            db.Orders.Add(newOrder);

            if (newOrder.PositionsOrder == null)
            {
                newOrder.PositionsOrder = new List <PositionOrder>();
            }

            decimal cartValue = 0;

            foreach (var elementCart in cart)
            {
                var newPositionOrder = new PositionOrder()
                {
                    AudiobookId = elementCart.Audiobook.AudiobookId,
                    Amount      = elementCart.Amount,
                    TotalPrice  = elementCart.Audiobook.PriceAudiobook
                };

                cartValue += (elementCart.Amount * elementCart.Audiobook.PriceAudiobook);
                newOrder.PositionsOrder.Add(newPositionOrder);
            }

            newOrder.OrderValue = cartValue;
            db.SaveChanges();
            return(newOrder);
        }
        public OrderStatus ChangeStateOrders(Order order)
        {
            Order orderToModify = db.Orders.Find(order.OrderId);

            orderToModify.OrderStatus = order.OrderStatus;
            db.SaveChanges();

            if (orderToModify.OrderStatus == OrderStatus.Zrealizowane)
            {
                OrderRealizedEmail email = new OrderRealizedEmail();
                email.To      = orderToModify.Email;
                email.From    = "*****@*****.**";
                email.OrderId = orderToModify.OrderId;
                email.Send();
            }
            return(order.OrderStatus);
        }