diff --git a/ApiClient.js b/ApiClient.js index 73f0207b8d..be2a342c9b 100644 --- a/ApiClient.js +++ b/ApiClient.js @@ -2,7 +2,7 @@ window.MediaBrowser = {}; } -MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, window) { +MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, window, FileReader) { /** * Creates a new api client instance @@ -3982,7 +3982,7 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi }; -}(jQuery, navigator, window.JSON, window.WebSocket, setTimeout, window); +}(jQuery, navigator, window.JSON, window.WebSocket, setTimeout, window, window.FileReader); /** * Provides a friendly way to create an api client instance using information from the browser's current url @@ -4208,7 +4208,7 @@ MediaBrowser.SHA1 = function (msg) { } if (matched.platform) { - browser[matched.platform] = true + browser[matched.platform] = true; } // Chrome is Webkit, but Webkit is also Safari. diff --git a/dashboard-ui/scripts/edititemmetadata.js b/dashboard-ui/scripts/edititemmetadata.js index 598b8445c9..4b8a23c529 100644 --- a/dashboard-ui/scripts/edititemmetadata.js +++ b/dashboard-ui/scripts/edititemmetadata.js @@ -787,6 +787,7 @@ $('#labelDisplayOrder', page).html('Title display order:'); $('#selectDisplayOrder', page).html('').selectmenu('refresh'); } else { + $('#selectDisplayOrder', page).html('').selectmenu('refresh'); $('#fldDisplayOrder', page).hide(); } diff --git a/dashboard-ui/scripts/extensions.js b/dashboard-ui/scripts/extensions.js index 59dd196038..98d572d10d 100644 --- a/dashboard-ui/scripts/extensions.js +++ b/dashboard-ui/scripts/extensions.js @@ -1,6 +1,10 @@ function IsStorageEnabled() { + + if (!window.localStorage) { + return false; + } try { - localStorage.setItem("__test", "data"); + window.localStorage.setItem("__test", "data"); } catch (err) { if ((err.name).toUpperCase() == 'QUOTA_EXCEEDED_ERR') { return false; diff --git a/dashboard-ui/scripts/site.js b/dashboard-ui/scripts/site.js index 7e628bc160..f83af7c026 100644 --- a/dashboard-ui/scripts/site.js +++ b/dashboard-ui/scripts/site.js @@ -87,6 +87,10 @@ var Dashboard = { getCurrentUserId: function () { + if (!window.localStorage) { + return null; + } + var userId = localStorage.getItem("userId"); if (!userId) { @@ -102,13 +106,21 @@ var Dashboard = { }, setCurrentUser: function (userId) { - localStorage.setItem("userId", userId); + + if (window.localStorage) { + localStorage.setItem("userId", userId); + } + ApiClient.currentUserId(userId); Dashboard.getUserPromise = null; }, logout: function () { - localStorage.removeItem("userId"); + + if (window.localStorage) { + localStorage.removeItem("userId"); + } + Dashboard.getUserPromise = null; ApiClient.currentUserId(null); window.location = "login.html"; @@ -1284,11 +1296,11 @@ var Dashboard = { if (!window.WebSocket) { - alert("This browser does not support web sockets. For a better experience, try a newer browser such as Chrome (android, desktop), Firefox, IE10, Safari (iOS) or Opera."); + alert("This browser does not support web sockets. For a better experience, try a newer browser such as Chrome, Firefox, IE10+, Safari (iOS) or Opera."); } -if (!IsStorageEnabled()) { - alert("This browser does not support local storage or is running in private mode. For a better experience, try a newer browser such as Chrome (android, desktop), Firefox, IE10, Safari (iOS) or Opera."); +else if (!IsStorageEnabled()) { + alert("This browser does not support local storage or is running in private mode. For a better experience, try a newer browser such as Chrome, Firefox, IE10+, Safari (iOS) or Opera."); } diff --git a/packages.config b/packages.config index c0e73ca455..4932cd5c18 100644 --- a/packages.config +++ b/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file