public static void UploadNzb(NewzNabSearchResult result, Issue issue, Comic comic) { if (result == null) { return; } if (!ConfigManager.HasValue <SabConfig>()) { return; } var sabConfig = ConfigManager.GetConfig <SabConfig>(); var host = new StringBuilder(); host.Append(sabConfig.HostUrl); var client = new SabnzbdClient(sabConfig.HostUrl, ushort.Parse(sabConfig.Port.ToString()), sabConfig.ApIkey, sabConfig.Root, sabConfig.Https); { string nzbName = Regex.Replace(result.Title, "[^a-zA-Z0-9_]+", "_"); client.AddQueue(result.NZBUrl, nzbName, "comics"); } }
public static List <Title> GetTitles() { if (!ConfigManager.HasValue <MylarConfig>()) { return(null); } var request = new RestRequest("/", Method.GET); request.AddParameter("apikey", GetConfig().APIkey); request.AddParameter("cmd", "getIndex"); var response = GetRestClient().Execute(request); var content = response.Content; if (response.StatusCode != HttpStatusCode.OK) { return(null); } var jsonSerializerSettings = new JsonSerializerSettings(); jsonSerializerSettings.MissingMemberHandling = MissingMemberHandling.Ignore; return(JsonConvert.DeserializeObject <List <Title> >(content, jsonSerializerSettings)); }
public static List <TorzNabResult> Search(Issue issue, Comic comic) { var results = new List <TorzNabResult>(); if (!ConfigManager.HasValue <TorzNabConfig>()) { return(null); } var torzNabConfig = ConfigManager.GetConfig <TorzNabConfig>(); if (!string.IsNullOrEmpty(torzNabConfig.TorzNabURL_1) && torzNabConfig.TorzNabEnabled_1) { try { results.AddRange(TorzNabManager.SearchIssue(issue, comic, torzNabConfig.TorzNabURL_1, torzNabConfig.TorzNabApiKey_1)); } catch (Exception e) { //disable provider //torzNabConfig.TorzNabEnabled_1 = false; ConfigManager.SetConfigValue(torzNabConfig); ConfigManager.Save(); } } return(results); }
public static List <TorzNabResult> SearchIssue(Issue issue, Comic comic, string host, string apiKey) { if (!ConfigManager.HasValue <MylarConfig>()) { return(null); } var request = new RestRequest("/", Method.GET); request.AddParameter("apikey", apiKey); request.AddParameter("cat", "100094,8020,100061,10020"); string query = Regex.Replace(comic.ComicName, "[^a-zA-Z0-9_]+", " "); request.AddParameter("q", query); var response = GetRestClient(host).Execute(request); return(response.StatusCode != HttpStatusCode.OK ? new List <TorzNabResult>() : ParseTorzNabXml(response.Content) .Where(result => TitleParsingManager.TitleMatch(result.Title, issue, comic)).ToList()); }
public static List <NewzNabSearchResult> Search(Issue issue, Comic comic) { var results = new List <NewzNabSearchResult>(); if (!ConfigManager.HasValue <NewzNabConfig>()) { return(null); } var newzNabConfig = ConfigManager.GetConfig <NewzNabConfig>(); if (!string.IsNullOrEmpty(newzNabConfig.NewzNabURL_1) && newzNabConfig.NewzNabEnabled_1) { try { results.AddRange(NewzNabManager.SearchForIssue(issue, comic, newzNabConfig.NewzNabURL_1, newzNabConfig.NewzNabApiKey_1, newzNabConfig.NewzNabName_1)); } catch { //disable provider newzNabConfig.NewzNabEnabled_1 = false; ConfigManager.SetConfigValue(newzNabConfig); ConfigManager.Save(); } } if (!string.IsNullOrEmpty(newzNabConfig.NewzNabURL_2) && newzNabConfig.NewzNabEnabled_2) { try { results.AddRange(NewzNabManager.SearchForIssue(issue, comic, newzNabConfig.NewzNabURL_2, newzNabConfig.NewzNabApiKey_2, newzNabConfig.NewzNabName_2)); } catch { //disable provider newzNabConfig.NewzNabEnabled_1 = false; ConfigManager.SetConfigValue(newzNabConfig); ConfigManager.Save(); } } if (!string.IsNullOrEmpty(newzNabConfig.NewzNabURL_3) && newzNabConfig.NewzNabEnabled_3) { try { results.AddRange(NewzNabManager.SearchForIssue(issue, comic, newzNabConfig.NewzNabURL_3, newzNabConfig.NewzNabApiKey_3, newzNabConfig.NewzNabName_3)); } catch { //disable provider newzNabConfig.NewzNabEnabled_3 = false; ConfigManager.SetConfigValue(newzNabConfig); ConfigManager.Save(); } } if (!string.IsNullOrEmpty(newzNabConfig.NewzNabURL_4) && newzNabConfig.NewzNabEnabled_4) { try { results.AddRange(NewzNabManager.SearchForIssue(issue, comic, newzNabConfig.NewzNabURL_4, newzNabConfig.NewzNabApiKey_4, newzNabConfig.NewzNabName_4)); } catch { //disable provider newzNabConfig.NewzNabEnabled_4 = false; ConfigManager.SetConfigValue(newzNabConfig); ConfigManager.Save(); } } return(results); }