aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs26
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs5
-rw-r--r--MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json3
3 files changed, 32 insertions, 2 deletions
diff --git a/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs b/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs
index 668f023d2..269da5768 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs
@@ -523,6 +523,31 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings
}
}
+ private async Task AddLineupToAccount(ListingsProviderInfo info, CancellationToken cancellationToken)
+ {
+ var token = await GetToken(info, cancellationToken);
+
+ if (string.IsNullOrWhiteSpace(token))
+ {
+ throw new ArgumentException("Authentication required.");
+ }
+
+ _logger.Info("Adding new LineUp ");
+
+ var httpOptions = new HttpRequestOptions()
+ {
+ Url = ApiUrl + "/lineups/" + info.ListingsId,
+ UserAgent = UserAgent,
+ CancellationToken = cancellationToken
+ };
+
+ httpOptions.RequestHeaders["token"] = token;
+
+ using (var response = await _httpClient.SendAsync(httpOptions, "PUT"))
+ {
+ }
+ }
+
public string Name
{
get { return "Schedules Direct"; }
@@ -814,6 +839,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings
public async Task Validate(ListingsProviderInfo info)
{
+ await AddLineupToAccount(info, CancellationToken.None).ConfigureAwait(false);
}
public Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string location)
diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
index a64ce31cf..52bb41ba1 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
@@ -2200,6 +2200,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv
}
_config.SaveConfiguration("livetv", config);
+
+ _taskManager.CancelIfRunningAndQueue<RefreshChannelsScheduledTask>();
}
public async Task<ListingsProviderInfo> SaveListingProvider(ListingsProviderInfo info)
@@ -2231,10 +2233,11 @@ namespace MediaBrowser.Server.Implementations.LiveTv
_config.SaveConfiguration("livetv", config);
+ _taskManager.CancelIfRunningAndQueue<RefreshChannelsScheduledTask>();
+
return info;
}
-
public Task<List<NameIdPair>> GetLineups(string providerId, string location)
{
var config = GetConfiguration();
diff --git a/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json b/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
index cea0363f4..674ee855f 100644
--- a/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
+++ b/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
@@ -823,5 +823,6 @@
"HeaderAddProvider": "Add Provider",
"ErrorAddingTunerDevice": "There was an error adding the tuner device. Please ensure it is accessible and try again.",
"ErrorSavingTvProvider": "There was an error saving the TV provider. Please ensure it is accessible and try again.",
- "ErrorGettingTvLineups": "There was an error downloading tv lineups. Please ensure your username and password are correct and try again."
+ "ErrorGettingTvLineups": "There was an error downloading tv lineups. Please ensure your username and password are correct and try again.",
+ "MessageCreateAccountAt": "Create an account at {0}"
}