diff --git a/dashboard-ui/scripts/syncjob.js b/dashboard-ui/scripts/syncjob.js index 99f44a62e8..da81a58a62 100644 --- a/dashboard-ui/scripts/syncjob.js +++ b/dashboard-ui/scripts/syncjob.js @@ -66,8 +66,7 @@ html += '
  • '; - var hasActions = jobItem.Status != 'RemovedFromDevice'; - hasActions = false; + var hasActions = ['Queued', 'Cancelled', 'Failed', 'Transferring', 'Converting'].indexOf(jobItem.Status) != -1; html += ''; @@ -156,8 +155,14 @@ html += ''; @@ -172,8 +177,47 @@ }); - $('.btnCancelJob', flyout).on('click', function () { - //cancelJob(page, this.getAttribute('data-id')); + $('.btnCancelJobItem', flyout).on('click', function () { + cancelJobItem(page, this.getAttribute('data-id')); + }); + + $('.btnRetryJobItem', flyout).on('click', function () { + retryJobItem(page, this.getAttribute('data-id')); + }); + } + + function cancelJobItem(page, jobItemId) { + + $('.jobMenu', page).popup('close'); + + // Need a timeout because jquery mobile will not show a popup while another is in the act of closing + + Dashboard.showLoadingMsg(); + + ApiClient.ajax({ + + type: "DELETE", + url: ApiClient.getUrl('Sync/JobItems/' + jobItemId) + + }).done(function () { + + loadJob(page); + }); + + } + + function retryJobItem(page, jobItemId) { + + $('.jobMenu', page).popup('close'); + + ApiClient.ajax({ + + type: "POST", + url: ApiClient.getUrl('Sync/JobItems/' + jobItemId + '/Enable') + + }).done(function () { + + loadJob(page); }); } diff --git a/dashboard-ui/scripts/userlibraryaccess.js b/dashboard-ui/scripts/userlibraryaccess.js index d844ceabdb..9e5c9eb143 100644 --- a/dashboard-ui/scripts/userlibraryaccess.js +++ b/dashboard-ui/scripts/userlibraryaccess.js @@ -120,6 +120,7 @@ return this.getAttribute('data-id'); }).get(); + user.Policy.BlockedMediaFolders = null; user.Policy.EnableAllChannels = $('#chkEnableAllChannels', page).checked(); user.Policy.EnabledChannels = user.Policy.EnableAllChannels ? @@ -129,6 +130,7 @@ return this.getAttribute('data-id'); }).get(); + user.Policy.BlockedChannels = null; user.Policy.EnableAllDevices = $('#chkEnableAllDevices', page).checked(); user.Policy.EnabledDevices = user.Policy.EnableAllDevices ? diff --git a/dashboard-ui/thirdparty/apiclient/mediabrowser.apiclient.js b/dashboard-ui/thirdparty/apiclient/mediabrowser.apiclient.js index 7547652648..19f30bcb36 100644 --- a/dashboard-ui/thirdparty/apiclient/mediabrowser.apiclient.js +++ b/dashboard-ui/thirdparty/apiclient/mediabrowser.apiclient.js @@ -1491,9 +1491,9 @@ /** * Gets the virtual folder list */ - self.getVirtualFolders = function (userId) { + self.getVirtualFolders = function () { - var url = userId ? "Users/" + userId + "/VirtualFolders" : "Library/VirtualFolders"; + var url = "Library/VirtualFolders"; url = self.getUrl(url);