mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
added new params for missing/unaired
This commit is contained in:
parent
77f0d460c4
commit
eef5af361e
10 changed files with 84 additions and 40 deletions
|
@ -130,6 +130,12 @@
|
|||
|
||||
<input class="chkVideoTypeFilter" type="checkbox" data-theme="c" name="chkIso" id="chkIso" data-filter="Iso" data-mini="true">
|
||||
<label for="chkIso">Iso</label>
|
||||
|
||||
<input class="chkHDFilter" type="checkbox" data-theme="c" name="chkHD" id="chkHD" data-filter="IsHD" data-mini="true">
|
||||
<label for="chkHD">HD</label>
|
||||
|
||||
<input class="chkSDFilter" type="checkbox" data-theme="c" name="chkSD" id="chkSD" data-filter="IsHD" data-mini="true">
|
||||
<label for="chkSD">SD</label>
|
||||
</fieldset>
|
||||
|
||||
<fieldset data-role="controlgroup">
|
||||
|
|
|
@ -133,6 +133,12 @@
|
|||
<input class="chkVideoTypeFilter" type="checkbox" data-theme="c" name="chkIso" id="chkIso" data-filter="Iso" data-mini="true">
|
||||
<label for="chkIso">Iso</label>
|
||||
|
||||
<input class="chkHDFilter" type="checkbox" data-theme="c" name="chkHD" id="chkHD" data-filter="IsHD" data-mini="true">
|
||||
<label for="chkHD">HD</label>
|
||||
|
||||
<input class="chkSDFilter" type="checkbox" data-theme="c" name="chkSD" id="chkSD" data-filter="IsHD" data-mini="true">
|
||||
<label for="chkSD">SD</label>
|
||||
|
||||
<input class="chk3DFilter" type="checkbox" data-theme="c" name="chk3D" id="chk3D" data-filter="Digital3D,Sbs3D" data-mini="true">
|
||||
<label for="chk3D">3D</label>
|
||||
</fieldset>
|
||||
|
|
|
@ -492,8 +492,13 @@
|
|||
Fields: "PrimaryImageAspectRatio,ItemCounts,DateCreated,AudioInfo"
|
||||
};
|
||||
|
||||
if (item.Type == "Series" || item.Type == "Season" && !user.Configuration.DisplayVirtualEpisodes) {
|
||||
query.ExcludeLocationTypes = "virtual";
|
||||
if (item.Type == "Series" || item.Type == "Season") {
|
||||
if (!user.Configuration.DisplayMissingEpisodes) {
|
||||
query.IsMissing = false;
|
||||
}
|
||||
if (!user.Configuration.DisplayUnairedEpisodes) {
|
||||
query.IsUnaired = false;
|
||||
}
|
||||
}
|
||||
|
||||
ApiClient.getItems(Dashboard.getCurrentUserId(), query).done(function (result) {
|
||||
|
|
|
@ -116,7 +116,8 @@
|
|||
|
||||
}).checkboxradio('refresh');
|
||||
|
||||
$('#chk3D', page).checked(query.Is3D == true).checkboxradio('refresh');
|
||||
$('#chkHD', page).checked(query.IsHD == true).checkboxradio('refresh');
|
||||
$('#chkSD', page).checked(query.IsHD == false).checkboxradio('refresh');
|
||||
|
||||
$('#chkSubtitle', page).checked(query.HasSubtitles == true).checkboxradio('refresh');
|
||||
$('#chkTrailer', page).checked(query.HasTrailer == true).checkboxradio('refresh');
|
||||
|
@ -124,8 +125,8 @@
|
|||
$('#chkThemeVideo', page).checked(query.HasThemeVideo == true).checkboxradio('refresh');
|
||||
$('#chkSpecialFeature', page).checked(query.ParentIndexNumber == 0).checkboxradio('refresh');
|
||||
|
||||
$('#chkMissingEpisode', page).checked(query.MaxPremiereDate != null).checkboxradio('refresh');
|
||||
$('#chkFutureEpisode', page).checked(query.MinPremiereDate != null).checkboxradio('refresh');
|
||||
$('#chkMissingEpisode', page).checked(query.IsMissing == true).checkboxradio('refresh');
|
||||
$('#chkFutureEpisode', page).checked(query.IsUnaired == true).checkboxradio('refresh');
|
||||
|
||||
$('.alphabetPicker', page).alphaValue(query.NameStartsWithOrGreater);
|
||||
}
|
||||
|
@ -181,14 +182,6 @@
|
|||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chk3D', this).on('change', function () {
|
||||
|
||||
query.StartIndex = 0;
|
||||
query.Is3D = this.checked ? true : null;
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chkSubtitle', this).on('change', function () {
|
||||
|
||||
query.StartIndex = 0;
|
||||
|
@ -230,25 +223,32 @@
|
|||
|
||||
$('#chkMissingEpisode', this).on('change', function () {
|
||||
|
||||
var futureChecked = $('#chkFutureEpisode', page).checked();
|
||||
|
||||
query.LocationTypes = this.checked || futureChecked ? "virtual" : null;
|
||||
query.HasPremiereDate = this.checked || futureChecked ? true : null;
|
||||
query.MaxPremiereDate = this.checked ? LibraryBrowser.getDateParamValue(new Date()) : null;
|
||||
query.StartIndex = 0;
|
||||
query.IsMissing = this.checked ? true : null;
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chkFutureEpisode', this).on('change', function () {
|
||||
|
||||
var missingChecked = $('#chkMissingEpisode', page).checked();
|
||||
query.StartIndex = 0;
|
||||
query.IsUnaired = this.checked ? true : null;
|
||||
|
||||
query.LocationTypes = this.checked || missingChecked ? "virtual" : null;
|
||||
query.HasPremiereDate = this.checked || missingChecked ? true : null;
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
var now = new Date();
|
||||
$('#chkHD', this).on('change', function () {
|
||||
|
||||
query.MinPremiereDate = this.checked ? LibraryBrowser.getDateParamValue(new Date(now.getFullYear(), now.getMonth(), now.getDate())) : null;
|
||||
query.StartIndex = 0;
|
||||
query.IsHD = this.checked ? true : null;
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chkSD', this).on('change', function () {
|
||||
|
||||
query.StartIndex = 0;
|
||||
query.IsHD = this.checked ? false : null;
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
|
|
@ -937,15 +937,15 @@
|
|||
|
||||
var currentDate = new Date();
|
||||
|
||||
var day;
|
||||
|
||||
if (LibraryBrowser.isSameDay(date, currentDate)) {
|
||||
return "Today";
|
||||
}
|
||||
|
||||
var prefix = '';
|
||||
|
||||
currentDate.setDate(currentDate.getDate() + 1);
|
||||
if (LibraryBrowser.isSameDay(date, currentDate)) {
|
||||
return "Tomorrow";
|
||||
prefix = "Tomorrow - ";
|
||||
}
|
||||
|
||||
var todayDayOfWeek = new Date().getDay();
|
||||
|
@ -962,10 +962,10 @@
|
|||
}
|
||||
|
||||
if (includeDayNamesInFuture) {
|
||||
return weekday[date.getDay()] + " " + date.toLocaleDateString();
|
||||
return prefix + weekday[date.getDay()] + " " + date.toLocaleDateString();
|
||||
}
|
||||
|
||||
return date.toLocaleDateString();
|
||||
return prefix + date.toLocaleDateString();
|
||||
},
|
||||
|
||||
getPremiereDateText: function (item, date) {
|
||||
|
|
|
@ -245,7 +245,11 @@
|
|||
|
||||
getCollectionTypeOptionsHtml: function () {
|
||||
|
||||
return MediaLibraryPage.getCollectionTypeOptions().map(function (i) {
|
||||
return MediaLibraryPage.getCollectionTypeOptions().filter(function(i) {
|
||||
|
||||
return i.isSelectable !== false;
|
||||
|
||||
}).map(function (i) {
|
||||
|
||||
return '<option value="' + i.value + '">' + i.name + '</option>';
|
||||
|
||||
|
@ -268,7 +272,7 @@
|
|||
{ name: "Photos*", value: "photos" },
|
||||
{ name: "Trailers", value: "trailers" },
|
||||
{ name: "Adult videos", value: "adultvideos" },
|
||||
{ name: "General or mixed content", value: "mixed" }
|
||||
{ name: "General or mixed content", value: "mixed", isSelectable: false }
|
||||
];
|
||||
|
||||
},
|
||||
|
|
|
@ -133,6 +133,8 @@
|
|||
$('#selectView', page).val(view).selectmenu('refresh');
|
||||
|
||||
$('#chk3D', page).checked(query.Is3D == true).checkboxradio('refresh');
|
||||
$('#chkHD', page).checked(query.IsHD == true).checkboxradio('refresh');
|
||||
$('#chkSD', page).checked(query.IsHD == false).checkboxradio('refresh');
|
||||
|
||||
$('#chkSubtitle', page).checked(query.HasSubtitles == true).checkboxradio('refresh');
|
||||
$('#chkTrailer', page).checked(query.HasTrailer == true).checkboxradio('refresh');
|
||||
|
@ -218,6 +220,22 @@
|
|||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chkHD', this).on('change', function () {
|
||||
|
||||
query.StartIndex = 0;
|
||||
query.IsHD = this.checked ? true : null;
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chkSD', this).on('change', function () {
|
||||
|
||||
query.StartIndex = 0;
|
||||
query.IsHD = this.checked ? false : null;
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('#chkSubtitle', this).on('change', function () {
|
||||
|
||||
query.StartIndex = 0;
|
||||
|
|
|
@ -14,8 +14,7 @@
|
|||
Limit: 30,
|
||||
Recursive: true,
|
||||
Fields: "PrimaryImageAspectRatio,SeriesInfo,UserData",
|
||||
HasPremiereDate: true,
|
||||
MinPremiereDate: LibraryBrowser.getDateParamValue(new Date(now.getFullYear(), now.getMonth(), now.getDate()))
|
||||
IsUnaired: true
|
||||
};
|
||||
|
||||
ApiClient.getItems(Dashboard.getCurrentUserId(), options).done(function (result) {
|
||||
|
|
|
@ -30,7 +30,8 @@
|
|||
});
|
||||
|
||||
$('#chkForcedSubtitlesOnly', page).checked(user.Configuration.UseForcedSubtitlesOnly || false).checkboxradio("refresh");
|
||||
$('#chkDisplayVirtualEpisodes', page).checked(user.Configuration.DisplayVirtualEpisodes || false).checkboxradio("refresh");
|
||||
$('#chkDisplayMissingEpisodes', page).checked(user.Configuration.DisplayMissingEpisodes || false).checkboxradio("refresh");
|
||||
$('#chkDisplayUnairedEpisodes', page).checked(user.Configuration.DisplayUnairedEpisodes || false).checkboxradio("refresh");
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
}
|
||||
|
@ -55,7 +56,8 @@
|
|||
user.Configuration.AudioLanguagePreference = $('#selectAudioLanguage', page).val();
|
||||
user.Configuration.SubtitleLanguagePreference = $('#selectSubtitleLanguage', page).val();
|
||||
user.Configuration.UseForcedSubtitlesOnly = $('#chkForcedSubtitlesOnly', page).checked();
|
||||
user.Configuration.DisplayVirtualEpisodes = $('#chkDisplayVirtualEpisodes', page).checked();
|
||||
user.Configuration.DisplayMissingEpisodes = $('#chkDisplayMissingEpisodes', page).checked();
|
||||
user.Configuration.DisplayUnairedEpisodes = $('#chkDisplayUnairedEpisodes', page).checked();
|
||||
|
||||
ApiClient.updateUser(user).done(function () {
|
||||
onSaveComplete(page);
|
||||
|
|
|
@ -18,8 +18,12 @@
|
|||
<form id="userSettingsForm">
|
||||
<ul data-role="listview" class="ulForm">
|
||||
<li>
|
||||
<input type="checkbox" id="chkDisplayVirtualEpisodes" name="chkDisplayVirtualEpisodes" />
|
||||
<label for="chkDisplayVirtualEpisodes">Display missing and unaired episodes within seasons</label>
|
||||
<input type="checkbox" id="chkDisplayMissingEpisodes" name="chkDisplayMissingEpisodes" />
|
||||
<label for="chkDisplayMissingEpisodes">Display missing episodes within seasons</label>
|
||||
</li>
|
||||
<li>
|
||||
<input type="checkbox" id="chkDisplayUnairedEpisodes" name="chkDisplayUnairedEpisodes" />
|
||||
<label for="chkDisplayUnairedEpisodes">Display unaired episodes within seasons</label>
|
||||
</li>
|
||||
</ul>
|
||||
<h2>Video Playback Settings</h2>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue