45 lines
1.6 KiB
JavaScript
45 lines
1.6 KiB
JavaScript
define([
|
|
'jquery', 'gettext', 'js/models/settings/advanced', 'js/views/settings/advanced'
|
|
], function($, gettext, AdvancedSettingsModel, AdvancedSettingsView) {
|
|
'use strict';
|
|
return function (advancedDict, advancedSettingsUrl) {
|
|
var advancedModel, editor;
|
|
|
|
$('form :input')
|
|
.focus(function() {
|
|
$('label[for="' + this.id + '"]').addClass('is-focused');
|
|
})
|
|
.blur(function() {
|
|
$('label').removeClass('is-focused');
|
|
});
|
|
|
|
// proactively populate advanced b/c it has the filtered list and doesn't really follow the model pattern
|
|
advancedModel = new AdvancedSettingsModel(advancedDict, {parse: true});
|
|
advancedModel.url = advancedSettingsUrl;
|
|
|
|
editor = new AdvancedSettingsView({
|
|
el: $('.settings-advanced'),
|
|
model: advancedModel
|
|
});
|
|
editor.render();
|
|
|
|
$('#deprecated-settings').click(function() {
|
|
var wrapperDeprecatedSetting = $('.wrapper-deprecated-setting'),
|
|
deprecatedSettingsLabel = $('.deprecated-settings-label');
|
|
|
|
if ($(this).is(':checked')) {
|
|
wrapperDeprecatedSetting.addClass('is-set');
|
|
deprecatedSettingsLabel.text(gettext('Hide Deprecated Settings'));
|
|
editor.render_deprecated = true;
|
|
}
|
|
else {
|
|
wrapperDeprecatedSetting.removeClass('is-set');
|
|
deprecatedSettingsLabel.text(gettext('Show Deprecated Settings'));
|
|
editor.render_deprecated = false;
|
|
}
|
|
|
|
editor.render();
|
|
});
|
|
};
|
|
});
|