Exemple #1
0
        private void AddSceneTitlePageableRequests(IndexerPageableRequestChain chain, IEnumerable <int> categories, SearchCriteriaBase searchCriteria, Func <SceneMapping, string> parametersFunc)
        {
            if (searchCriteria.SceneMappings != null)
            {
                foreach (var sceneMappingGroup in searchCriteria.SceneMappings.GroupBy(v => v.SceneSeasonNumber))
                {
                    var parameters = parametersFunc(sceneMappingGroup.First());

                    foreach (var searchTerm in sceneMappingGroup.Select(v => v.SearchTerm).Distinct())
                    {
                        if (SupportsTvTitleSearch)
                        {
                            chain.AddToTier(0, GetPagedRequests(MaxPages, Settings.Categories, "tvsearch",
                                                                string.Format("&title={0}{1}",
                                                                              Uri.EscapeDataString(searchTerm),
                                                                              parameters)));
                        }
                        else if (SupportsTvSearch)
                        {
                            chain.AddToTier(0, GetPagedRequests(MaxPages, Settings.Categories, "tvsearch",
                                                                string.Format("&q={0}{1}",
                                                                              NewsnabifyTitle(searchTerm),
                                                                              parameters)));
                        }
                    }
                }
            }
        }