mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
fix script error on now playing page
This commit is contained in:
parent
13a2268043
commit
75dba0b17f
9 changed files with 70 additions and 24 deletions
|
@ -265,7 +265,7 @@
|
||||||
return deferred.promise();
|
return deferred.promise();
|
||||||
}
|
}
|
||||||
|
|
||||||
self.ajaxWithFailover = function (request, deferred, enableReconnection, replaceUrl) {
|
self.ajaxWithFailover = function (request, deferred, enableReconnection) {
|
||||||
|
|
||||||
logger.log("Requesting " + request.url);
|
logger.log("Requesting " + request.url);
|
||||||
|
|
||||||
|
@ -287,12 +287,14 @@
|
||||||
|
|
||||||
logger.log("Attempting reconnection");
|
logger.log("Attempting reconnection");
|
||||||
|
|
||||||
|
var previousServerAddress = self.serverAddress();
|
||||||
|
|
||||||
tryReconnect().done(function () {
|
tryReconnect().done(function () {
|
||||||
|
|
||||||
logger.log("Reconnect succeesed");
|
logger.log("Reconnect succeesed");
|
||||||
request.url = request.url.replace("dddd", MediaBrowser.ServerInfo.getServerAddress(self.serverInfo(), self.serverInfo().LastConnectionMode));
|
request.url = request.url.replace(previousServerAddress, self.serverAddress());
|
||||||
|
|
||||||
self.ajaxWithFailover(request, deferred, false, true);
|
self.ajaxWithFailover(request, deferred, false);
|
||||||
|
|
||||||
}).fail(function () {
|
}).fail(function () {
|
||||||
|
|
||||||
|
|
33
dashboard-ui/cordova/android/vlcplayer.js
vendored
33
dashboard-ui/cordova/android/vlcplayer.js
vendored
|
@ -1,6 +1,6 @@
|
||||||
(function () {
|
(function () {
|
||||||
|
|
||||||
function vlcRenderer(type) {
|
function vlcRenderer(options) {
|
||||||
|
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
|
@ -95,11 +95,11 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == 'audio') {
|
if (options.type == 'audio') {
|
||||||
|
|
||||||
AndroidVlcPlayer.playAudioVlc(val, JSON.stringify(item), JSON.stringify(mediaSource), posterUrl);
|
AndroidVlcPlayer.playAudioVlc(val, JSON.stringify(item), JSON.stringify(mediaSource), posterUrl);
|
||||||
} else {
|
} else {
|
||||||
AndroidVlcPlayer.playVideoVlc(val);
|
AndroidVlcPlayer.playVideoVlc(val, JSON.stringify(item), JSON.stringify(mediaSource), posterUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
playerState.currentSrc = val;
|
playerState.currentSrc = val;
|
||||||
|
@ -129,6 +129,11 @@
|
||||||
playerState = {};
|
playerState = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
self.enableCustomVideoControls = function () {
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
var posterUrl;
|
var posterUrl;
|
||||||
self.setPoster = function (url) {
|
self.setPoster = function (url) {
|
||||||
posterUrl = url;
|
posterUrl = url;
|
||||||
|
@ -163,9 +168,29 @@
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
self.init = function () {
|
||||||
|
|
||||||
|
var deferred = DeferredBuilder.Deferred();
|
||||||
|
deferred.resolve();
|
||||||
|
return deferred.promise();
|
||||||
|
};
|
||||||
|
|
||||||
window.AudioRenderer.Current = self;
|
window.AudioRenderer.Current = self;
|
||||||
|
window.VideoRenderer.Current = self;
|
||||||
}
|
}
|
||||||
|
|
||||||
window.AudioRenderer = vlcRenderer;
|
window.AudioRenderer = function (options) {
|
||||||
|
options = options || {};
|
||||||
|
options.type = 'audio';
|
||||||
|
|
||||||
|
return new vlcRenderer(options);
|
||||||
|
};
|
||||||
|
|
||||||
|
window.VideoRenderer = function (options) {
|
||||||
|
options = options || {};
|
||||||
|
options.type = 'video';
|
||||||
|
|
||||||
|
return new vlcRenderer(options);
|
||||||
|
};
|
||||||
|
|
||||||
})();
|
})();
|
|
@ -262,7 +262,7 @@
|
||||||
margin: 0 0;
|
margin: 0 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
border-bottom: 4px solid transparent;
|
border-bottom: 3px solid transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
.libraryViewNav .ui-btn-active {
|
.libraryViewNav .ui-btn-active {
|
||||||
|
|
|
@ -311,7 +311,7 @@ html {
|
||||||
}
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
overflow-y: auto !important;
|
overflow-y: scroll !important;
|
||||||
/* This is needed to prevent a horizontal scrollbar while neon-animated-pages are animating. */
|
/* This is needed to prevent a horizontal scrollbar while neon-animated-pages are animating. */
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
|
@ -495,13 +495,13 @@ h1 a:hover {
|
||||||
}
|
}
|
||||||
|
|
||||||
.libraryViewNav:not(.paperLibraryViewNav).headroom--unpinned:not(.headroomDisabled) {
|
.libraryViewNav:not(.paperLibraryViewNav).headroom--unpinned:not(.headroomDisabled) {
|
||||||
-webkit-transform: translateY(-203.5%);
|
-webkit-transform: translateY(-208%);
|
||||||
transform: translateY(-203.5%);
|
transform: translateY(-208%);
|
||||||
}
|
}
|
||||||
|
|
||||||
.paperLibraryViewNav.headroom--unpinned:not(.headroomDisabled) {
|
.paperLibraryViewNav.headroom--unpinned:not(.headroomDisabled) {
|
||||||
-webkit-transform: translateY(-204%);
|
-webkit-transform: translateY(-205%);
|
||||||
transform: translateY(-204%);
|
transform: translateY(-205%);
|
||||||
}
|
}
|
||||||
|
|
||||||
.largePanel {
|
.largePanel {
|
||||||
|
|
|
@ -125,7 +125,13 @@
|
||||||
.on('error', onError)[0];
|
.on('error', onError)[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableViblast() {
|
function enableViblast(src) {
|
||||||
|
|
||||||
|
if (src) {
|
||||||
|
if (src.indexOf('.m3u8') == -1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return MediaPlayer.canPlayHls() && !MediaPlayer.canPlayNativeHls();
|
return MediaPlayer.canPlayHls() && !MediaPlayer.canPlayNativeHls();
|
||||||
}
|
}
|
||||||
|
@ -259,7 +265,7 @@
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
||||||
if (enableViblast()) {
|
if (enableViblast(val)) {
|
||||||
|
|
||||||
viblast(elem).setup({
|
viblast(elem).setup({
|
||||||
key: 'N8FjNTQ3NDdhZqZhNGI5NWU5ZTI=',
|
key: 'N8FjNTQ3NDdhZqZhNGI5NWU5ZTI=',
|
||||||
|
|
|
@ -86,6 +86,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if (NavHelper.isBack()) {
|
if (NavHelper.isBack()) {
|
||||||
|
Logger.log('Not refreshing data because IsBack=true');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,6 +105,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((now - last) < cacheDuration) {
|
if ((now - last) < cacheDuration) {
|
||||||
|
Logger.log('Not refreshing data due to age');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -160,6 +162,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
enableFullPaperTabs: function () {
|
enableFullPaperTabs: function () {
|
||||||
|
//return true;
|
||||||
return AppInfo.isNativeApp;
|
return AppInfo.isNativeApp;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -229,11 +232,20 @@
|
||||||
var selected = tabs.selected;
|
var selected = tabs.selected;
|
||||||
|
|
||||||
if (selected == null) {
|
if (selected == null) {
|
||||||
selected = parseInt(getParameterByName('tab') || '0');
|
|
||||||
tabs.selected = selected;
|
|
||||||
page.querySelector('neon-animated-pages').selected = selected;
|
|
||||||
|
|
||||||
} else if (!LibraryBrowser.enableFullPaperTabs()) {
|
Logger.log('selected tab is null, checking query string');
|
||||||
|
|
||||||
|
selected = parseInt(getParameterByName('tab') || '0');
|
||||||
|
|
||||||
|
Logger.log('selected tab will be ' + selected);
|
||||||
|
|
||||||
|
tabs.selected = selected;
|
||||||
|
|
||||||
|
if (!LibraryBrowser.enableFullPaperTabs()) {
|
||||||
|
page.querySelector('neon-animated-pages').selected = selected;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
Events.trigger(page.querySelector('neon-animated-pages'), 'tabchange');
|
Events.trigger(page.querySelector('neon-animated-pages'), 'tabchange');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -937,7 +937,9 @@
|
||||||
|
|
||||||
if (item.MediaType === "Video") {
|
if (item.MediaType === "Video") {
|
||||||
|
|
||||||
|
requirejs(['videorenderer'], function () {
|
||||||
self.playVideo(item, self.currentMediaSource, startPosition);
|
self.playVideo(item, self.currentMediaSource, startPosition);
|
||||||
|
});
|
||||||
|
|
||||||
} else if (item.MediaType === "Audio") {
|
} else if (item.MediaType === "Audio") {
|
||||||
|
|
||||||
|
|
|
@ -362,7 +362,7 @@
|
||||||
player.beginPlayerUpdates();
|
player.beginPlayerUpdates();
|
||||||
|
|
||||||
onStateChanged.call(player, e, state);
|
onStateChanged.call(player, e, state);
|
||||||
loadPlaylist($.mobile.activePage);
|
loadPlaylist($($.mobile.activePage)[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
function onPlaybackStopped(e, state) {
|
function onPlaybackStopped(e, state) {
|
||||||
|
@ -372,7 +372,7 @@
|
||||||
player.endPlayerUpdates();
|
player.endPlayerUpdates();
|
||||||
|
|
||||||
onStateChanged.call(player, e, {});
|
onStateChanged.call(player, e, {});
|
||||||
loadPlaylist($.mobile.activePage);
|
loadPlaylist($($.mobile.activePage)[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
function onStateChanged(e, state) {
|
function onStateChanged(e, state) {
|
||||||
|
|
|
@ -1971,8 +1971,7 @@ var AppInfo = {};
|
||||||
|
|
||||||
if (Dashboard.isRunningInCordova() && $.browser.android) {
|
if (Dashboard.isRunningInCordova() && $.browser.android) {
|
||||||
define("audiorenderer", ["cordova/android/vlcplayer"]);
|
define("audiorenderer", ["cordova/android/vlcplayer"]);
|
||||||
//define("audiorenderer", ["scripts/htmlmediarenderer"]);
|
define("videorenderer", ["cordova/android/vlcplayer"]);
|
||||||
define("videorenderer", ["scripts/htmlmediarenderer"]);
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
define("audiorenderer", ["scripts/htmlmediarenderer"]);
|
define("audiorenderer", ["scripts/htmlmediarenderer"]);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue