diff --git a/dashboard-ui/scripts/edititemimages.js b/dashboard-ui/scripts/edititemimages.js index d05591808..768952189 100644 --- a/dashboard-ui/scripts/edititemimages.js +++ b/dashboard-ui/scripts/edititemimages.js @@ -3,13 +3,49 @@ var currentItem; var currentFile; - function reload(page) { + function getPromise() { - var id = getParameterByName('id'); + var name = getParameterByName('person'); + + if (name) { + return ApiClient.getPerson(name, Dashboard.getCurrentUserId()); + } + + name = getParameterByName('studio'); + + if (name) { + + return ApiClient.getStudio(name, Dashboard.getCurrentUserId()); + + } + + name = getParameterByName('genre'); + + if (name) { + return ApiClient.getGenre(name, Dashboard.getCurrentUserId()); + } + + name = getParameterByName('musicgenre'); + + if (name) { + return ApiClient.getMusicGenre(name, Dashboard.getCurrentUserId()); + } + + name = getParameterByName('artist'); + + if (name) { + return ApiClient.getArtist(name, Dashboard.getCurrentUserId()); + } + else { + return ApiClient.getItem(Dashboard.getCurrentUserId(), getParameterByName('id')); + } + } + + function reload(page) { Dashboard.showLoadingMsg(); - ApiClient.getItem(Dashboard.getCurrentUserId(), id).done(function (item) { + getPromise().done(function (item) { currentItem = item; diff --git a/dashboard-ui/scripts/edititemmetadata.js b/dashboard-ui/scripts/edititemmetadata.js index 119b6c6ac..ae272df62 100644 --- a/dashboard-ui/scripts/edititemmetadata.js +++ b/dashboard-ui/scripts/edititemmetadata.js @@ -2,13 +2,49 @@ var currentItem; - function reload(page) { + function getPromise() { - var id = getParameterByName('id'); + var name = getParameterByName('person'); + + if (name) { + return ApiClient.getPerson(name, Dashboard.getCurrentUserId()); + } + + name = getParameterByName('studio'); + + if (name) { + + return ApiClient.getStudio(name, Dashboard.getCurrentUserId()); + + } + + name = getParameterByName('genre'); + + if (name) { + return ApiClient.getGenre(name, Dashboard.getCurrentUserId()); + } + + name = getParameterByName('musicgenre'); + + if (name) { + return ApiClient.getMusicGenre(name, Dashboard.getCurrentUserId()); + } + + name = getParameterByName('artist'); + + if (name) { + return ApiClient.getArtist(name, Dashboard.getCurrentUserId()); + } + else { + return ApiClient.getItem(Dashboard.getCurrentUserId(), getParameterByName('id')); + } + } + + function reload(page) { Dashboard.showLoadingMsg(); - ApiClient.getItem(Dashboard.getCurrentUserId(), id).done(function (item) { + getPromise().done(function (item) { if (item.IsFolder) { $('#fldRecursive', page).show(); diff --git a/dashboard-ui/scripts/itembynamedetailpage.js b/dashboard-ui/scripts/itembynamedetailpage.js index 706643572..244bf98a6 100644 --- a/dashboard-ui/scripts/itembynamedetailpage.js +++ b/dashboard-ui/scripts/itembynamedetailpage.js @@ -75,6 +75,16 @@ ApiClient.sendWebSocketMessage("Context", vals.join('|')); } + Dashboard.getCurrentUser().done(function (user) { + + if (user.Configuration.IsAdministrator) { + $('#editButtonContainer', page).show(); + } else { + $('#editButtonContainer', page).hide(); + } + + }); + Dashboard.hideLoadingMsg(); }); } @@ -470,6 +480,11 @@ RemoteControl.showMenu({ item: currentItem, context: getParameterByName('context') || '' }); }); + $('#btnEdit', page).on('click', function () { + + Dashboard.navigate("edititemmetadata.html", true); + }); + }).on('pageshow', "#itemByNameDetailPage", function () { var page = this;