aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.WebDashboard
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-12-14 20:17:57 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-12-14 20:17:57 -0500
commit01e65c93eeeddff27fc2e0e4833678c5cc2829a0 (patch)
tree628d2359e6d723c8f9f8865104e518add252bee1 /MediaBrowser.WebDashboard
parentd576108411d254afcbefa627cea6a2d3585ab823 (diff)
updated live tv + nuget
Diffstat (limited to 'MediaBrowser.WebDashboard')
-rw-r--r--MediaBrowser.WebDashboard/Api/DashboardService.cs19
-rw-r--r--MediaBrowser.WebDashboard/ApiClient.js98
-rw-r--r--MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj2
-rw-r--r--MediaBrowser.WebDashboard/packages.config2
4 files changed, 114 insertions, 7 deletions
diff --git a/MediaBrowser.WebDashboard/Api/DashboardService.cs b/MediaBrowser.WebDashboard/Api/DashboardService.cs
index 7dcc34c5b..2188722b2 100644
--- a/MediaBrowser.WebDashboard/Api/DashboardService.cs
+++ b/MediaBrowser.WebDashboard/Api/DashboardService.cs
@@ -242,7 +242,24 @@ namespace MediaBrowser.WebDashboard.Api
pages = pages.Where(p => p.ConfigurationPageType == request.PageType.Value);
}
- return ResultFactory.GetOptimizedResult(Request, pages.Select(p => new ConfigurationPageInfo(p)).ToList());
+ // Don't allow a failing plugin to fail them all
+ var configPages = pages.Select(p =>
+ {
+
+ try
+ {
+ return new ConfigurationPageInfo(p);
+ }
+ catch (Exception ex)
+ {
+ Logger.ErrorException("Error getting plugin information from {0}", ex, p.GetType().Name);
+ return null;
+ }
+ })
+ .Where(i => i != null)
+ .ToList();
+
+ return ResultFactory.GetOptimizedResult(Request, configPages);
}
/// <summary>
diff --git a/MediaBrowser.WebDashboard/ApiClient.js b/MediaBrowser.WebDashboard/ApiClient.js
index 16e2ae3b9..53f4fde2a 100644
--- a/MediaBrowser.WebDashboard/ApiClient.js
+++ b/MediaBrowser.WebDashboard/ApiClient.js
@@ -506,20 +506,110 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi
});
};
- self.createLiveTvTimer = function (options) {
+ self.createLiveTvTimer = function (item) {
- if (!options) {
- throw new Error("null options");
+ if (!item) {
+ throw new Error("null item");
}
- var url = self.getUrl("LiveTv/Timers", options);
+ var url = self.getUrl("LiveTv/Timers");
return self.ajax({
type: "POST",
+ url: url,
+ data: JSON.stringify(item),
+ contentType: "application/json"
+ });
+ };
+
+ self.updateLiveTvTimer = function (item) {
+
+ if (!item) {
+ throw new Error("null item");
+ }
+
+ var url = self.getUrl("LiveTv/Timers/" + item.Id);
+
+ return self.ajax({
+ type: "POST",
+ url: url,
+ data: JSON.stringify(item),
+ contentType: "application/json"
+ });
+ };
+
+ self.getLiveTvSeriesTimers = function (options) {
+
+ var url = self.getUrl("LiveTv/SeriesTimers", options || {});
+
+ return self.ajax({
+ type: "GET",
+ url: url,
+ dataType: "json"
+ });
+ };
+
+ self.getLiveTvSeriesTimer = function (id) {
+
+ if (!id) {
+ throw new Error("null id");
+ }
+
+ var url = self.getUrl("LiveTv/SeriesTimers/" + id);
+
+ return self.ajax({
+ type: "GET",
+ url: url,
+ dataType: "json"
+ });
+ };
+
+ self.cancelLiveTvSeriesTimer = function (id) {
+
+ if (!id) {
+ throw new Error("null id");
+ }
+
+ var url = self.getUrl("LiveTv/SeriesTimers/" + id);
+
+ return self.ajax({
+ type: "DELETE",
url: url
});
};
+ self.createLiveTvSeriesTimer = function (item) {
+
+ if (!item) {
+ throw new Error("null item");
+ }
+
+ var url = self.getUrl("LiveTv/SeriesTimers");
+
+ return self.ajax({
+ type: "POST",
+ url: url,
+ data: JSON.stringify(item),
+ contentType: "application/json"
+ });
+ };
+
+ self.updateLiveTvSeriesTimer = function (item) {
+
+ if (!item) {
+ throw new Error("null item");
+ }
+
+ var url = self.getUrl("LiveTv/SeriesTimers/" + item.Id);
+
+ return self.ajax({
+ type: "POST",
+ url: url,
+ data: JSON.stringify(item),
+ contentType: "application/json"
+ });
+ };
+
/**
* Gets the current server status
*/
diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
index 67a54e4b7..09e68f59f 100644
--- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
+++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
@@ -1232,7 +1232,7 @@
</Content>
</ItemGroup>
<ItemGroup>
- <EmbeddedResource Include="packages.config" />
+ <None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
diff --git a/MediaBrowser.WebDashboard/packages.config b/MediaBrowser.WebDashboard/packages.config
index 9cbd2cd59..808183a67 100644
--- a/MediaBrowser.WebDashboard/packages.config
+++ b/MediaBrowser.WebDashboard/packages.config
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
- <package id="MediaBrowser.ApiClient.Javascript" version="3.0.204" targetFramework="net45" />
+ <package id="MediaBrowser.ApiClient.Javascript" version="3.0.206" targetFramework="net45" />
</packages> \ No newline at end of file