var AdvancedMetadataConfigurationPage = {
onPageShow: function () {
Dashboard.showLoadingMsg();
var page = this;
var promise1 = ApiClient.getServerConfiguration();
var promise2 = ApiClient.getItemTypes({ HasInternetProvider: true });
$.when(promise1, promise2).done(function (response1, response2) {
AdvancedMetadataConfigurationPage.load(page, response1[0], response2[0]);
});
},
load: function (page, config, itemTypes) {
AdvancedMetadataConfigurationPage.loadItemTypes(page, config, itemTypes);
Dashboard.hideLoadingMsg();
},
loadItemTypes: function (page, configuration, types) {
var html = '
';
for (var i = 0, length = types.length; i < length; i++) {
var type = types[i];
var id = "checkbox-" + i + "a";
var checkedAttribute = configuration.InternetProviderExcludeTypes.indexOf(type) != -1 ? ' checked="checked"' : '';
html += '';
html += '';
}
html += "
";
$('#divItemTypes', page).html(html).trigger("create");
},
onSubmit: function () {
var form = this;
Dashboard.showLoadingMsg();
ApiClient.getServerConfiguration().done(function (config) {
config.InternetProviderExcludeTypes = $.map($('.chkItemType:checked', form), function (currentCheckbox) {
return currentCheckbox.getAttribute('data-itemtype');
});
ApiClient.updateServerConfiguration(config).done(Dashboard.processServerConfigurationUpdateResult);
});
// Disable default form submission
return false;
}
};
$(document).on('pageshow', "#advancedMetadataConfigurationPage", AdvancedMetadataConfigurationPage.onPageShow);