From 7aaadf74f18f954ce455fdc4fdaa0c95070ab149 Mon Sep 17 00:00:00 2001 From: Endi S. Dewata Date: Aug 30 2011 14:51:38 +0000 Subject: Fixed host adder dialog to show default DNS zone. The DNS zone widget for host adder dialog has been modified not to provide an empty option, so it will show the first available zone. Ticket #1685 --- diff --git a/install/ui/host.js b/install/ui/host.js index d22f548..019d3f4 100644 --- a/install/ui/host.js +++ b/install/ui/host.js @@ -136,6 +136,7 @@ IPA.entity_factories.host = function () { name: 'dnszone', label: IPA.metadata.objects.dnszone.label_singular, editable: true, + empty_option: false, undo: false }, { diff --git a/install/ui/widget.js b/install/ui/widget.js index 83cb4dc..f3559a3 100644 --- a/install/ui/widget.js +++ b/install/ui/widget.js @@ -1606,6 +1606,7 @@ IPA.combobox_widget = function(spec) { that.editable = spec.editable; that.searchable = spec.searchable; that.list_size = spec.list_size || 5; + that.empty_option = spec.empty_option === undefined ? true : spec.empty_option; that.create = function(container) { that.widget_create(container); @@ -1800,7 +1801,11 @@ IPA.entity_select_widget = function(spec) { that.remove_options(); - that.create_option(); + var selected_option = null; + + if (that.empty_option) { + selected_option = that.create_option(); + } var filter = that.filter.val(); var entries = data.result.result; @@ -1811,12 +1816,16 @@ IPA.entity_select_widget = function(spec) { var option = that.create_option(value, value); - if (filter === value) { - option.attr('selected', 'selected'); + if (!selected_option || filter === value) { + selected_option = option; } } - that.set_dirty(that.test_dirty()); + if (selected_option) { + selected_option.attr('selected', 'selected'); + that.input.val(selected_option.val()); + that.set_dirty(that.test_dirty()); + } }; command.execute();