/// <summary> /// Maps the values of Facebook user profile attributes to the values of CMS user fields depending on the current settings. /// </summary> /// <param name="mappingTrigger">Specifies when the mapping of Facebook user profile occurs.</param> /// <param name="user">The CMS user.</param> /// <param name="userProfileId">The Facebook user profile identifier.</param> /// <param name="facebookAccessToken">The Facebook access token.</param> /// <remarks> /// The CMS user name is updated only if it was generated by the CMS. /// </remarks> private void MapFacebookUserProfile(FacebookUserProfileMappingTriggerEnum mappingTrigger, UserInfo user, string userProfileId, string facebookAccessToken) { IFacebookUserProvider facebookUserProvider = new FacebookUserProvider(); var facebookUser = facebookUserProvider.GetFacebookUser(userProfileId, facebookAccessToken); bool userChanged = false; // Change user's full name if it is in default format if (String.IsNullOrEmpty(user.FullName) || (user.FullName == UserInfoProvider.FACEBOOKID_FULLNAME_PREFIX + userProfileId)) { user.FullName = facebookUser.FacebookName; userChanged = true; } // Map Facebook user on appropriate action if (FacebookMappingHelper.GetUserProfileMappingTrigger(SiteContext.CurrentSiteName) >= mappingTrigger) { FacebookMappingHelper.MapUserProfile(facebookUser, user); userChanged = true; } if (userChanged) { user.Update(); } }
/// <summary> /// Maps the values of Facebook user profile attributes to the values of CMS user fields depending on the current settings. /// </summary> /// <param name="mappingTrigger">Specifies when the mapping of Facebook user profile occurs.</param> /// <param name="user">The CMS user.</param> /// <param name="userProfileId">The Facebook user profile identifier.</param> /// <param name="facebookAccessToken">The Facebook access token.</param> /// <remarks> /// The CMS user name is updated only if it was generated by the CMS. /// </remarks> private void MapFacebookUserProfile(FacebookUserProfileMappingTriggerEnum mappingTrigger, UserInfo user, string userProfileId, string facebookAccessToken) { IFacebookUserProvider facebookUserProvider = new FacebookUserProvider(); var facebookUser = facebookUserProvider.GetFacebookUser(userProfileId, facebookAccessToken); bool userChanged = false; // Change user's full name if it is in default format if (String.IsNullOrEmpty(user.FullName) || (user.FullName == UserInfoProvider.FACEBOOKID_FULLNAME_PREFIX + userProfileId)) { user.FullName = facebookUser.FacebookName; userChanged = true; } // Map Facebook user on appropriate action if (FacebookMappingHelper.GetUserProfileMappingTrigger(SiteContext.CurrentSiteName) == mappingTrigger) { FacebookMappingHelper.MapUserProfile(facebookUser, user); userChanged = true; } if (userChanged) { user.Update(); } }