public override IMemberAccountData CreateMember(MemberAuthInfo authInfo, out MemberCreationStatus status) { String logMethodName = ".CreateMember(MemberAuthInfo authInfo, out MemberCreationStatus status) - "; _log.Debug(logMethodName + "Begin Method"); MemberAccountData accountData = (MemberAccountData)base.CreateMember(authInfo, out status); SetAccountDataFromAD(ref accountData); RecreateIndividualIdCookie(accountData.MemberId.ToString()); _log.Debug(logMethodName + "End Method"); return(accountData); }
public override IMemberAccountData CreateMember(MemberAuthInfo authInfo, IMemberProfileData profile, out MemberCreationStatus status) { String logMethodName = ".CreateMember(MemberAuthInfo authInfo, IMemberProfileData profile, out MemberCreationStatus status) - "; _log.Debug(logMethodName + "Begin Method"); MemberAccountData accountData = (MemberAccountData)base.CreateMember(authInfo, profile, out status); _log.Debug("Create Member Status: " + status.ToString()); //PROBLEM?: Here we still try to set account data even if there was a problem successfully creating the member. SetAccountDataFromAD(ref accountData); RecreateIndividualIdCookie(accountData.MemberId.ToString()); _log.Debug(logMethodName + "End Method"); return(accountData); }
public virtual IMemberAccountData CreateMember(MemberAuthInfo authInfo, out MemberCreationStatus status) { String logMethodName = ".CreateMember(MemberAuthInfo authInfo, out MemberCreationStatus status) - "; _log.Debug(logMethodName + " - Begin Method"); IMemberAccountData returnData; returnData = CreateMember( authInfo, new MemberProfileData() { EmailAddress = authInfo.Email }, out status); _log.Debug(logMethodName + " - End Method"); return(returnData); }
public virtual IMemberAccountData CreateMember(MemberAuthInfo authInfo, IMemberProfileData profile, out MemberCreationStatus status) { String logMethodName = ".CreateMember(MemberAuthInfo authInfo, IMemberProfileData profile, out MemberCreationStatus status) - "; _log.Debug(logMethodName + " - Begin Method"); status = MemberCreationStatus.Error; IMemberAccountData data = null; MembershipCreateStatus createStatus = MembershipCreateStatus.Success; try { // Membership.CreateUser Method - throws exception MembershipCreateUserException if user is // not created: // http://msdn.microsoft.com/en-us/library/t8yy6w3h.aspx data = new MembershipUserWrapper(Membership.CreateUser( authInfo.Username, authInfo.Password, authInfo.Email)); } catch (MembershipCreateUserException e) { createStatus = e.StatusCode; _log.Debug(logMethodName + " - User " + authInfo.Username + " was not created - status=" + createStatus); } catch (Exception ex) { SaltADMembershipProvider.ADConnector.LogActiveDirectoryMembershipProviderProperties(); throw new SecurityAdapterException("An error has occured in the .NET Membership provider while calling Membership.CreateUser(username, password, username) for username " + authInfo.Username, ex); } switch (createStatus) { case MembershipCreateStatus.Success: status = MemberCreationStatus.Success; //FormsAuthentication.SetAuthCookie(authInfo.Username, true); //FormsAuthentication.Authenticate(authInfo.Username, authInfo.Password); break; case MembershipCreateStatus.DuplicateEmail: status = MemberCreationStatus.DuplicateEmail; break; case MembershipCreateStatus.DuplicateProviderUserKey: status = MemberCreationStatus.DuplicateUserName; break; case MembershipCreateStatus.DuplicateUserName: status = MemberCreationStatus.DuplicateUserName; break; case MembershipCreateStatus.InvalidAnswer: status = MemberCreationStatus.InvalidAnswer; break; case MembershipCreateStatus.InvalidEmail: status = MemberCreationStatus.InvalidEmail; break; case MembershipCreateStatus.InvalidPassword: status = MemberCreationStatus.InvalidPassword; break; case MembershipCreateStatus.InvalidProviderUserKey: status = MemberCreationStatus.InvalidUserName; break; case MembershipCreateStatus.InvalidQuestion: status = MemberCreationStatus.InvalidQuestion; break; case MembershipCreateStatus.InvalidUserName: status = MemberCreationStatus.InvalidUserName; break; case MembershipCreateStatus.ProviderError: status = MemberCreationStatus.AdapterError; break; case MembershipCreateStatus.UserRejected: status = MemberCreationStatus.UserRejected; break; default: status = MemberCreationStatus.Error; break; } _log.Debug(logMethodName + " - End Method"); return(data); }
public ASAMemberModel RegisterMember(ASAMemberModel memberIn, bool logon = false) { const string logMethodName = ".RegisterMember(ASAMemberModel memberIn) - "; Log.Debug(logMethodName + "Begin Method"); bool validModel = ASAMemberValidation.ValidateASAMember(memberIn); if (validModel) { //If no organization has been supplied check to see if a school has been supplied; this is for backwards compatibility, //if no organization or school, allocate one and set to No School Selected if (memberIn.Organizations == null || memberIn.Organizations.Count == 0) { if (memberIn.Schools == null || memberIn.Schools.Count == 0) { MemberOrganizationModel mom = new MemberOrganizationModel() { OECode = "000000", BranchCode = "00" }; memberIn.Organizations = new List <MemberOrganizationModel>() { mom }; Log.Info(logMethodName + String.Format("Organization manually added for member: {0}. Set to No School Selected", memberIn.Emails[0].EmailAddress)); } else { MemberOrganizationModel mom = new MemberOrganizationModel() { OECode = memberIn.Schools[0].OECode, BranchCode = memberIn.Schools[0].BranchCode, ExpectedGraduationYear = memberIn.ExpectedGraduationYear }; memberIn.Organizations = new List <MemberOrganizationModel>() { mom }; Log.Info(logMethodName + String.Format("Organization copied from school model for member: {0}.", memberIn.Emails[0].EmailAddress)); } } //only 2 items should be entered per registration and they should not be the same if (memberIn.Organizations.Count == 2) { //will count the unique organization ids, should be 2, if 1 then they are the same, remove one if (1 == memberIn.Organizations.GroupBy(o => o.OrganizationId).Count()) { memberIn.Organizations.RemoveAt(1); Log.Info(logMethodName + String.Format("Duplicate Organization removed for member: {0} and continuing to process", memberIn.Emails[0].EmailAddress)); } } if (System.Web.HttpContext.Current != null && System.Web.HttpContext.Current.Session != null) { Log.Debug(logMethodName + "ClearSession being called at the beginning of Regsitration process"); Utility.BaseSession.ClearSession(); } MemberCreationStatus createStatus; var member = new ASAMemberModel(); if (_asaMemberAdapter.GetMemberByEmail(memberIn.Emails[0].EmailAddress) != null) { var error = new ErrorModel("Error. It looks like you already have a SALT account. Visit saltmoney.org to login or to recover your password.", "WEB ASAMember Service"); error.Code = "DuplicateUserName"; member.ErrorList.Add(error); Log.Debug(logMethodName + "End Method"); return(member); } var authInfo = new MemberAuthInfo { Username = memberIn.Emails[0].EmailAddress, Email = memberIn.Emails[0].EmailAddress, Password = memberIn.Password, }; var profile = new MemberProfileData { ContactFrequency = memberIn.ContactFrequency, FirstName = memberIn.FirstName, LastName = memberIn.LastName, EmailAddress = memberIn.Emails[0].EmailAddress, Source = memberIn.Source, InvitationToken = memberIn.InvitationToken, YearOfBirth = memberIn.YearOfBirth, }; if (memberIn.Organizations.Any()) { profile.Organizations = new MemberOrganizationList <MemberOrganizationData>(); foreach (MemberOrganizationModel organization in memberIn.Organizations) { MemberOrganizationData item = new MemberOrganizationData(); item.OrganizationId = organization.OrganizationId; item.OECode = organization.OECode; item.BranchCode = organization.BranchCode; item.ExpectedGraduationYear = organization.ExpectedGraduationYear; item.ReportingId = organization.ReportingId; item.IsOrganizationDeleted = organization.IsOrganizationDeleted; profile.Organizations.Add(item); } } var newMember = IntegrationLoader.LoadDependency <ISiteMembership>("siteMembership").CreateMember(authInfo, profile, out createStatus); if (createStatus != MemberCreationStatus.Success) { var error = new ErrorModel("Error. Unable to complete your registration. Please check your information and try again.", "ASAMember Service"); error.Code = "GenericError"; member.ErrorList.Add(error); Log.Debug(logMethodName + "End Method"); return(member); } if (logon) { memberIn = _asaMemberAdapter.Logon(logon, memberIn.Emails[0].EmailAddress); _asaMemberAdapter.SetMemberIdCookie(memberIn.MembershipId); } } return(memberIn); }
public IMemberAccountData CreateMember(MemberAuthInfo authInfo, IMemberProfileData profile, out MemberCreationStatus status) { status = MemberCreationStatusResponse; return(CreateMemberResponse); }
//Member Security public IMemberAccountData CreateMember(MemberAuthInfo authInfo, out MemberCreationStatus status) { throw new NotImplementedException(); }