public IActionResult Edit(RetainerSubscription retainerSubscription)
 {
     TempData.Keep();
     if (!ModelState.IsValid)
     {
         return(View(retainerSubscription));
     }
     _retainerSubscriptionRepository.Save(retainerSubscription);
     TempData["updated"] = true;
     return(RedirectToAction("Admin", new { filter = TempData["filter"] }));
 }
        public IActionResult New(RetainerSubscription RetainerSubscription, string ClientName, bool IsEnglish, bool IsClientSelected)
        {
            if (!ModelState.IsValid)
            {
                NewRetainerSubscriptionViewModel vm = new NewRetainerSubscriptionViewModel
                {
                    IsClientSelected     = IsClientSelected,
                    RetainerSubscription = RetainerSubscription,
                    ClientName           = ClientName,
                    IsEnglish            = IsEnglish,
                    Retainers            = _retainerRepository.Retainers.Where(r => r.Active)
                };
                return(View(vm));
            }

            var currentUserIdClaim = HttpContext.User.Claims.Where(c => c.Type == ClaimTypes.NameIdentifier).First();

            //The creator is the current user
            RetainerSubscription.CreatorId = Convert.ToInt32(currentUserIdClaim.Value);
            _retainerSubscriptionRepository.Save(RetainerSubscription);
            TempData["added"] = true;
            return(RedirectToAction(nameof(New)));
        }