public void Sort(int i) { switch (i) { case 0: sortBy = DerpSortBy.CREATE; sortOrder = DerpSortOrder.DESC; break; case 1: sortBy = DerpSortBy.CREATE; sortOrder = DerpSortOrder.ASC; break; case 2: sortBy = DerpSortBy.SCORE; sortOrder = DerpSortOrder.DESC; break; case 3: sortBy = DerpSortBy.SCORE; sortOrder = DerpSortOrder.ASC; break; default: break; } }
public async Task <List <DerpImage> > GetSearchImage(List <DerpImage> myList, List <CtFileItem> downloadedList, string userkey, string key, int index, DerpSortBy sf, DerpSortOrder sd) { List <DerpImage> res = new List <DerpImage>(); try { string orl = "https://derpibooru.org/api/v1/json/"; string url = $"{orl}search/images?key={userkey}&per_page=50&q={key.Replace(' ', '+').ToLower()}&page={index}&sf={sortbyfieldName[(int)sf]}&sd={sortbyorder[(int)sd]}"; var response = await _client.GetAsync(url); if (response.StatusCode == HttpStatusCode.NotFound) { return(null); } var content = await response.Content.ReadAsStringAsync(); var imgs = JsonConvert.DeserializeObject <DerpList>(content).Images; foreach (DerpImageCpt img in imgs) { DerpImage myimg = new DerpImage(img); if (myList.Exists(i => i.Id == img.Id)) { myimg.IsFavorite = true; } if (downloadedList != null && downloadedList.Exists(i => i.Name == img.Id || i.Name.StartsWith(img.Id + "__"))) { myimg.IsDownloaded = true; } res.Add(myimg); } } catch (Exception ex) { Console.WriteLine(ex.Message); } return(res); }