Beispiel #1
0
        /// <summary>
        /// Refund film from order.
        /// </summary>
        /// <param name="ordernr">Ordernr to remove from</param>
        /// <param name="title">Film title to remove</param>
        /// <returns>Orders view</returns>
        public ActionResult RefundFilm(int ordernr, string title)
        {
            try
            {
                #region IsAdminCheck

                if (Session["Kunde"] == null)
                {
                    return(RedirectToAction("Frontpage", "Film"));
                }

                var user   = (UserVM)Session["Kunde"];
                int userId = user.Id;
                if (!_UserLogic.IsAdmin(userId))
                {
                    return(RedirectToAction("Frontpage", "Film"));
                }

                #endregion IsAdminCheck

                if (_orderLogic.RefundFilm(ordernr, title))
                {
                    var orders =
                        _orderLogic.RemoveFilmFromOrder(ordernr, title,
                                                        (List <ExpandedOrderVM>)TempData["ExpandedOrderVM"]);
                    TempData["message"] = title + " ble refundert fra ordre " + ordernr;
                    return(View("Orders", orders));
                }

                TempData["errormessage"] = "Noe gikk galt under fjerningen av film " + title + " fra ordre " + ordernr;
                return(View("Orders", (List <ExpandedOrderVM>)TempData["ExpandedOrderVM"]));
            }
            catch (DatabaseErrorException e)
            {
                TempData["message"]      = "Databasefeil. Se errorlog.";
                TempData["errormessage"] = e.GetMessage();
                return(RedirectToAction("AdminFrontPage"));
            }
        }