public IEnumerable <PatternMatch> GetPatternsWithGravityShare(ProfileItem visibleProfile) { var userPattern = visibleProfile.PatternSpace.CreatePattern(Tracker.Current.Interaction.Profiles[visibleProfile.Name]); var patterns = PopulateProfilePatternMatchesWithXdbData.GetPatternsWithGravityShare(visibleProfile, userPattern); return(patterns.Select(patternKeyValuePair => CreatePatternMatch(visibleProfile, patternKeyValuePair))); }
public IEnumerable <PatternMatch> GetPatternsWithGravityShare(ProfileItem visibleProfile, ProfilingTypes type) { Assert.ArgumentNotNull(visibleProfile, nameof(visibleProfile)); var userPattern = type == ProfilingTypes.Historic ? this.GetHistoricMatchedPattern(visibleProfile) : this.GetActiveMatchedPattern(visibleProfile); var patterns = PopulateProfilePatternMatchesWithXdbData.GetPatternsWithGravityShare(visibleProfile, userPattern); return(patterns.Select(patternKeyValuePair => CreatePatternMatch(visibleProfile, patternKeyValuePair)).OrderByDescending(pm => pm.MatchPercentage)); }
public IEnumerable <PatternMatch> GetPatternsWithGravityShare(ProfileItem visibleProfile) { var userPattern = visibleProfile.PatternSpace.CreatePattern(Tracker.Current.Interaction.Profiles[visibleProfile.Name]); var patterns = PopulateProfilePatternMatchesWithXdbData.GetPatternsWithGravityShare(visibleProfile, userPattern); return(from patternKeyValuePair in patterns let src = patternKeyValuePair.Key.Image?.MediaItem == null ? string.Empty : patternKeyValuePair.Key.Image.ImageUrl(new MediaUrlOptions { Width = 50, MaxWidth = 50 }) select new PatternMatch(visibleProfile.NameField, patternKeyValuePair.Key.NameField, src, patternKeyValuePair.Value)); }