private void JoinExistingTeam(vmRegistration_CreateTeam model, Registration reg) { if (string.IsNullOrEmpty(model.TeamCode)) { ModelState.AddModelError("TeamCode", "Team Code is Required."); ViewBag.showTeamCode = "true"; return; } var existingTeam = _service.GetTeamByCode(model.EventId, model.TeamCode); if (existingTeam != null) reg.TeamId = existingTeam.TeamId; else ModelState.AddModelError("TeamCode", "There is no team using this code for this event."); }
private bool CheckAddProcessingFee(Registration reg, Guid itemId) { if (reg.RegistrationType == RegistrationType.CancerRegistration) return false; var processingActions = SessionManager.CurrentCart.ActionItems.Where(x => (x.Value as ActionItem).ActionType == CartActionType.ProcessingFee).ToList(); return processingActions.Select(proc => proc.Value.ActionObject as ProcessingFeeAction).All(processesAction => processesAction.RegItemGuid != itemId); }
private void CreateNewTeam(vmRegistration_CreateTeam model, Registration reg) { if (string.IsNullOrEmpty(model.TeamName)) { ModelState.AddModelError("TeamName", "Team Name is Required"); return; } Match match = Regex.Match(model.TeamName, @"([a-zA-Z].*?){3}", RegexOptions.IgnoreCase); if (!match.Success) { ModelState.AddModelError("TeamName", "Team Name must contain at least 3 letters."); return; } Team newTeam = new Team {EventId = model.EventId, Name = model.TeamName, CreatorID = CurrentUser.UserId}; ServiceResult tempTeamResult = _service.GenerateTempTeam(newTeam); if (!tempTeamResult.Success) Utilities.AddModelStateErrors(ModelState, tempTeamResult.GetServiceErrors()); else reg.Team = newTeam; }
private bool ValidateRegistration(Registration registrationToValidate, ServiceResult result) { return result.Success; }
public ServiceResult ChangeEvent(int registrationId, int eventWaveId, int? cartItemId, string confirmationCode) { var result = new ServiceResult(); try { Registration existingReg = _repository.Registrations.Find(x => x.RegistrationId == registrationId); existingReg.RegistrationStatus = RegistrationStatus.Changed; existingReg.DateUpdated = DateTime.Now; var newReg = new Registration { EventWaveId = eventWaveId, RegistrationStatus = RegistrationStatus.Active, RegistrationType = existingReg.RegistrationType, ParentRegistrationId = existingReg.RegistrationId, FirstName = existingReg.FirstName, LastName = existingReg.LastName, Address1 = existingReg.Address1, Address2 = existingReg.Address2, Locality = existingReg.Locality, RegionId = existingReg.RegionId, PostalCode = existingReg.PostalCode, PacketDeliveryOption = existingReg.PacketDeliveryOption, Email = existingReg.Email, Phone = existingReg.Phone, EmergencyContact = existingReg.EmergencyContact, EmergencyPhone = existingReg.EmergencyPhone, SpecialNeeds = existingReg.SpecialNeeds, TShirtSize = existingReg.TShirtSize, Gender = existingReg.Gender, UserId = existingReg.UserId, CartItemId = cartItemId, AgreeToTerms = existingReg.AgreeToTerms, AgreeTrademark = existingReg.AgreeTrademark, IsFemale = existingReg.IsFemale, IsOfAge = existingReg.IsOfAge, EventLeadId = existingReg.EventLeadId, IsSignatureConsent = existingReg.IsSignatureConsent, IsThirdPartyRegistration = existingReg.IsThirdPartyRegistration, Signature = existingReg.Signature, Birthday = existingReg.Birthday, IsIAmTheParticipant = existingReg.IsIAmTheParticipant }; if (string.IsNullOrEmpty(confirmationCode)) newReg.ConfirmationCode = existingReg.ConfirmationCode; else newReg.ConfirmationCode = confirmationCode; _repository.Registrations.Create(newReg); if (!_sharedRepository) _repository.SaveChanges(); } catch (Exception ex) { result.AddServiceError(Utilities.GetInnerMostException(ex)); } return result; }
public ServiceResult RedemptionCodeRegistration(string code, Registration r) { var result = new ServiceResult(); return result; }
public ServiceResult UpdateRegistration(Registration r) { var result = new ServiceResult(); try { var target = _repository.Registrations.Find(x => x.RegistrationId == r.RegistrationId); if (ValidateRegistration(r, result)) { target.Address1 = r.Address1; target.Address2 = r.Address2; target.AgreeToTerms = r.AgreeToTerms; target.AgreeTrademark = r.AgreeTrademark; target.Birthday = r.Birthday; target.CartItemId = r.CartItemId; target.Email = r.Email; target.EmergencyContact = r.EmergencyContact; target.EmergencyPhone = r.EmergencyPhone; target.EventLeadId = r.EventLeadId; target.EventWaveId = r.EventWaveId; target.FirstName = r.FirstName; target.Gender = r.Gender; target.IsFemale = r.IsFemale; target.IsOfAge = r.IsOfAge; target.IsThirdPartyRegistration = r.IsThirdPartyRegistration; target.LastName = r.LastName; target.Locality = r.Locality; target.MedicalInformation = r.MedicalInformation; target.ParentRegistrationId = r.ParentRegistrationId; target.Phone = r.Phone; target.PostalCode = r.PostalCode; target.PacketDeliveryOption = r.PacketDeliveryOption; target.ReferenceAnswer = r.ReferenceAnswer; target.RegionId = r.RegionId; target.RegistrationStatus = r.RegistrationStatus; target.RegistrationType = r.RegistrationType; target.SpecialNeeds = r.SpecialNeeds; target.TShirtSize = r.TShirtSize; target.TeamId = r.TeamId; target.UserId = r.UserId; target.DateUpdated = DateTime.Now; target.ConfirmationCode = r.ConfirmationCode; if (!_sharedRepository) _repository.SaveChanges(); } } catch (Exception ex) { result.AddServiceError(Utilities.GetInnerMostException(ex)); } return result; }
public ServiceResult CreateNewRegistration(Registration r, int? redemtpionId) { var result = new ServiceResult(); try { result = CreateNewRegistration(r); if (result.Success) { //Check to see if the discount id being passed in is a redemption code, if it is, update it. var code = _repository.RedemptionCodes.Find(x => x.DiscountItemId == redemtpionId); if (code != null) { code.GeneratingRegistration.RegistrationStatus = code.RedemptionCodeType == RedemptionCodeType.Transfer ? RegistrationStatus.Transferred : RegistrationStatus.Cancelled; code.ResultingRegistrationId = r.RegistrationId; r.ParentRegistrationId = code.GeneratingRegistrationId; if (!_sharedRepository) _repository.SaveChanges(); } } } catch(Exception ex) { result.AddServiceError(Utilities.GetInnerMostException(ex)); } return result; }
public ServiceResult CreateNewRegistration(Registration r) { var result = new ServiceResult(); try { if (ValidateRegistration(r, result)) { _repository.Registrations.Create(r); if (!_sharedRepository) _repository.SaveChanges(); } } catch (Exception ex) { result.AddServiceError(Utilities.GetInnerMostException(ex)); } return result; }
public vmRegistration_Details() { RegistrationDetails = new Registration(); }
public ActionResult StartRedemption(string id) { ServiceResult result = _service.ValidateRedemptionCodeForUserId(id, CurrentUser.UserId); if (result.Success) { RedemptionCode redemptionCode = _service.GetRedemptionCode(id); var itemId = Guid.NewGuid(); var newReg = new Registration { UserId = CurrentUser.UserId, FirstName = CurrentUser.FirstName, LastName = CurrentUser.LastName, Address1 = CurrentUser.Address1, Address2 = CurrentUser.Address2, Locality = CurrentUser.Locality, RegionId = CurrentUser.RegionId, PostalCode = CurrentUser.PostalCode, Email = CurrentUser.EmailAddress, RegistrationStatus = RegistrationStatus.Active, }; if (redemptionCode.RedemptionCodeType == RedemptionCodeType.Transfer) { newReg.EventWaveId = redemptionCode.GeneratingRegistration.EventWaveId; newReg.TeamId = redemptionCode.GeneratingRegistration.TeamId; } SessionManager.CurrentCart.DiscountCode = id; var newCartItem = new ActionItem { ActionType = CartActionType.NewRegistration, ActionObject = newReg, ItemReadyForCheckout = false }; SessionManager.CurrentCart.ActionItems.Add(itemId, newCartItem); SessionManager.CurrentCart.CheckOutFocus = CartFocusType.Registration; if (redemptionCode.RedemptionCodeType == RedemptionCodeType.Transfer) return RedirectToAction("registrationdetails", "Registration", new {itemId}); SessionManager.CurrentCart.CheckOutFocus = CartFocusType.Redemption; return RedirectToAction("eventselection", "registration", new {itemId}); } string error = "Invalid Redemption Code"; var errors = result.GetServiceErrors(); if (errors != null && errors.Count > 0) error = errors[0].ErrorMessage; return RedirectToAction("InvalidRedemption", "registration", new { redemptionError = error }); }
public ActionResult StartNewRegistration(int? eventId, int? eventDateId) { var itemId = Guid.NewGuid(); var newReg = new Registration { UserId = CurrentUser.UserId, FirstName = CurrentUser.FirstName, LastName = CurrentUser.LastName, Address1 = CurrentUser.Address1, Address2 = CurrentUser.Address2, Locality = CurrentUser.Locality, RegionId = CurrentUser.RegionId, PostalCode = CurrentUser.PostalCode, Email = CurrentUser.EmailAddress, RegistrationStatus = RegistrationStatus.Active }; var newCartItem = new ActionItem { ActionType = CartActionType.NewRegistration, ActionObject = newReg, ItemReadyForCheckout = false }; SessionManager.CurrentCart.ActionItems.Add(itemId, newCartItem); SessionManager.CurrentCart.CheckOutFocus = CartFocusType.Registration; return RedirectToAction("eventSelection", "registration", new { itemId, eventId, eventDateId }); }