public ActionResult Transfer(Guid itemId) { if (!Utilities.IsValidCart()) { return(RedirectToAction("Index", "home")); } TransferAction action = (TransferAction)SessionManager.CurrentCart.ActionItems[itemId].ActionObject; Registration existingReg = _service.GetRegistrationById(action.RegistrationId); var vm = new vmRegistration_Transfer { ItemId = itemId, FirstName = action.FirstName, LastName = action.LastName, Email = action.Email, EventOverview = _service.GetEventOverviewById(existingReg.EventWave.EventDate.EventId) }; return(View(vm)); }
public ActionResult Transfer(vmRegistration_Transfer model) { if (!Utilities.IsValidCart()) { return(RedirectToAction("Index", "home")); } var action = SessionManager.CurrentCart.ActionItems[model.ItemId]; var transfer = (TransferAction)action.ActionObject; bool isValid = true; // make sure to not transfer to self. if (model.FirstName.Replace(" ", "") == CurrentUser.FirstName.Replace(" ", "") && model.LastName.Replace(" ", "") == CurrentUser.LastName.Replace(" ", "")) { List <ServiceError> errors = new List <ServiceError>(); errors.Add(new ServiceError("Can't transfer run to yourself...")); Utilities.AddModelStateErrors(ModelState, errors); isValid = false; } if (ModelState.IsValid && isValid) { transfer.FirstName = model.FirstName; transfer.LastName = model.LastName; transfer.Email = model.Email; action.ItemReadyForCheckout = true; return(RedirectToAction("checkout", "cart")); } Registration existingReg = _service.GetRegistrationById(transfer.RegistrationId); model.EventOverview = _service.GetEventOverviewById(existingReg.EventWave.EventDate.EventId); return(View(model)); }