public JsonResult SaveIndexers(IndexerSettingsModel data) { if (ModelState.IsValid) { _configProvider.Retention = data.Retention; var nzbMatrixSettings = _indexerProvider.GetSettings(typeof(NzbMatrix)); nzbMatrixSettings.Enable = data.NzbMatrixEnabled; _indexerProvider.SaveSettings(nzbMatrixSettings); var nzbsRUsSettings = _indexerProvider.GetSettings(typeof(NzbsRUs)); nzbsRUsSettings.Enable = data.NzbsRUsEnabled; _indexerProvider.SaveSettings(nzbsRUsSettings); var newzbinSettings = _indexerProvider.GetSettings(typeof(Newzbin)); newzbinSettings.Enable = data.NewzbinEnabled; _indexerProvider.SaveSettings(newzbinSettings); var newznabSettings = _indexerProvider.GetSettings(typeof(Newznab)); newznabSettings.Enable = data.NewznabEnabled; _indexerProvider.SaveSettings(newznabSettings); var womblesSettings = _indexerProvider.GetSettings(typeof(Wombles)); womblesSettings.Enable = data.WomblesEnabled; _indexerProvider.SaveSettings(womblesSettings); var fileSharingTalkSettings = _indexerProvider.GetSettings(typeof(FileSharingTalk)); fileSharingTalkSettings.Enable = data.FileSharingTalkEnabled; _indexerProvider.SaveSettings(fileSharingTalkSettings); var nzbIndexSettings = _indexerProvider.GetSettings(typeof(NzbIndex)); nzbIndexSettings.Enable = data.NzbIndexEnabled; _indexerProvider.SaveSettings(nzbIndexSettings); var nzbClubSettings = _indexerProvider.GetSettings(typeof(NzbClub)); nzbClubSettings.Enable = data.NzbClubEnabled; _indexerProvider.SaveSettings(nzbClubSettings); _configProvider.NzbMatrixUsername = data.NzbMatrixUsername; _configProvider.NzbMatrixApiKey = data.NzbMatrixApiKey; _configProvider.NzbsrusUId = data.NzbsrusUId; _configProvider.NzbsrusHash = data.NzbsrusHash; _configProvider.NewzbinUsername = data.NewzbinUsername; _configProvider.NewzbinPassword = data.NewzbinPassword; _configProvider.FileSharingTalkUid = data.FileSharingTalkUid; _configProvider.FileSharingTalkSecret = data.FileSharingTalkSecret; //Save the interval to config and immediately apply it the the job (to avoid a restart) _configProvider.RssSyncInterval = data.RssSyncInterval; var rssSyncJob = _jobProvider.GetDefinition(typeof(RssSyncJob)); rssSyncJob.Interval = data.RssSyncInterval; _jobProvider.SaveDefinition(rssSyncJob); try { if (data.NewznabDefinitions != null) _newznabProvider.SaveAll(data.NewznabDefinitions); } catch(Exception) { return JsonNotificationResult.Oops("Invalid Nzbnab Indexer found, please check your settings"); } return GetSuccessResult(); } return GetInvalidModelResult(); }
public JsonResult SaveIndexers(IndexerSettingsModel data) { if (ModelState.IsValid) { _configProvider.Retention = data.Retention; var nzbsOrgSettings = _indexerProvider.GetSettings(typeof(NzbsOrg)); nzbsOrgSettings.Enable = data.NzbsOrgEnabled; _indexerProvider.SaveSettings(nzbsOrgSettings); var nzbMatrixSettings = _indexerProvider.GetSettings(typeof(NzbMatrix)); nzbMatrixSettings.Enable = data.NzbMatrixEnabled; _indexerProvider.SaveSettings(nzbMatrixSettings); var nzbsRUsSettings = _indexerProvider.GetSettings(typeof(NzbsRUs)); nzbsRUsSettings.Enable = data.NzbsRUsEnabled; _indexerProvider.SaveSettings(nzbsRUsSettings); var newzbinSettings = _indexerProvider.GetSettings(typeof(Newzbin)); newzbinSettings.Enable = data.NewzbinEnabled; _indexerProvider.SaveSettings(newzbinSettings); var newznabSettings = _indexerProvider.GetSettings(typeof(Newznab)); newznabSettings.Enable = data.NewznabEnabled; _indexerProvider.SaveSettings(newznabSettings); _configProvider.NzbsOrgUId = data.NzbsOrgUId; _configProvider.NzbsOrgHash = data.NzbsOrgHash; _configProvider.NzbMatrixUsername = data.NzbMatrixUsername; _configProvider.NzbMatrixApiKey = data.NzbMatrixApiKey; _configProvider.NzbsrusUId = data.NzbsrusUId; _configProvider.NzbsrusHash = data.NzbsrusHash; _configProvider.NewzbinUsername = data.NewzbinUsername; _configProvider.NewzbinPassword = data.NewzbinPassword; if (data.NewznabDefinitions != null) _newznabProvider.SaveAll(data.NewznabDefinitions); return GetSuccessResult(); } return GetInvalidModelResult(); }