jellyfin-web/dashboard-ui/scripts/syncservices.js

66 lines
1.7 KiB
JavaScript
Raw Normal View History

2015-03-08 09:25:46 -07:00
(function ($, document) {
function reloadList(page) {
Dashboard.showLoadingMsg();
var promise1 = ApiClient.getAvailablePlugins({
TargetSystems: 'Server'
});
var promise2 = ApiClient.getInstalledPlugins();
$.when(promise1, promise2).done(function (response1, response2) {
2015-03-08 10:58:45 -07:00
renderInstalled(page, response1[0], response2[0]);
renderCatalog(page, response1[0], response2[0]);
2015-03-08 09:25:46 -07:00
});
}
2015-03-08 10:58:45 -07:00
function renderInstalled(page, availablePlugins, installedPlugins) {
installedPlugins = installedPlugins.filter(function (i) {
var catalogEntry = availablePlugins.filter(function (a) {
return a.guid == i.Id;
})[0];
return catalogEntry && catalogEntry.category == 'Sync';
});
PluginsPage.renderPlugins(page, installedPlugins);
}
function renderCatalog(page, availablePlugins, installedPlugins) {
2015-03-08 09:25:46 -07:00
PluginCatalog.renderCatalog({
catalogElement: $('.catalog', page),
availablePlugins: availablePlugins,
installedPlugins: installedPlugins,
categories: ['Sync'],
2015-03-08 10:34:02 -07:00
showCategory: false,
2015-03-08 11:21:39 -07:00
context: 'sync',
targetSystem: 'Server'
2015-03-08 09:25:46 -07:00
});
}
$(document).on('pageshow', "#syncServicesPage", function () {
var page = this;
reloadList(page);
2015-03-16 22:58:29 -07:00
Dashboard.getPluginSecurityInfo().done(function (pluginSecurityInfo) {
if (pluginSecurityInfo.IsMBSupporter) {
$('.syncPromotion', page).hide();
} else {
$('.syncPromotion', page).show();
}
});
2015-03-08 09:25:46 -07:00
});
})(jQuery, document);