private async Task <List <object> > SelectSiteAsync(HentaiModel hentai) { switch (hentai.Site) { case "Hentai.cafe": { var(paths, count) = await HentaiCafe.CollectImagesTaskAsync(hentai, SetPages); Pages = $"{paths.Count} : {count}"; return(paths); } case "nHentai.net": { var(paths, count) = await NHentai.CollectImagesTaskAsync(hentai, SetPages); Pages = $"{paths.Count} : {count}"; return(paths); } case "ExHentai.org": { var(paths, count) = await ExHentai.CollectImagesTaskAsync(hentai, SetPages); Pages = $"{paths.Count} : {count}"; return(paths); } case "Pururin.us": { var(paths, count) = await Pururin.CollectImagesTaskAsync(hentai, SetPages); Pages = $"{paths.Count} : {count}"; return(paths); } case "Imgur.com": { var(paths, count) = await Sites.Imgur.CollectImagesTaskAsync(hentai, SetPages); Pages = $"{paths.Count} : {count}"; return(paths); } default: return(null); } }
private async Task LoadCafePage(int value) { SettingsController.Save(); if (CafePageLoading) { return; } CafePageLoading = true; NextCafePage = NextCafePage + value; CafeLoadedPage = CafeLoadedPage + value; if (_cafe.Count > 0) { _cafe.Clear(); } CafeView.Instance.ScrollViewer.ScrollToTop(); var searchquery = SettingsController.Settings.Cafe.SearchQuery; List <HentaiModel> i; if (string.IsNullOrEmpty(searchquery)) { i = await HentaiCafe.GetLatestAsync($"https://hentai.cafe/page/{CafeLoadedPage}"); } else { i = await HentaiCafe.GetLatestAsync( $"https://hentai.cafe/page/{CafeLoadedPage}/?s={searchquery.Replace(" ", "+")}"); } foreach (var hentaiModel in i) { if (FavoritesController.FavoriteMd5s.Contains(hentaiModel.Md5)) { hentaiModel.Favorite = true; } _cafe.Add(hentaiModel); await Task.Delay(10); } CafePageLoading = false; }