コード例 #1
0
        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");
            }
        }
コード例 #2
0
ファイル: MylarManager.cs プロジェクト: kctec/MylarSideCar
        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));
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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());
        }
コード例 #5
0
        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);
        }