diff options
| -rw-r--r-- | MediaBrowser.WebDashboard/ApiClient.js | 69 | ||||
| -rw-r--r-- | MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj | 2 | ||||
| -rw-r--r-- | MediaBrowser.WebDashboard/packages.config | 2 |
3 files changed, 68 insertions, 5 deletions
diff --git a/MediaBrowser.WebDashboard/ApiClient.js b/MediaBrowser.WebDashboard/ApiClient.js index 1d2d18006..ebd4f8a27 100644 --- a/MediaBrowser.WebDashboard/ApiClient.js +++ b/MediaBrowser.WebDashboard/ApiClient.js @@ -1571,7 +1571,70 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout) { dataType: "json" }); }; - }; + + /** + * Reports progress viewing an item + * @param {String} userId + * @param {String} itemId + */ + self.reportPlaybackProgress = function (userId, itemId, positionTicks) { + + if (!userId) { + throw new Error("null userId"); + } + + if (!itemId) { + throw new Error("null itemId"); + } + + var params = { + }; + + if (positionTicks) { + params.positionTicks = positionTicks; + } + + var url = self.getUrl("Users/" + userId + "/PlayingItems/" + itemId + "/Progress", params); + + return self.ajax({ + type: "POST", + url: url, + dataType: "json" + }); + }; + + + /** + * Reports a user has stopped playing an item + * @param {String} userId + * @param {String} itemId + */ + self.reportPlaybackStopped = function (userId, itemId, positionTicks) { + + if (!userId) { + throw new Error("null userId"); + } + + if (!itemId) { + throw new Error("null itemId"); + } + + var params = { + }; + + if (positionTicks) { + params.positionTicks = positionTicks; + } + + var url = self.getUrl("Users/" + userId + "/PlayingItems/" + itemId, params); + + return self.ajax({ + type: "DELETE", + url: url, + dataType: "json" + }); + }; + } }(jQuery, navigator, JSON, window.WebSocket, setTimeout); @@ -1669,7 +1732,7 @@ MediaBrowser.SHA1 = function (msg) { var word_array = new Array(); for (i = 0; i < msg_len - 3; i += 4) { j = msg.charCodeAt(i) << 24 | msg.charCodeAt(i + 1) << 16 | - msg.charCodeAt(i + 2) << 8 | msg.charCodeAt(i + 3); + msg.charCodeAt(i + 2) << 8 | msg.charCodeAt(i + 3); word_array.push(j); } @@ -1756,4 +1819,4 @@ MediaBrowser.SHA1 = function (msg) { var temp = cvt_hex(H0) + cvt_hex(H1) + cvt_hex(H2) + cvt_hex(H3) + cvt_hex(H4); return temp.toLowerCase(); -};
\ No newline at end of file +} diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj index 843fd7a72..06ff4ea78 100644 --- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj +++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj @@ -83,6 +83,7 @@ </ProjectReference>
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="ApiClient.js" />
<Content Include="dashboard-ui\index.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -649,7 +650,6 @@ <Content Include="dashboard-ui\about.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <EmbeddedResource Include="ApiClient.js" />
<Content Include="dashboard-ui\css\images\stars.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
diff --git a/MediaBrowser.WebDashboard/packages.config b/MediaBrowser.WebDashboard/packages.config index 4e1ee3bff..e5ea40c77 100644 --- a/MediaBrowser.WebDashboard/packages.config +++ b/MediaBrowser.WebDashboard/packages.config @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <packages> - <package id="MediaBrowser.ApiClient.Javascript" version="3.0.50" targetFramework="net45" /> + <package id="MediaBrowser.ApiClient.Javascript" version="3.0.58" targetFramework="net45" /> <package id="ServiceStack.Common" version="3.9.42" targetFramework="net45" /> <package id="ServiceStack.Text" version="3.9.42" targetFramework="net45" /> </packages>
\ No newline at end of file |
