Beispiel #1
0
        public ActionResult TransferBudget(int id, decimal?remainingBudget = null)
        {
            var isAdmin = User.IsInRole(Constants.AdminRole);
            var model   = new TransferBudgetViewModel {
                CurrentAdId = id, RemainingBudget = remainingBudget
            };

            PopulateDropDownListForTransfer(isAdmin, id);
            return(PartialView("_TransferBudget", model));
        }
Beispiel #2
0
        [HttpPost] //ValidateAntiForgeryToken
        public ActionResult TransferBudget(TransferBudgetViewModel model)
        {
            if (!ModelState.IsValid)
            {
                var isAdmin = User.IsInRole(Constants.AdminRole);
                PopulateDropDownListForTransfer(isAdmin, model.CurrentAdId);
                return(PartialView("_TransferBudget", model));
            }

            _adsService.TransferBudget(model.CurrentAdId, model.SelectedAdvertisementId.Value,
                                       model.Amount.Value, model.TransferToAnother, out string errorMessage);

            if (!string.IsNullOrEmpty(errorMessage))
            {
                var isAdmin = User.IsInRole(Constants.AdminRole);
                PopulateDropDownListForTransfer(isAdmin, model.CurrentAdId);
                model.ErrorMessage = errorMessage;
                return(PartialView("_TransferBudget", model));
            }

            return(Json(new { Success = true }));
        }