mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
filter duplicate recordings based on showId
This commit is contained in:
parent
25b668f919
commit
649fd0000d
9 changed files with 21 additions and 67 deletions
|
@ -119,6 +119,8 @@
|
|||
var serverId = el.getAttribute('data-serverid');
|
||||
var apiClient = connectionManager.getApiClient(serverId);
|
||||
|
||||
newIndex = Math.max(0, newIndex - 1);
|
||||
|
||||
apiClient.ajax({
|
||||
|
||||
url: apiClient.getUrl('Playlists/' + playlistId + '/Items/' + itemId + '/Move/' + newIndex),
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
|
||||
.dockedtabs-tab-button-icon {
|
||||
margin-bottom: .25em;
|
||||
font-size: 20px;
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
@media all and (max-width: 800px) {
|
||||
|
|
|
@ -1,24 +1,24 @@
|
|||
<h1>Schedules Direct</h1>
|
||||
<p class="createAccountHelp"></p>
|
||||
<div style="font-size:16px;">
|
||||
<div style="display:inline-block;background-color:rgba(82,181,75,.8);color:#fff;padding:2px 10px;font-size:20px;border-radius:1000px;vertical-align:middle;">
|
||||
<div style="display: flex; align-items: center;margin:1.5em 0 1em;">
|
||||
<h2 style="background-color:rgba(82,181,75,.8);color:#fff;padding:3px 10px;margin: 0;border-radius:1000px;vertical-align:middle;">
|
||||
1
|
||||
</div>
|
||||
<div style="display:inline-block;vertical-align:middle;margin-left:5px;">
|
||||
</h2>
|
||||
<h3 style="margin:0 0 0 .5em;">
|
||||
${GuideProviderLogin}
|
||||
</div>
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
<form class="formLogin">
|
||||
<!-- Terrible, but this hidden field prevents the yellow background in chrome -->
|
||||
<div style="height:0; overflow: hidden;"><input type="text" name="fakeusernameremembered" tabindex="-1" /><input type="password" name="fakepasswordremembered" tabindex="-1" /></div>
|
||||
<div>
|
||||
<br/>
|
||||
<br />
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" class="txtUser" label="${LabelUsername}" required="required" autocomplete="off"/>
|
||||
<input is="emby-input" class="txtUser" label="${LabelUsername}" required="required" autocomplete="off" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" class="txtPass" label="${LabelPassword}" required="required" autocomplete="off" type="password"/>
|
||||
<input is="emby-input" class="txtPass" label="${LabelPassword}" required="required" autocomplete="off" type="password" />
|
||||
</div>
|
||||
<div>
|
||||
<button is="emby-button" type="submit" class="raised button-submit block"><span>${ButtonSave}</span></button>
|
||||
|
@ -29,13 +29,13 @@
|
|||
<br />
|
||||
<br />
|
||||
<div class="listingsSection hide">
|
||||
<div style="font-size:16px;">
|
||||
<div style="display:inline-block;background-color:rgba(82,181,75,.8);color:#fff;padding:2px 10px;font-size:20px;border-radius:1000px;vertical-align:middle;">
|
||||
<div style="display: flex; align-items: center;margin:1.5em 0 1em;">
|
||||
<h2 style="background-color:rgba(82,181,75,.8);color:#fff;padding:3px 10px;margin: 0;border-radius:1000px;vertical-align:middle;">
|
||||
2
|
||||
</div>
|
||||
<div style="display:inline-block;vertical-align:middle;margin-left:5px;">
|
||||
</h2>
|
||||
<h3 style="margin:0 0 0 .5em;">
|
||||
${GuideProviderSelectListings}
|
||||
</div>
|
||||
</h3>
|
||||
</div>
|
||||
<form class="formListings">
|
||||
<div>
|
||||
|
@ -44,7 +44,7 @@
|
|||
<select is="emby-select" id="selectCountry" data-mini="true" required="required" label="${LabelCountry}"></select>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" class="txtZipCode" label="${LabelZipCode}" required="required"/>
|
||||
<input is="emby-input" class="txtZipCode" label="${LabelZipCode}" required="required" />
|
||||
</div>
|
||||
<div class="selectContainer">
|
||||
<select is="emby-select" id="selectListing" data-mini="true" required="required" label="${LabelLineup}"></select>
|
||||
|
|
|
@ -250,48 +250,6 @@ div[data-role="controlgroup"] a.ui-btn-active {
|
|||
color: #fff !important;
|
||||
}
|
||||
|
||||
a[data-role='button'], .type-interior button:not([data-role='none']):not(.clearButton):not([is]) {
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-webkit-user-select: none;
|
||||
background-clip: padding-box;
|
||||
border-radius: .3125em;
|
||||
border: 1px solid #ddd !important;
|
||||
color: rgb(51, 51, 51) !important;
|
||||
cursor: pointer !important;
|
||||
font-family: inherit !important;
|
||||
font-size: inherit !important;
|
||||
font-weight: 500 !important;
|
||||
margin: 0 .25em !important;
|
||||
display: inline-block;
|
||||
padding: .8em 1em;
|
||||
text-align: center;
|
||||
text-decoration: none !important;
|
||||
background: #f6f6f6 !important;
|
||||
font-size: 16px;
|
||||
-webkit-box-shadow: 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.15) /*{global-box-shadow-color}*/;
|
||||
-moz-box-shadow: 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.15) /*{global-box-shadow-color}*/;
|
||||
box-shadow: 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.15) /*{global-box-shadow-color}*/;
|
||||
}
|
||||
|
||||
a[data-role='button'][data-iconpos='notext'], .type-interior button[data-iconpos='notext']:not([data-role='none']):not(.clearButton):not([is]) {
|
||||
padding: 4px;
|
||||
border-radius: 50px;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
a[data-role='button']:not([data-inline='true']), .type-interior button:not([data-role='none']):not([data-inline='true']):not(.clearButton):not([is]) {
|
||||
display: block;
|
||||
margin: .5em 0 !important;
|
||||
}
|
||||
|
||||
.type-interior button:not([data-role='none']):not([data-inline='true']):not(.clearButton):not([is]) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.type-interior h2 {
|
||||
color: #1B58B8;
|
||||
}
|
||||
|
||||
.header .imageLink {
|
||||
display: inline-block;
|
||||
}
|
||||
|
|
|
@ -143,7 +143,6 @@
|
|||
|
||||
.nowPlayingTabButton {
|
||||
display: inline-block;
|
||||
font-size: 18px;
|
||||
text-transform: uppercase;
|
||||
color: #ddd !important;
|
||||
font-weight: 400 !important;
|
||||
|
@ -184,10 +183,6 @@
|
|||
color: #eee;
|
||||
}
|
||||
|
||||
.videoNowPlayingName {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.videoNowPlayingOverview, .videoNowPlayingRating {
|
||||
margin: 1em 0;
|
||||
display: flex;
|
||||
|
|
|
@ -36,7 +36,7 @@ html {
|
|||
padding: 0;
|
||||
height: 100%;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Roboto", "Segoe UI", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", 'Open Sans', sans-serif;
|
||||
font-size: 14px;
|
||||
font-size: 88%;
|
||||
}
|
||||
|
||||
h1 {
|
||||
|
@ -92,7 +92,6 @@ h1, h2, h3 {
|
|||
|
||||
h1 {
|
||||
font-weight: normal !important;
|
||||
font-size: 24px;
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
|
|
|
@ -376,6 +376,7 @@
|
|||
clearButton.addEventListener('click', function () {
|
||||
|
||||
ApiClient.clearOrganizationLog().then(function () {
|
||||
query.StartIndex = 0;
|
||||
reloadItems(view, true);
|
||||
}, Dashboard.processErrorResponse);
|
||||
});
|
||||
|
|
|
@ -35,9 +35,9 @@
|
|||
if (header.SortField === defaultSortBy) {
|
||||
|
||||
if (query.SortOrder === "Descending") {
|
||||
cellHtml += '<span style="font-weight:bold;margin-left:5px;vertical-align:top;font-size:14px">↓</span>';
|
||||
cellHtml += '<span style="font-weight:bold;margin-left:5px;vertical-align:top;">↓</span>';
|
||||
} else {
|
||||
cellHtml += '<span style="font-weight:bold;margin-left:5px;vertical-align:top;font-size:14px;">↑</span>';
|
||||
cellHtml += '<span style="font-weight:bold;margin-left:5px;vertical-align:top;">↑</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,7 +46,6 @@
|
|||
{ name: Globalize.translate('OptionBlockGames'), value: 'Game' },
|
||||
{ name: Globalize.translate('OptionBlockChannelContent'), value: 'ChannelContent' },
|
||||
{ name: Globalize.translate('OptionBlockLiveTvChannels'), value: 'LiveTvChannel' },
|
||||
{ name: Globalize.translate('OptionBlockLiveTvPrograms'), value: 'LiveTvProgram' },
|
||||
{ name: Globalize.translate('OptionBlockMovies'), value: 'Movie' },
|
||||
{ name: Globalize.translate('OptionBlockMusic'), value: 'Music' },
|
||||
{ name: Globalize.translate('OptionBlockTrailers'), value: 'Trailer' },
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue