protected override IFilter BuildTextSearchFilter() { // Search in both Series and Episode names var filter = new BooleanCombinationFilter(BooleanOperator.Or, new IFilter[] { new LikeFilter(SeriesAspect.ATTR_SERIESNAME, GetSearchTerm(), null), new LikeFilter(SeriesAspect.ATTR_EPISODENAME, GetSearchTerm(), null) }); return filter; }
protected override IFilter BuildTextSearchFilter() { // Search in both Title and Channel var filter = new BooleanCombinationFilter(BooleanOperator.Or, new IFilter[] { new LikeFilter(MediaAspect.ATTR_TITLE, GetSearchTerm(), null), new LikeFilter(RecordingAspect.ATTR_CHANNEL, GetSearchTerm(), null) }); return filter; }
protected override IFilter BuildTextSearchFilter() { // Search in both Artists and Title names var filter = new BooleanCombinationFilter(BooleanOperator.Or, new IFilter[] { new LikeFilter(AudioAspect.ATTR_ALBUMARTISTS, GetSearchTerm(), null), new LikeFilter(AudioAspect.ATTR_ARTISTS, GetSearchTerm(), null), new LikeFilter(MediaAspect.ATTR_TITLE, GetSearchTerm(), null) }); return filter; }
protected IFilter AddOnlyOnlineFilter(IFilter innerFilter) { IFilter onlineFilter = new BooleanCombinationFilter(BooleanOperator.Or, _systemsOnline.Select( systemEntry => new RelationalFilter(ProviderResourceAspect.ATTR_SYSTEM_ID, RelationalOperator.EQ, systemEntry.Key))); return innerFilter == null ? onlineFilter : BooleanCombinationFilter.CombineFilters(BooleanOperator.And, innerFilter, onlineFilter); }