public static short RegistrationSource2AdminDashboardIndex(this CommonEnums.eRegistrationSources source) { switch (source) { case CommonEnums.eRegistrationSources.LFE: return(1); case CommonEnums.eRegistrationSources.WIX: return(2); case CommonEnums.eRegistrationSources.FB: return(3); case CommonEnums.eRegistrationSources.WORDPRESS: return(4); default: return(999); } }
/// <summary> /// Create/Update account for facebook login from widget toolbar. /// </summary> /// <param name="access_token"></param> /// <param name="registrationSource"></param> /// <param name="email"></param> /// <param name="error"></param> /// <param name="trackingId"></param> /// <returns></returns> public bool CreateOrUpdateFbAccountAndLoginWidgetUser(string access_token, CommonEnums.eRegistrationSources registrationSource, out string email, out string error, string trackingId = null) //, bool tryMatch = false { email = string.Empty; try { var result = VerifyFbUserAccessToken(access_token); if (!result.IsSuccessful || result.UserName == null) { error = result.Error != null ? result.Error.Message : "Authentication failed"; return(false); } //if (tryMatch) //{ bool providerApproved; //try match by social credentials var user = _userAccountServices.TryFoundUserBySocialCredentials(result.UserName, result.ProviderUserId, CommonEnums.SocialProviders.Facebook, out providerApproved, out error); if (user != null) { if (user.FacebookId == null) { _userAccountServices.UpdateUserFbUserId(user.UserId, result.ProviderUserId); } return(CreateAuthenticationTicket(user.Email, string.Empty, trackingId, out error)); } //} return(CreateOrUpdateExternalAccountAndLoginUser(result, out email, out error, trackingId, registrationSource) && CreateAuthenticationTicket(email, string.Empty, trackingId, out error)); } catch (Exception ex) { error = Utils.FormatError(ex); return(false); } }
public ActionResult ExternalLoginCallback(string returnUrl, string trackingId, CommonEnums.eRegistrationSources registrationSource = CommonEnums.eRegistrationSources.LFE) { string error; string email; var isAccountCreated = CreateOrUpdateExternalAccountAndLoginUser(out email, out error, trackingId, registrationSource); if (isAccountCreated && !String.IsNullOrEmpty(email)) { return(SignInUser(new LoginDTO { Email = email }, returnUrl)); } return(ReturnLoginError(error)); }
public ActionResult ExternalLogin(string provider, string returnUrl, string trackingId, CommonEnums.eRegistrationSources registrationSource = CommonEnums.eRegistrationSources.LFE) { return(new ExternalLoginResult(provider, Url.Action("ExternalLoginCallback", new { returnUrl, trackingId, registrationType = registrationSource }))); }
/// <summary> /// check external and create user profile (account) for old lfe users /// </summary> /// <param name="email"></param> /// <param name="error"></param> /// <param name="trackingId"></param> /// <param name="registrationSource"></param> /// <returns></returns> private bool CreateOrUpdateExternalAccountAndLoginUser(out string email, out string error, string trackingId, CommonEnums.eRegistrationSources registrationSource) { email = string.Empty; try { var result = OAuthWebSecurity.VerifyAuthentication(); if (!result.IsSuccessful || result.UserName == null) { error = result.Error != null ? result.Error.Message : "Authentication failed"; return(false); } //check if email registered in LFE var user = _userAccountServices.FindUserByEmail(result.UserName); if (user == null) { return(CreateOrUpdateExternalAccountAndLoginUser(result, out email, out error, trackingId, registrationSource)); } email = user.Email; return(CreateAuthenticationTicket(user.Email, string.Empty, trackingId, out error)); } catch (Exception ex) { error = Utils.FormatError(ex); return(false); } }
private bool CreateOrUpdateExternalAccountAndLoginUser(AuthenticationResult result, out string email, out string error, string trackingId, CommonEnums.eRegistrationSources registrationSource) { return(_userAccountServices.CreateOrUpdateExternalAccountAndLoginUser(result, out email, out error, trackingId, registrationSource, GetReferrer())); }
private void UpdateStoreRegistrationSource(WebStores entity, CommonEnums.eRegistrationSources source) { entity.RegistrationSourceId = (byte)source; WebStoreRepository.UnitOfWork.CommitAndRefreshChanges(); }