public PartialFindResult <UserForApiContract> GetList( string query = "", UserGroupId groups = UserGroupId.Nothing, DateTime?joinDateAfter = null, DateTime?joinDateBefore = null, NameMatchMode nameMatchMode = NameMatchMode.Auto, int start = 0, int maxResults = 10, bool getTotalCount = false, UserSortRule?sort = null, bool includeDisabled = false, bool onlyVerified = false, string knowsLanguage = null, UserOptionalFields fields = UserOptionalFields.None) { var queryParams = new UserQueryParams { Common = new CommonSearchParams(SearchTextQuery.Create(query, nameMatchMode), false, false), Group = groups, IncludeDisabled = includeDisabled, OnlyVerifiedArtists = onlyVerified, KnowsLanguage = knowsLanguage, JoinDateAfter = joinDateAfter, JoinDateBefore = joinDateBefore, Sort = sort ?? UserSortRule.Name, Paging = new PagingProperties(start, maxResults, getTotalCount) }; return(queries.GetUsers(queryParams, user => new UserForApiContract(user, userIconFactory, fields))); }
public PartialFindResult <UserForApiContract> GetList( string query = "", UserGroupId groups = UserGroupId.Nothing, NameMatchMode nameMatchMode = NameMatchMode.Auto, int start = 0, int maxResults = 10, bool getTotalCount = false, UserSortRule?sort = null, bool includeDisabled = false, bool onlyVerified = false, string knowsLanguage = null, UserOptionalFields fields = UserOptionalFields.None) { return(queries.GetUsers(SearchTextQuery.Create(query, nameMatchMode), groups, includeDisabled, onlyVerified, knowsLanguage, sort ?? UserSortRule.Name, new PagingProperties(start, maxResults, getTotalCount), user => new UserForApiContract(user, userIconFactory, fields))); }
public UserForApiContract(User user, IUserIconFactory iconFactory, UserOptionalFields optionalFields) : base(user) { Active = user.Active; GroupId = user.GroupId; MemberSince = user.CreateDate; if (optionalFields.HasFlag(UserOptionalFields.MainPicture) && !string.IsNullOrEmpty(user.Email)) { var thumbUrl = iconFactory.GetIconUrl(user); MainPicture = new EntryThumbForApiContract { UrlThumb = thumbUrl, }; } }
public RatedSongForUserForApiContract[] GetRatings(int songId, UserOptionalFields userFields, ContentLanguagePreference lang) { return(repository.HandleQuery(ctx => ctx.Load <Song>(songId).UserFavorites.Select(r => new RatedSongForUserForApiContract(r, userIconFactory, userFields)).ToArray())); }
public UserForApiContract GetOne(int id, UserOptionalFields fields = UserOptionalFields.None) => queries.GetOne(id, fields);
public UserForApiContract GetCurrent(UserOptionalFields fields = UserOptionalFields.None) => queries.GetUser(permissionContext.LoggedUserId, fields);
public IEnumerable <RatedSongForUserForApiContract> GetRatings(int id, UserOptionalFields userFields, ContentLanguagePreference lang = ContentLanguagePreference.Default) { return(queries.GetRatings(id, userFields, lang)); }
public UserForApiContract GetOne(int id, UserOptionalFields fields = UserOptionalFields.None) { return(queries.HandleQuery(ctx => new UserForApiContract(ctx.Load(id), userIconFactory, fields))); }
public RatedSongForUserForApiContract(FavoriteSongForUser ratedSong, IUserIconFactory userIconFactory, UserOptionalFields userFields, IUserPermissionContext userPermissionContext) { Date = ratedSong.Date; Rating = ratedSong.Rating; if (ratedSong.User.Options.PublicRatings || userPermissionContext.HasPermission(PermissionToken.ViewHiddenRatings)) { User = new UserForApiContract(ratedSong.User, userIconFactory, userFields); } }
public UserForApiContract(User user, string fallbackName, IUserIconFactory iconFactory, UserOptionalFields optionalFields) : base(user, fallbackName) { if (user == null) { return; } Active = user.Active; GroupId = user.GroupId; MemberSince = user.CreateDate; VerifiedArtist = user.VerifiedArtist; if (optionalFields.HasFlag(UserOptionalFields.KnownLanguages)) { KnownLanguages = user.KnownLanguages.Select(l => new UserKnownLanguageContract(l)).ToArray(); } if (optionalFields.HasFlag(UserOptionalFields.MainPicture) && !string.IsNullOrEmpty(user.Email) && iconFactory != null) { MainPicture = iconFactory.GetIcons(user, ImageSizes.All); } if (optionalFields.HasFlag(UserOptionalFields.OldUsernames)) { OldUsernames = user.OldUsernames.Select(n => new OldUsernameContract(n)).ToArray(); } }
public UserForApiContract(User user, IUserIconFactory iconFactory, UserOptionalFields optionalFields) : this(user, null, iconFactory, optionalFields) { }
public RatedSongForUserForApiContract(FavoriteSongForUser ratedSong, IUserIconFactory userIconFactory, UserOptionalFields userFields) { this.Date = ratedSong.Date; this.Rating = ratedSong.Rating; if (ratedSong.User.Options.PublicRatings) { User = new UserForApiContract(ratedSong.User, userIconFactory, userFields); } }