public ReleaseEventForApiContract(ReleaseEvent rel, ReleaseEventOptionalFields fields) { Date = rel.Date; Id = rel.Id; Name = rel.Name; SeriesNumber = rel.SeriesNumber; SeriesSuffix = rel.SeriesSuffix; UrlSlug = rel.UrlSlug; if (rel.Series != null) { SeriesId = rel.Series.Id; } if (fields.HasFlag(ReleaseEventOptionalFields.Description)) { Description = rel.Description; } if (fields.HasFlag(ReleaseEventOptionalFields.Series) && rel.Series != null) { Series = new ReleaseEventSeriesContract(rel.Series); } if (fields.HasFlag(ReleaseEventOptionalFields.SongList) && rel.SongList != null) { SongList = new SongListBaseContract(rel.SongList); } if (fields.HasFlag(ReleaseEventOptionalFields.WebLinks)) { WebLinks = rel.WebLinks.Select(w => new WebLinkForApiContract(w)).ToArray(); } }
public PartialFindResult <ReleaseEventForApiContract> GetList( string query = "", int seriesId = 0, int start = 0, int maxResults = defaultMax, bool getTotalCount = false, EventSortRule sort = EventSortRule.Name, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None ) { query = !string.IsNullOrEmpty(query) ? FindHelpers.CleanTerm(query.Trim()) : string.Empty; return(repository.HandleQuery(ctx => { var q = ctx.Query() .WhereHasName(query) .WhereHasSeries(seriesId); var entries = q .OrderBy(sort) .Skip(start) .Take(maxResults) .ToArray() .Select(e => new ReleaseEventForApiContract(e, fields)) .ToArray(); var count = 0; if (getTotalCount) { count = q.Count(); } return new PartialFindResult <ReleaseEventForApiContract>(entries, count); })); }
public PartialFindResult <ReleaseEventForApiContract> GetList( string query = "", NameMatchMode nameMatchMode = NameMatchMode.Auto, int seriesId = 0, DateTime?afterDate = null, DateTime?beforeDate = null, int start = 0, int maxResults = defaultMax, bool getTotalCount = false, EventSortRule sort = EventSortRule.Name, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None ) { var textQuery = SearchTextQuery.Create(query, nameMatchMode); return(queries.Find(e => new ReleaseEventForApiContract(e, fields), textQuery, seriesId, afterDate, beforeDate, start, maxResults, getTotalCount, sort)); }
public PartialFindResult <ReleaseEventForApiContract> GetList( string query = "", NameMatchMode nameMatchMode = NameMatchMode.Auto, int seriesId = 0, DateTime?afterDate = null, DateTime?beforeDate = null, EventCategory category = EventCategory.Unspecified, int?userCollectionId = null, [FromQuery(Name = "tagId[]")] int[] tagId = null, bool childTags = false, [FromQuery(Name = "artistId[]")] int[] artistId = null, bool childVoicebanks = false, bool includeMembers = false, EntryStatus?status = null, int start = 0, int maxResults = DefaultMax, bool getTotalCount = false, EventSortRule sort = EventSortRule.Name, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None, ContentLanguagePreference lang = ContentLanguagePreference.Default ) { var textQuery = SearchTextQuery.Create(query, nameMatchMode); var queryParams = new EventQueryParams { TextQuery = textQuery, SeriesId = seriesId, AfterDate = afterDate, BeforeDate = beforeDate, Category = category, UserId = userCollectionId ?? 0, ArtistIds = new EntryIdsCollection(artistId), ChildVoicebanks = childVoicebanks, IncludeMembers = includeMembers, ChildTags = childTags, TagIds = tagId, EntryStatus = status, Paging = new PagingProperties(start, maxResults, getTotalCount), SortRule = sort }; return(_queries.Find(e => new ReleaseEventForApiContract(e, lang, fields, _thumbPersister), queryParams)); }
public ReleaseEventForApiContract(ReleaseEvent rel, ReleaseEventOptionalFields fields) { Date = rel.Date; Id = rel.Id; Name = rel.Name; SeriesNumber = rel.SeriesNumber; SeriesSuffix = rel.SeriesSuffix; if (rel.Series != null) { SeriesId = rel.Series.Id; } if (fields.HasFlag(ReleaseEventOptionalFields.Description)) { Description = rel.Description; } if (fields.HasFlag(ReleaseEventOptionalFields.Series) && rel.Series != null) { Series = new ReleaseEventSeriesContract(rel.Series); } }
public PartialFindResult <ReleaseEventForApiContract> GetList( string query = "", int seriesId = 0, DateTime?afterDate = null, DateTime?beforeDate = null, int start = 0, int maxResults = defaultMax, bool getTotalCount = false, EventSortRule sort = EventSortRule.Name, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None ) { var textQuery = SearchTextQuery.Create(query); return(repository.HandleQuery(ctx => { var q = ctx.Query() .WhereHasName(textQuery) .WhereHasSeries(seriesId) .WhereDateIsBetween(afterDate, beforeDate); var entries = q .OrderBy(sort) .Skip(start) .Take(maxResults) .ToArray() .Select(e => new ReleaseEventForApiContract(e, fields)) .ToArray(); var count = 0; if (getTotalCount) { count = q.Count(); } return new PartialFindResult <ReleaseEventForApiContract>(entries, count); })); }
public ReleaseEventForApiContract Load(int id, ReleaseEventOptionalFields fields) { return(repository.HandleQuery(ctx => new ReleaseEventForApiContract(ctx.Load(id), LanguagePreference, fields, imagePersister, true))); }
public ReleaseEventForApiContract GetOne(int id, ContentLanguagePreference lang, ReleaseEventOptionalFields fields, bool ssl) { return(repository.HandleQuery(ctx => new ReleaseEventForApiContract(ctx.Load(id), lang, fields, imagePersister, ssl))); }
public ReleaseEventForApiContract GetOne(int id, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None, ContentLanguagePreference lang = ContentLanguagePreference.Default) => queries.GetOne(id, lang, fields);
public ReleaseEventForApiContract(ReleaseEvent rel, ContentLanguagePreference languagePreference, ReleaseEventOptionalFields fields, IEntryThumbPersister thumbPersister) { Category = rel.Category; Date = rel.Date; EndDate = rel.EndDate; Id = rel.Id; Name = rel.TranslatedName[languagePreference]; SeriesNumber = rel.SeriesNumber; SeriesSuffix = rel.SeriesSuffix; Status = rel.Status; UrlSlug = rel.UrlSlug; VenueName = rel.VenueName; Version = rel.Version; if (rel.HasSeries) { SeriesId = rel.Series.Id; } if (fields.HasFlag(ReleaseEventOptionalFields.AdditionalNames)) { AdditionalNames = rel.Names.GetAdditionalNamesStringForLanguage(languagePreference); } if (fields.HasFlag(ReleaseEventOptionalFields.Artists)) { Artists = rel.Artists.Select(a => new ArtistForEventContract(a, languagePreference)).ToArray(); } if (fields.HasFlag(ReleaseEventOptionalFields.Description)) { Description = rel.Description; } if (thumbPersister != null && fields.HasFlag(ReleaseEventOptionalFields.MainPicture)) { MainPicture = EntryThumbForApiContract.Create(EntryThumb.Create(rel) ?? EntryThumb.Create(rel.Series), thumbPersister); } if (fields.HasFlag(ReleaseEventOptionalFields.Names)) { Names = rel.Names.Select(n => new LocalizedStringContract(n)).ToArray(); } if (fields.HasFlag(ReleaseEventOptionalFields.Series) && rel.HasSeries) { Series = new ReleaseEventSeriesContract(rel.Series, languagePreference); } if (fields.HasFlag(ReleaseEventOptionalFields.SongList) && rel.SongList != null) { SongList = new SongListBaseContract(rel.SongList); } if (fields.HasFlag(ReleaseEventOptionalFields.WebLinks)) { WebLinks = rel.WebLinks.Select(w => new WebLinkForApiContract(w)).ToArray(); } }
public PartialFindResult<ReleaseEventForApiContract> GetList( string query = "", int seriesId = 0, int start = 0, int maxResults = defaultMax, bool getTotalCount = false, EventSortRule sort = EventSortRule.Name, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None ) { query = !string.IsNullOrEmpty(query) ? FindHelpers.CleanTerm(query.Trim()) : string.Empty; return repository.HandleQuery(ctx => { var q = ctx.Query() .WhereHasName(query) .WhereHasSeries(seriesId); var entries = q .OrderBy(sort) .Skip(start) .Take(maxResults) .ToArray() .Select(e => new ReleaseEventForApiContract(e, fields)) .ToArray(); var count = 0; if (getTotalCount) { count = q.Count(); } return new PartialFindResult<ReleaseEventForApiContract>(entries, count); }); }
public ReleaseEventForApiContract GetOne(int id, ReleaseEventOptionalFields fields = ReleaseEventOptionalFields.None, ContentLanguagePreference lang = ContentLanguagePreference.Default) { return(queries.GetOne(id, lang, fields, WebHelper.IsSSL(Request))); }
public static EventForUserContract CreateForUser(EventForUser link, ContentLanguagePreference languagePreference, ReleaseEventOptionalFields releaseEventFields, IEntryThumbPersister entryThumbPersister) { return(new EventForUserContract { RelationshipType = link.RelationshipType, ReleaseEvent = new ReleaseEventForApiContract(link.ReleaseEvent, languagePreference, releaseEventFields, entryThumbPersister, true) }); }
public ReleaseEventForApiContract GetOne(int id, ReleaseEventOptionalFields fields) { return(repository.HandleQuery(ctx => new ReleaseEventForApiContract(ctx.Load(id), fields))); }
public ReleaseEventForApiContract Load(int id, ReleaseEventOptionalFields fields) { return(_repository.HandleQuery(ctx => new ReleaseEventForApiContract(ctx.Load(id), LanguagePreference, fields, _imageUrlFactory))); }