From 767cdc1f6f6a63ce997fc9476911e2c361f9d402 Mon Sep 17 00:00:00 2001 From: LukePulverenti Date: Wed, 20 Feb 2013 20:33:05 -0500 Subject: Pushing missing changes --- .../Html/scripts/PluginUpdatesPage.js | 109 +++++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 MediaBrowser.WebDashboard/Html/scripts/PluginUpdatesPage.js (limited to 'MediaBrowser.WebDashboard/Html/scripts/PluginUpdatesPage.js') diff --git a/MediaBrowser.WebDashboard/Html/scripts/PluginUpdatesPage.js b/MediaBrowser.WebDashboard/Html/scripts/PluginUpdatesPage.js new file mode 100644 index 000000000..4edb08602 --- /dev/null +++ b/MediaBrowser.WebDashboard/Html/scripts/PluginUpdatesPage.js @@ -0,0 +1,109 @@ +var PluginUpdatesPage = { + + onPageShow: function () { + + Dashboard.showLoadingMsg(); + + $('.liPluginUpdate', this).remove(); + + ApiClient.getInstalledPlugins().done(PluginUpdatesPage.loadPlugins); + + }, + + loadPlugins: function (plugins) { + + plugins = plugins.filter(function (p) { + + return !p.IsCorePlugin; + }); + + var elem = $('#tbodyPluginUpdates', $.mobile.activePage).html(''); + + for (var i = 0, length = plugins.length; i < length; i++) { + + PluginUpdatesPage.addPlugin(plugins[i], i, elem); + + } + + Dashboard.hideLoadingMsg(); + }, + + addPlugin: function (plugin, fieldIndex, elem) { + + var html = ""; + + html += ""; + + html += "

" + plugin.Name + "

"; + + var fieldId = "liPluginUpdateFielda" + fieldIndex; + + var options = PluginUpdatesPage.getHtmlOptions(["Off", "On"], (plugin.EnableAutoUpdate ? "On" : "Off")); + + html += ""; + html += ""; + html += ""; + + fieldId = "liPluginUpdateFieldb" + fieldIndex; + + options = PluginUpdatesPage.getHtmlOptions(["Release", "Beta", "Dev"], plugin.UpdateClass); + + html += ""; + html += ""; + html += ""; + + html += ""; + + elem.append(html).trigger('create'); + }, + + getHtmlOptions: function (names, selectedValue) { + + var html = ""; + + for (var i = 0, length = names.length; i < length; i++) { + + var name = names[i]; + + if (name == selectedValue) { + html += ''; + } else { + html += ''; + } + } + + + return html; + + }, + + setAutoUpdate: function (select) { + + var id = $(select).attr('data-uniqueid'); + + Dashboard.showLoadingMsg(); + + ApiClient.getPluginConfiguration(id).done(function (config) { + + config.EnableAutoUpdate = select.selectedIndex === 1; + + ApiClient.updatePluginConfiguration(id, config).done(Dashboard.hideLoadingMsg); + }); + }, + + setUpdateClass: function (select) { + + var id = $(select).attr('data-uniqueid'); + + Dashboard.showLoadingMsg(); + + ApiClient.getPluginConfiguration(id).done(function (config) { + + config.UpdateClass = select.value; + + ApiClient.updatePluginConfiguration(id, config).done(Dashboard.hideLoadingMsg); + }); + } +}; + +$(document).on('pageshow', "#pluginUpdatesPage", PluginUpdatesPage.onPageShow); \ No newline at end of file -- cgit v1.2.3