mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update live stream management
This commit is contained in:
parent
170b720d0b
commit
04dda98be4
17 changed files with 159 additions and 94 deletions
|
@ -424,6 +424,27 @@
|
|||
hls.on(Hls.Events.MANIFEST_PARSED, function () {
|
||||
elem.play();
|
||||
});
|
||||
|
||||
hls.on(Hls.Events.ERROR, function (event, data) {
|
||||
if (data.fatal) {
|
||||
switch (data.type) {
|
||||
case Hls.ErrorTypes.NETWORK_ERROR:
|
||||
// try to recover network error
|
||||
console.log("fatal network error encountered, try to recover");
|
||||
hls.startLoad();
|
||||
break;
|
||||
case Hls.ErrorTypes.MEDIA_ERROR:
|
||||
console.log("fatal media error encountered, try to recover");
|
||||
hls.recoverMediaError();
|
||||
break;
|
||||
default:
|
||||
// cannot recover
|
||||
hls.destroy();
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
hlsPlayer = hls;
|
||||
});
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
define(['cardBuilder', 'emby-itemscontainer'], function (cardBuilder) {
|
||||
define(['cardBuilder', 'apphost', 'emby-itemscontainer'], function (cardBuilder, appHost) {
|
||||
|
||||
return function (view, params) {
|
||||
|
||||
|
@ -56,6 +56,8 @@
|
|||
|
||||
page.querySelector('.listTopPaging').innerHTML = pagingHtml;
|
||||
|
||||
var supportsImageAnalysis = appHost.supports('imageanalysis') && (params.type == 'Recordings' || params.type == 'RecordingSeries');
|
||||
|
||||
html = cardBuilder.getCardsHtml({
|
||||
items: result.Items,
|
||||
shape: query.IsMovie || params.type == 'RecordingSeries' ? 'portrait' : "backdrop",
|
||||
|
@ -71,9 +73,11 @@
|
|||
showAirTime: params.type != 'Recordings' && params.type != 'RecordingSeries',
|
||||
showAirDateTime: params.type != 'Recordings' && params.type != 'RecordingSeries',
|
||||
showChannelName: params.type != 'Recordings' && params.type != 'RecordingSeries',
|
||||
overlayMoreButton: true,
|
||||
overlayMoreButton: !supportsImageAnalysis,
|
||||
showYear: query.IsMovie && params.type == 'Recordings',
|
||||
coverImage: true
|
||||
coverImage: true,
|
||||
cardLayout: supportsImageAnalysis,
|
||||
vibrant: supportsImageAnalysis
|
||||
});
|
||||
|
||||
var elem = page.querySelector('.itemsContainer');
|
||||
|
|
|
@ -36,7 +36,6 @@
|
|||
showTitle: true,
|
||||
cardLayout: true,
|
||||
vibrant: true,
|
||||
cardFooterAside: 'none',
|
||||
preferThumb: true,
|
||||
coverImage: true,
|
||||
overlayText: false,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
define(['jQuery', 'emby-checkbox'], function ($) {
|
||||
define(['jQuery', 'emby-checkbox', 'fnchecked'], function ($) {
|
||||
|
||||
var notificationsConfigurationKey = "notifications";
|
||||
|
||||
|
@ -153,6 +153,7 @@
|
|||
|
||||
ApiClient.updateNamedConfiguration(notificationsConfigurationKey, notificationOptions).then(function (r) {
|
||||
|
||||
Dashboard.processServerConfigurationUpdateResult();
|
||||
Dashboard.navigate('notificationsettings.html');
|
||||
});
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
define(['libraryBrowser', 'cardBuilder'], function (libraryBrowser, cardBuilder) {
|
||||
define(['libraryBrowser', 'cardBuilder', 'apphost'], function (libraryBrowser, cardBuilder, appHost) {
|
||||
|
||||
// The base query options
|
||||
var data = {};
|
||||
|
@ -43,15 +43,20 @@
|
|||
promise.then(function (result) {
|
||||
|
||||
var elem = context.querySelector('#items');
|
||||
|
||||
var supportsImageAnalysis = appHost.supports('imageanalysis');
|
||||
|
||||
cardBuilder.buildCards(result.Items, {
|
||||
itemsContainer: elem,
|
||||
shape: "backdrop",
|
||||
preferThumb: true,
|
||||
showTitle: false,
|
||||
showTitle: supportsImageAnalysis,
|
||||
scalable: true,
|
||||
showItemCounts: true,
|
||||
centerText: true,
|
||||
overlayMoreButton: true
|
||||
centerText: !supportsImageAnalysis,
|
||||
overlayMoreButton: !supportsImageAnalysis,
|
||||
cardLayout: supportsImageAnalysis,
|
||||
vibrant: supportsImageAnalysis
|
||||
});
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue