@@ -51,6 +51,7 @@
Release Date |
Rating |
Runtime |
+
Players |
Codecs |
Subtitles |
Features |
@@ -108,9 +109,15 @@
Management:
+
+
+
+
+
+
diff --git a/dashboard-ui/scripts/edititemmetadata.js b/dashboard-ui/scripts/edititemmetadata.js
index cbc0d7a065..32bfced26a 100644
--- a/dashboard-ui/scripts/edititemmetadata.js
+++ b/dashboard-ui/scripts/edititemmetadata.js
@@ -1029,6 +1029,12 @@
html += '
';
html += result.ProductionYear || ' ';
html += '
';
+
+ if (result.GameSystem) {
+ html += '
';
+ html += result.GameSystem;
+ html += '
';
+ }
html += '
';
}
diff --git a/dashboard-ui/scripts/editorsidebar.js b/dashboard-ui/scripts/editorsidebar.js
index 1ab0593c93..050784eeeb 100644
--- a/dashboard-ui/scripts/editorsidebar.js
+++ b/dashboard-ui/scripts/editorsidebar.js
@@ -106,7 +106,7 @@
nodes.push({ attr: { id: name, rel: 'folder', itemtype: 'livetvservice' }, data: htmlName, state: 'closed' });
}
- nodes.push({ attr: { id: 'libraryreport', rel: 'default', itemtype: 'libraryreport' }, data: 'Library List' });
+ nodes.push({ attr: { id: 'libraryreport', rel: 'default', itemtype: 'libraryreport' }, data: 'Reports' });
callback(nodes);
diff --git a/dashboard-ui/scripts/itemdetailpage.js b/dashboard-ui/scripts/itemdetailpage.js
index 7d84c9d8ca..fc4bd6c99a 100644
--- a/dashboard-ui/scripts/itemdetailpage.js
+++ b/dashboard-ui/scripts/itemdetailpage.js
@@ -35,7 +35,7 @@
$('#editButtonContainer', page).hide();
}
- if (MediaPlayer.canPlay(item, user) && item.LocationType !== "Offline" && item.LocationType !== "Virtual") {
+ if (MediaPlayer.canPlay(item, user)) {
var url = MediaPlayer.getPlayUrl(item);
diff --git a/dashboard-ui/scripts/libraryreport.js b/dashboard-ui/scripts/libraryreport.js
index 6cf6751d9d..df4427283e 100644
--- a/dashboard-ui/scripts/libraryreport.js
+++ b/dashboard-ui/scripts/libraryreport.js
@@ -6,16 +6,16 @@
SortBy: "SeriesSortName,SortName",
SortOrder: "Ascending",
Recursive: true,
- Fields: "MediaStreams,DateCreated",
+ Fields: "MediaStreams,DateCreated,Settings",
StartIndex: 0,
IncludeItemTypes: "Movie"
};
-
+
function getCodecName(stream) {
var val = stream.Codec || '';
val = val.toUpperCase();
-
+
if (val == 'DCA') {
return stream.Profile;
}
@@ -23,7 +23,7 @@
return val;
}
- function getTableRowsHtml(items, includeParentInfo, includeSubtitles) {
+ function getTableRowsHtml(items, includeParentInfo, includeSubtitles, includePlayers) {
var html = '';
@@ -34,7 +34,10 @@
html += '
';
html += '';
-
+
+ if (item.LockData) {
+ html += ' ';
+ }
if (item.IsUnidentified) {
html += '';
}
@@ -46,10 +49,13 @@
html += '' + item.SeriesName + '';
}
else if (item.Album) {
- html += item.Album + ' ';
+ html += item.Album;
}
else if (item.AlbumArtist) {
- html += item.AlbumArtist + ' ';
+ html += item.AlbumArtist;
+ }
+ else if (item.GameSystem) {
+ html += item.GameSystem;
}
else {
html += ' ';
@@ -123,15 +129,21 @@
}
html += ' | ';
+ if (includePlayers) {
+ html += '';
+ html += item.Players || ' ';
+ html += ' | ';
+ }
+
html += '';
- html += (item.MediaStreams || []).filter(function(s) {
+ html += (item.MediaStreams || []).filter(function (s) {
return s.Type != 'Subtitle';
}).map(getCodecName).filter(function (s) {
return s;
}).join(' ');
-
+
html += ' | ';
if (includeSubtitles) {
@@ -142,7 +154,7 @@
}).map(function (s) {
- return (s.Language || 'Und') + ' - ' + s.Codec;
+ return (s.Language || 'und') + ' - ' + s.Codec;
}).join('
');
@@ -185,19 +197,23 @@
$('.listBottomPaging', page).html(LibraryBrowser.getPagingHtml(query, result.TotalRecordCount)).trigger('create');
- var includeParentInfo = query.IncludeItemTypes == "Audio" || query.IncludeItemTypes == "MusicAlbum" || query.IncludeItemTypes == "Episode" || query.IncludeItemTypes == "Book";
+ var includeParentInfo = query.IncludeItemTypes == "Audio" || query.IncludeItemTypes == "MusicAlbum" || query.IncludeItemTypes == "Episode" || query.IncludeItemTypes == "Book" || query.IncludeItemTypes == "Game";
var includeSubtitles = query.IncludeItemTypes == "Movie" || query.IncludeItemTypes == "Trailer" || query.IncludeItemTypes == "Episode" || query.IncludeItemTypes == "AdultVideo" || query.IncludeItemTypes == "MusicVideo" || query.IncludeItemTypes == "Video";
+ var includePlayers = query.IncludeItemTypes == "Game";
if (includeParentInfo) {
var parentLabel = "Series";
-
+
if (query.IncludeItemTypes == "Audio") {
parentLabel = "Album";
}
else if (query.IncludeItemTypes == "MusicAlbum") {
parentLabel = "Artist";
}
+ else if (query.IncludeItemTypes == "Game") {
+ parentLabel = "Game System";
+ }
$('.thParent', page).html(parentLabel).show();
@@ -206,14 +222,20 @@
}
if (includeSubtitles) {
-
$('.thSubtitles', page).show();
} else {
$('.thSubtitles', page).hide();
}
- var rowsHtml = getTableRowsHtml(result.Items, includeParentInfo, includeSubtitles);
+ if (includePlayers) {
+ $('.thPlayers', page).show();
+
+ } else {
+ $('.thPlayers', page).hide();
+ }
+
+ var rowsHtml = getTableRowsHtml(result.Items, includeParentInfo, includeSubtitles, includePlayers);
$('.resultBody', page).html(rowsHtml).parents('.tblLibraryReport').table("refresh").trigger('create');
$('.btnNextPage', page).on('click', function () {
@@ -269,6 +291,9 @@
$('#chkMissingOverview', page).checked(query.HasOverview == false).checkboxradio('refresh');
$('#chkYearMismatch', page).checked(query.IsYearMismatched == true).checkboxradio('refresh');
+
+ $('#chkIsUnidentified', page).checked(query.IsUnidentified == true).checkboxradio('refresh');
+ $('#chkIsLocked', page).checked(query.IsLocked == true).checkboxradio('refresh');
}
$(document).on('pageinit', "#libraryReportPage", function () {
@@ -413,6 +438,22 @@
reloadItems(page);
});
+ $('#chkIsUnidentified', page).on('change', function () {
+
+ query.StartIndex = 0;
+ query.IsUnidentified = this.checked ? true : null;
+
+ reloadItems(page);
+ });
+
+ $('#chkIsLocked', page).on('change', function () {
+
+ query.StartIndex = 0;
+ query.IsLocked = this.checked ? true : null;
+
+ reloadItems(page);
+ });
+
}).on('pagebeforeshow', "#libraryReportPage", function () {
var page = this;
diff --git a/dashboard-ui/scripts/mediaplayer.js b/dashboard-ui/scripts/mediaplayer.js
index cc0732a680..8234fff9a9 100644
--- a/dashboard-ui/scripts/mediaplayer.js
+++ b/dashboard-ui/scripts/mediaplayer.js
@@ -1011,7 +1011,7 @@
return false;
}
- if (item.LocationType == "Virtual") {
+ if (item.LocationType == "Virtual" || item.IsPlaceHolder) {
return false;
}
if (item.Type == "MusicAlbum" || item.Type == "MusicArtist" || item.Type == "MusicGenre") {