/// <summary> /// Get YAF User Id from the Current DNN User /// </summary> /// <returns> /// The YAF User ID /// </returns> private int GetYafUserId() { // Check for user if (!HttpContext.Current.User.Identity.IsAuthenticated) { return(UserMembershipHelper.GuestUserId); } // get the user from the membership provider var dnnUser = Membership.GetUser(this.UserInfo.Username, true); // Check if the user exists in yaf var yafUserId = LegacyDb.user_get(this.boardId, dnnUser.ProviderUserKey); if (!yafUserId.Equals(0)) { return(yafUserId); } // Get current DNN user var dnnUserInfo = UserController.GetCurrentUserInfo(); return(UserImporter.CreateYafUser( dnnUserInfo, dnnUser, this.boardId, this.PortalSettings.PortalId, YafContext.Current.Get <YafBoardSettings>())); }
/// <summary> /// Check if the DNN User exists in YAF, and if the Profile is up to date. /// </summary> private void CreateOrUpdateUser() { // Get current DNN user var dnnUserInfo = UserController.GetCurrentUserInfo(); // get the user from the membership provider MembershipUser dnnMembershipUser = Membership.GetUser(dnnUserInfo.Username, true); if (dnnMembershipUser == null) { return; } // Check if the user exists in yaf var yafUserId = LegacyDb.user_get(this.forum1.BoardID, dnnMembershipUser.ProviderUserKey); var boardSettings = YafContext.Current == null ? new YafLoadBoardSettings(this.forum1.BoardID) : YafContext.Current.Get <YafBoardSettings>(); if (yafUserId.Equals(0)) { yafUserId = UserImporter.CreateYafUser( dnnUserInfo, dnnMembershipUser, this.forum1.BoardID, this.CurrentPortalSettings.PortalId, boardSettings); // super admin check... if (dnnUserInfo.IsSuperUser) { UserImporter.CreateYafHostUser(yafUserId, this.forum1.BoardID); } } else { this.CheckForRoles(dnnUserInfo, yafUserId); ProfileSyncronizer.UpdateUserProfile( yafUserId, YafContext.Current.Profile, YafContext.Current.CurrentUserData, dnnUserInfo, dnnMembershipUser, this.CurrentPortalSettings.PortalId, this.CurrentPortalSettings.GUID, boardSettings); } }
/// <summary> /// Check if the DNN User exists in YAF, and if the Profile is up to date. /// </summary> private void CreateOrUpdateUser() { // Get current DNN user var dnnUserInfo = UserController.Instance.GetCurrentUserInfo(); // Check if the user exists in yaf var yafUser = this.GetRepository <User>().GetUserByProviderKey(this.forum1.BoardID, dnnUserInfo.UserID.ToString()); if (yafUser == null) { // Migrate from Yaf < 3 yafUser = this.GetRepository <User>() .GetSingle(u => u.Name == dnnUserInfo.Username && u.Email == dnnUserInfo.Email); if (yafUser != null) { // update provider Key this.GetRepository <User>().UpdateOnly( () => new User { ProviderUserKey = dnnUserInfo.UserID.ToString() }, u => u.ID == yafUser.ID); } } var boardSettings = BoardContext.Current == null ? new LoadBoardSettings(this.forum1.BoardID) : this.Get <BoardSettings>(); if (yafUser == null) { var yafUserId = UserImporter.CreateYafUser( dnnUserInfo, this.forum1.BoardID, this.CurrentPortalSettings.PortalId, boardSettings); // super admin check... if (dnnUserInfo.IsSuperUser) { UserImporter.SetYafHostUser(yafUserId, this.forum1.BoardID); } } else { this.CheckForRoles(dnnUserInfo, yafUser.ID); } }
/// <summary> /// Check if the DNN User exists in YAF, and if the Profile is up to date. /// </summary> private void CreateOrUpdateUser() { // Get current DNN user var dnnUserInfo = UserController.Instance.GetCurrentUserInfo(); // get the user from the membership provider var dnnMembershipUser = Membership.GetUser(dnnUserInfo.Username, true); if (dnnMembershipUser == null) { return; } // Check if the user exists in yaf var yafUserId = BoardContext.Current.GetRepository <User>().GetUserId(this.forum1.BoardID, dnnMembershipUser.ProviderUserKey.ToString()); var boardSettings = BoardContext.Current == null ? new LoadBoardSettings(this.forum1.BoardID) : BoardContext.Current.Get <BoardSettings>(); if (yafUserId.Equals(0)) { yafUserId = UserImporter.CreateYafUser( dnnUserInfo, dnnMembershipUser, this.forum1.BoardID, this.CurrentPortalSettings.PortalId, boardSettings); // super admin check... if (dnnUserInfo.IsSuperUser) { UserImporter.SetYafHostUser(yafUserId, this.forum1.BoardID); } } else { this.CheckForRoles(dnnUserInfo, yafUserId); ProfileSyncronizer.UpdateUserProfile( yafUserId, BoardContext.Current.Profile, BoardContext.Current.CurrentUserData, dnnUserInfo, boardSettings); } }
/// <summary> /// Get YAF User Id from the Current DNN User /// </summary> /// <returns> /// The YAF User ID /// </returns> private int GetYafUserId() { // Check for user if (!HttpContext.Current.User.Identity.IsAuthenticated) { return(BoardContext.Current.Get <IAspNetUsersHelper>().GuestUserId); } // Check if the user exists in yaf var yafUser = BoardContext.Current.GetRepository <User>().GetUserByProviderKey(this.boardId, this.UserInfo.UserID.ToString()); if (yafUser != null) { return(yafUser.ID); } yafUser = BoardContext.Current.GetRepository <User>() .GetSingle(u => u.Name == this.UserInfo.Username && u.Email == this.UserInfo.Email); if (yafUser == null) { return(UserImporter.CreateYafUser( this.UserInfo, this.boardId, this.PortalSettings.PortalId, BoardContext.Current.Get <BoardSettings>())); } { // update provider Key BoardContext.Current.GetRepository <User>().UpdateOnly( () => new User { ProviderUserKey = this.UserInfo.UserID.ToString() }, u => u.ID == yafUser.ID); return(yafUser.ID); } }