public IActionResult LicenceCreate(CreateLicenceViewModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } LicenceType licenceType = _licenceProvider.LicenceTypesGet().Where(l => l.Id == model.LicenceType).FirstOrDefault(); if (licenceType == null) { ModelState.AddModelError(String.Empty, Languages.LanguageStrings.LicenceTypeInvalid); } if (ModelState.IsValid) { switch (_licenceProvider.LicenceTrialCreate(UserId(), licenceType)) { case Middleware.LicenceCreate.Existing: GrowlAdd(String.Format(Languages.LanguageStrings.LicenceCreateTrialExists, licenceType.Description)); break; case Middleware.LicenceCreate.Failed: GrowlAdd(Languages.LanguageStrings.LicenceCreateTrialFailed); break; case Middleware.LicenceCreate.Success: GrowlAdd(Languages.LanguageStrings.LicenceCreatedTrial); break; } return(RedirectToAction(nameof(Licences))); } model.Breadcrumbs = GetBreadcrumbs(); model.CartSummary = GetCartSummary(); return(View(model)); }
public IActionResult LicenceCreate(CreateLicenceViewModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } LicenceType licenceType = _licenceProvider.LicenceTypesGet().Where(l => l.Id == model.LicenceType).FirstOrDefault(); if (licenceType == null) { ModelState.AddModelError(String.Empty, "Invalid Licence Type"); } if (ModelState.IsValid) { switch (_licenceProvider.LicenceTrialCreate(UserId(), licenceType)) { case Middleware.LicenceCreate.Existing: GrowlAdd($"You already have a trial licence for {licenceType.Description}"); break; case Middleware.LicenceCreate.Failed: GrowlAdd("Failed to create a trial licence"); break; case Middleware.LicenceCreate.Success: GrowlAdd("Trial licence succesfully created"); break; } return(RedirectToAction(nameof(Licences))); } return(View(model)); }