public ActionResult Edit(int id, PaaMember model, FormCollection collection) { // hide from public if (!Authorized()) { return(InvokeHttp404()); } try { // TODO: Add update logic here if (ModelState.IsValid) { return(RedirectToAction("Index")); } // something failed return(View(Utilities.CorrectViewPath("MemberList/Edit"), model)); } catch { return(View(Utilities.CorrectViewPath("MemberList/Edit"))); } }
// GET: Member/Edit/5 public ActionResult Edit(int?id) { // hide from public if (!Authorized()) { return(InvokeHttp404()); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PaaMember member = _membershipService.GetMemberById((int)id); if (member == null) { return(InvokeHttp404()); // new HttpNotFoundResult(); } if (member.Membership != null) { ViewBag.MembershipSelector = member.Membership.Id; } ViewBag.MemberStateId = member.StateProvinceId; return(View(Utilities.CorrectViewPath("MemberList/Edit"), member)); }
public virtual ActionResult Register(int?id) { //check whether registration is allowed if (_customerSettings.UserRegistrationType == UserRegistrationType.Disabled) { return(RedirectToRoute("RegisterResult", new { resultId = (int)UserRegistrationType.Disabled })); } CustomerRoleType role = 0; if (id != null) { role = (CustomerRoleType)id; ViewBag.Headline = role.ToString(); } var x = InitPaaRegisterModel(); PaaMember model = new PaaMember { CustomerRoleType = role, RegisterModel = InitPaaRegisterModel() }; model.RegisterModel.FirstName = "John"; return(View("PaidMemberShip", model)); }
public ActionResult DeleteConfirmed(int id) { PaaMember paaMember = db.PaaMembers.Find(id); db.PaaMembers.Remove(paaMember); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "PaaMemberId,Email,FirstName,LastName,Company,StreetAddress,StreetAddress2,City,State,ZipCode,Url,ArtWork,FamilyMemberEmail,NonPayingMember,HomePageApproval,Phone,Renewal")] PaaMember paaMember) { if (ModelState.IsValid) { db.Entry(paaMember).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(paaMember)); }
public PaaMember GetMemberById(int memberId, int storeId = 0) { Customer customer = _customerService.GetCustomerById(memberId); PaaMember member = BuildPaaMember(customer, storeId); if (member != null) { SetPaaMemberStatus(ref member); return(member); } return(null); }
public void SetPaaMemberStatus(ref PaaMember member) { DateTime renewal = member.Renewal; // special case if (member.Membership != null && member.Membership.Name.ToLower() == "honorary membership") { member.Status = new KeyValuePair <int, string>((int)StatusCode.current, "Current"); return; } if (renewal == DateTime.MinValue) { member.Status = new KeyValuePair <int, string>(-1, "Error"); return; } if (renewal >= _today) { if (renewal <= _fifteenDaysFromNow) { member.Status = new KeyValuePair <int, string>((int)StatusCode.current_expiring_less_than_fifteen_days, "Expiring Soon"); return; } else { member.Status = new KeyValuePair <int, string>((int)StatusCode.current, "Current"); return; } } if (renewal <= _fortyFiveDayAgo) { if (renewal <= _longExpired) { member.Status = new KeyValuePair <int, string>((int)StatusCode.expired_no_grace, "Expired"); return; } else { member.Status = new KeyValuePair <int, string>((int)StatusCode.expired_no_grace_less_then_fifteen_days, "Expired Recently"); return; } } if (renewal >= _fortyFiveDayAgo) { member.Status = new KeyValuePair <int, string>((int)StatusCode.expired_grace_less_than_fortyfive_days, "Expired Grace"); return; } }
// GET: PaaMembers/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PaaMember paaMember = db.PaaMembers.Find(id); if (paaMember == null) { return(HttpNotFound()); } return(View(paaMember)); }
public ActionResult Create(/*FormCollection collection ,*/ PaaMember member) { // hide from public if (!Authorized()) { return(InvokeHttp404()); } // TODO: Add insert logic here // if( ) return(View(Utilities.CorrectViewPath("MemberList/Create"), member)); }
// GET: Member/Details/5 public ActionResult Details(int?id) { // hide from public if (!Authorized()) { return(InvokeHttp404()); } PaaMember member = _membershipService.GetMemberById((int)id); if (member == null) { return(InvokeHttp404()); // new HttpNotFoundResult(); } return(View(Utilities.CorrectViewPath("MemberList/Details"), member)); }
// GET: Member/Create public ActionResult Create() { // hide from public if (!Authorized()) { return(InvokeHttp404()); } PaaMember member = new PaaMember( ); member.Renewal = DateTime.Now.AddDays(366); return(View(Utilities.CorrectViewPath("MemberList/Create"), member)); }
//public IList<Customer> Customers(PasswordFormat passwordFormat) public IList <PaaMember> MembersList(int storeId = 0) { IList <PaaMember> members = new List <PaaMember>(); foreach (Customer customer in GetCustomersWhoAreMembers()) { PaaMember member = BuildPaaMember(customer, storeId); if (member.CountryId == 0) { count++; } SetPaaMemberStatus(ref member); members.Add(member); } return(members); }
private void GetCustomerCountryState(Customer customer, ref PaaMember member, int storeId = 0) { string countryId = customer.GetAttribute <string>(SystemCustomerAttributeNames.CountryId, storeId); string stateId = customer.GetAttribute <string>(SystemCustomerAttributeNames.StateProvinceId, storeId); int stateid = 0; int countryid = 0; bool validC = Int32.TryParse(countryId, out countryid); bool validS = Int32.TryParse(stateId, out stateid); if (validC && validS) { member.CountryId = countryid; member.StateProvinceId = stateid; StateProvince state = _stateProvinceService.GetStateProvinceById(stateid); member.State = (state != null) ? state : new StateProvince { Name = "", Abbreviation = "??" }; } }
public virtual ActionResult Register(PaaMember member, string returnUrl, bool captchaValid, FormCollection form) { RegisterModel model = null;// = member.RegisterModel; //check whether registration is allowed if (_customerSettings.UserRegistrationType == UserRegistrationType.Disabled) { return(RedirectToRoute("RegisterResult", new { resultId = (int)UserRegistrationType.Disabled })); } if (_workContext.CurrentCustomer.IsRegistered()) { //Already registered customer. _authenticationService.SignOut(); //raise logged out event _eventPublisher.Publish(new CustomerLoggedOutEvent(_workContext.CurrentCustomer)); //Save a new record _workContext.CurrentCustomer = _customerService.InsertGuestCustomer(); } var customer = _workContext.CurrentCustomer; customer.RegisteredInStoreId = _storeContext.CurrentStore.Id; //custom customer attributes var customerAttributesXml = ParseCustomCustomerAttributes(form); var customerAttributeWarnings = _customerAttributeParser.GetAttributeWarnings(customerAttributesXml); foreach (var error in customerAttributeWarnings) { ModelState.AddModelError("", error); } //validate CAPTCHA if (_captchaSettings.Enabled && _captchaSettings.ShowOnRegistrationPage && !captchaValid) { ModelState.AddModelError("", _captchaSettings.GetWrongCaptchaMessage(_localizationService)); } if (ModelState.IsValid) { if (_customerSettings.UsernamesEnabled && model.Username != null) { model.Username = model.Username.Trim(); } bool isApproved = _customerSettings.UserRegistrationType == UserRegistrationType.Standard; var registrationRequest = new CustomerRegistrationRequest(customer, model.Email, _customerSettings.UsernamesEnabled ? model.Username : model.Email, model.Password, _customerSettings.DefaultPasswordFormat, _storeContext.CurrentStore.Id, isApproved); var registrationResult = _customerRegistrationService.RegisterCustomer(registrationRequest); if (registrationResult.Success) { //properties if (_dateTimeSettings.AllowCustomersToSetTimeZone) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.TimeZoneId, model.TimeZoneId); } //VAT number if (_taxSettings.EuVatEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.VatNumber, model.VatNumber); string vatName; string vatAddress; var vatNumberStatus = _taxService.GetVatNumberStatus(model.VatNumber, out vatName, out vatAddress); _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.VatNumberStatusId, (int)vatNumberStatus); //send VAT number admin notification if (!String.IsNullOrEmpty(model.VatNumber) && _taxSettings.EuVatEmailAdminWhenNewVatSubmitted) { _workflowMessageService.SendNewVatSubmittedStoreOwnerNotification(customer, model.VatNumber, vatAddress, _localizationSettings.DefaultAdminLanguageId); } } //form fields if (_customerSettings.GenderEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.Gender, model.Gender); } _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.FirstName, model.FirstName); _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.LastName, model.LastName); if (_customerSettings.DateOfBirthEnabled) { // DateTime? dateOfBirth = model.ParseDateOfBirth(); // _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.DateOfBirth, dateOfBirth); } if (_customerSettings.CompanyEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.Company, model.Company); } if (_customerSettings.StreetAddressEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.StreetAddress, model.StreetAddress); } if (_customerSettings.StreetAddress2Enabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.StreetAddress2, model.StreetAddress2); } if (_customerSettings.ZipPostalCodeEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.ZipPostalCode, model.ZipPostalCode); } if (_customerSettings.CityEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.City, model.City); } if (_customerSettings.CountryEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.CountryId, model.CountryId); } if (_customerSettings.CountryEnabled && _customerSettings.StateProvinceEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.StateProvinceId, model.StateProvinceId); } if (_customerSettings.PhoneEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.Phone, model.Phone); } if (_customerSettings.FaxEnabled) { _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.Fax, model.Fax); } //newsletter if (_customerSettings.NewsletterEnabled) { //save newsletter value var newsletter = _newsLetterSubscriptionService.GetNewsLetterSubscriptionByEmailAndStoreId(model.Email, _storeContext.CurrentStore.Id); if (newsletter != null) { if (model.Newsletter) { newsletter.Active = true; _newsLetterSubscriptionService.UpdateNewsLetterSubscription(newsletter); } //else //{ //When registering, not checking the newsletter check box should not take an existing email address off of the subscription list. //_newsLetterSubscriptionService.DeleteNewsLetterSubscription(newsletter); //} } else { if (model.Newsletter) { _newsLetterSubscriptionService.InsertNewsLetterSubscription(new NewsLetterSubscription { NewsLetterSubscriptionGuid = Guid.NewGuid(), Email = model.Email, Active = true, StoreId = _storeContext.CurrentStore.Id, CreatedOnUtc = DateTime.UtcNow }); } } } //save customer attributes _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.CustomCustomerAttributes, customerAttributesXml); //login customer now if (isApproved) { _authenticationService.SignIn(customer, true); } //associated with external account (if possible) TryAssociateAccountWithExternalAccount(customer); //insert default address (if possible) var defaultAddress = new Address { FirstName = customer.GetAttribute <string>(SystemCustomerAttributeNames.FirstName), LastName = customer.GetAttribute <string>(SystemCustomerAttributeNames.LastName), Email = customer.Email, Company = customer.GetAttribute <string>(SystemCustomerAttributeNames.Company), CountryId = customer.GetAttribute <int>(SystemCustomerAttributeNames.CountryId) > 0 ? (int?)customer.GetAttribute <int>(SystemCustomerAttributeNames.CountryId) : null, StateProvinceId = customer.GetAttribute <int>(SystemCustomerAttributeNames.StateProvinceId) > 0 ? (int?)customer.GetAttribute <int>(SystemCustomerAttributeNames.StateProvinceId) : null, City = customer.GetAttribute <string>(SystemCustomerAttributeNames.City), Address1 = customer.GetAttribute <string>(SystemCustomerAttributeNames.StreetAddress), Address2 = customer.GetAttribute <string>(SystemCustomerAttributeNames.StreetAddress2), ZipPostalCode = customer.GetAttribute <string>(SystemCustomerAttributeNames.ZipPostalCode), PhoneNumber = customer.GetAttribute <string>(SystemCustomerAttributeNames.Phone), FaxNumber = customer.GetAttribute <string>(SystemCustomerAttributeNames.Fax), CreatedOnUtc = customer.CreatedOnUtc }; if (this._addressService.IsAddressValid(defaultAddress)) { //some validation if (defaultAddress.CountryId == 0) { defaultAddress.CountryId = null; } if (defaultAddress.StateProvinceId == 0) { defaultAddress.StateProvinceId = null; } //set default address customer.Addresses.Add(defaultAddress); customer.BillingAddress = defaultAddress; customer.ShippingAddress = defaultAddress; _customerService.UpdateCustomer(customer); } //notifications if (_customerSettings.NotifyNewCustomerRegistration) { _workflowMessageService.SendCustomerRegisteredNotificationMessage(customer, _localizationSettings.DefaultAdminLanguageId); } //raise event _eventPublisher.Publish(new CustomerRegisteredEvent(customer)); switch (_customerSettings.UserRegistrationType) { case UserRegistrationType.EmailValidation: { //email validation message _genericAttributeService.SaveAttribute(customer, SystemCustomerAttributeNames.AccountActivationToken, Guid.NewGuid().ToString()); _workflowMessageService.SendCustomerEmailValidationMessage(customer, _workContext.WorkingLanguage.Id); //result return(RedirectToRoute("RegisterResult", new { resultId = (int)UserRegistrationType.EmailValidation })); } case UserRegistrationType.AdminApproval: { return(RedirectToRoute("RegisterResult", new { resultId = (int)UserRegistrationType.AdminApproval })); } case UserRegistrationType.Standard: { //send customer welcome message _workflowMessageService.SendCustomerWelcomeMessage(customer, _workContext.WorkingLanguage.Id); var redirectUrl = Url.RouteUrl("RegisterResult", new { resultId = (int)UserRegistrationType.Standard }); if (!String.IsNullOrEmpty(returnUrl) && Url.IsLocalUrl(returnUrl)) { redirectUrl = _webHelper.ModifyQueryString(redirectUrl, "returnurl=" + HttpUtility.UrlEncode(returnUrl), null); } return(Redirect(redirectUrl)); } default: { return(RedirectToRoute("HomePage")); } } } //errors foreach (var error in registrationResult.Errors) { ModelState.AddModelError("", error); } } //If we got this far, something failed, redisplay form // model = _customerModelFactory.PrepareRegisterModel( model, true, customerAttributesXml); // return View("PaidMemberShip" , model); return(null); }
public PaaMember UpdateMember(PaaMember member) { return(member); }
private PaaMember BuildPaaMember(Customer customer, int storeId) { if (customer == null) { return(null); } PaaMember m = new PaaMember { PaaMemberId = customer.Id, Email = customer.Email, FirstName = customer.GetAttribute <string>(SystemCustomerAttributeNames.FirstName, storeId), LastName = customer.GetAttribute <string>(SystemCustomerAttributeNames.LastName, storeId), StreetAddress = customer.GetAttribute <string>(SystemCustomerAttributeNames.StreetAddress, storeId), City = customer.GetAttribute <string>(SystemCustomerAttributeNames.City, storeId), ZipCode = customer.GetAttribute <string>(SystemCustomerAttributeNames.ZipPostalCode, storeId), Phone = customer.GetAttribute <string>(SystemCustomerAttributeNames.Phone, storeId), CustomerRoles = customer.CustomerRoles.ToList(), }; GetCustomerCountryState(customer, ref m); // role selected & helper flags foreach (CustomerRole role in m.CustomerRoles) { if (role.Name.ToLower().Contains("member")) // should be only 1 !! { // set membership m.Membership = role; // set membership drop-down selected value m.SelectedRole = (SelectedRole)m.Membership.Id; } if (role.Name.ToLower().Contains("family")) { m.PartnerRequired = true; } } // custom Attributes foreach (CustomerServices.AttributeValuePair customerAttr in Utilities.GetCustomerAttributes(customer)) { switch (customerAttr.ValueId) { case (int)CustomerCustomAttribute.Renewal: { DateTime expires; if (DateTime.TryParse(customerAttr.ValueText, out expires)) { m.Renewal = expires; } break; } case (int)CustomerCustomAttribute.Url: { m.Url = customerAttr.ValueText; break; } case (int)CustomerCustomAttribute.PartnerEmail: { m.PartnerEmail = customerAttr.ValueText; if (m.PartnerRequired) { if (!string.IsNullOrEmpty(m.PartnerEmail)) { Customer partner = _customerService.GetCustomerByEmail(m.PartnerEmail); if (partner != null) { m.PartnerFirstName = partner.GetAttribute <string>(SystemCustomerAttributeNames.FirstName, storeId); m.PartnerLastName = partner.GetAttribute <string>(SystemCustomerAttributeNames.LastName, storeId); } } } break; } case (int)CustomerCustomAttribute.ArtWork: { m.ArtWork = customerAttr.ValueText; break; } case (int)CustomerCustomAttribute.HomePageSlideTitle: { m.ArtWorkTitle = customerAttr.ValueText; break; } //case (int)Utilities.CustomerAttribute.ArtworkApproval: // { // m.HomeSlideApproved = (customerAttr.ValueText.ToLower() == "yes") // ? Classes.Enums.Approved.Yes // : Classes.Enums.Approved.No; //HomePageApproval // break; // } case (int)CustomerCustomAttribute.HomePageApprovalYes: { m.HomeSlideApproved = Approved.Yes; break; } case (int)CustomerCustomAttribute.HomePageApprovalNo: { m.HomeSlideApproved = Approved.No; break; } } } return(m); }
public PaaMember CreateMember(PaaMember member) { return(member); }
public ActionResult Register( RegistrationViewModel model, SelfIdentificationViewModel identity, bool captchaValid ) { //check whether registration is allowed // if (_customerSettings.UserRegistrationType == UserRegistrationType.Disabled) // return RedirectToRoute("RegisterResult", new { resultId = (int)UserRegistrationType.Disabled }); // setup model for pure registration _dallasArtContext.IsRegistration = true; model.SelfIdentificationViewModel = identity; if (model.CurrentState == "Begin") { model.CurrentState = "Loop"; // PostExtraValidation(model); if (!ModelState.IsValid) { model.DisplaySuccess = false; // something failed validation // return View(Utilities.CorrectViewPath("ImageSubmission/_RegisterRequest"), model); return(PartialView(ContactViewPath("_RegisterRequest"), model)); } else { model.ImageUploadViewModel.EmailAddress = identity.Email; model.ImageUploadViewModel.CustomerName = identity.FirstName + " " + identity.LastName; model.ImageUploadViewModel.Telephone = identity.Phone; model.ImageUploadViewModel.RemainingImages = 3; model.ImageUploadViewModel.ModelState = "Ready"; model.ImageUploadViewModel.Member = model.ImageUploadViewModel.Member; model.DisplaySuccess = true; PaaMember currentMember = _membershipService.Paa_Current_MemberList().Where(x => x.Email == identity.Email).SingleOrDefault(); model.ImageUploadViewModel.Member = (currentMember != null); // model.ImageUploadViewModel.Member = // member is 2 // model.SelfIdentificationViewModel.RadioButtionList.SelectedRole == 2; //return View(Utilities.CorrectViewPath("ImageSubmission/_RegisterRequest"), model); return(PartialView(ContactViewPath("_RegisterRequest"), model)); } // model.DisplaySuccess = false; // model.CurrentState = "Begin"; // return View(ContactViewPath("Register"), model); } // security check // DisplayCaptchaViewModel.CaptchaValidation(captchaValid, model.DisplayCaptcha, ModelState); // check input values not handled by validation EnrollmentPostValidation(model); if (ModelState.IsValid) { bool isApproved = _customerSettings.UserRegistrationType == UserRegistrationType.Standard; model.CurrentCustomer = _workContext.CurrentCustomer; model.SelfIdentificationViewModel.Customer = model.CurrentCustomer; var registrationRequest = new CustomerRegistrationRequest( model.CurrentCustomer, model.SelfIdentificationViewModel.Email, _customerSettings.UsernamesEnabled ? model.Username : model.SelfIdentificationViewModel.Email, model.SelfIdentificationViewModel.Password, _customerSettings.DefaultPasswordFormat, _storeContext.CurrentStore.Id, isApproved); var registrationResult = _customerRegistrationService.RegisterCustomer(registrationRequest); if (registrationResult.Success) { // var loginResult = // _customerRegistrationService.ValidateCustomer( model.SelfIdentificationViewModel.Email, model.SelfIdentificationViewModel.Password); var guestRole = _customerService.GetCustomerRoleBySystemName(SystemCustomerRoleNames.Guests); _workContext.CurrentCustomer.CustomerRoles.Add(guestRole); var control = new OnePageCheckoutModel { ShippingRequired = false, DisableBillingAddressCheckoutStep = false }; return(View("/Themes/PAA/Views/Checkout/onepagecheckout.cshtml", control)); } else { // something failed registration // return View(Utilities.CorrectViewPath("ImageSubmission/Register"), model); return(View("Register", model)); } } // something failed validation // return View(Utilities.CorrectViewPath("ImageSubmission/Register"), model); return(View("Register", model)); }