diff options
-rw-r--r-- | install/ui/association.js | 19 | ||||
-rw-r--r-- | install/ui/widget.js | 18 |
2 files changed, 29 insertions, 8 deletions
diff --git a/install/ui/association.js b/install/ui/association.js index f2ef11dac..ebb6e421f 100644 --- a/install/ui/association.js +++ b/install/ui/association.js @@ -908,7 +908,10 @@ IPA.association_facet = function (spec) { span.append(IPA.messages.association.show_results); span.append(' '); + var direct_id = that.entity.name+'-'+that.attribute_member+'-'+that.other_entity+'-direct-radio'; + that.direct_radio = $('<input/>', { + id: direct_id, type: 'radio', name: 'type', value: 'direct', @@ -919,11 +922,17 @@ IPA.association_facet = function (spec) { } }).appendTo(span); - span.append(' '); - span.append(IPA.messages.association.direct_enrollment); + $('<label/>', { + text: IPA.messages.association.direct_enrollment, + 'for': direct_id + }).appendTo(span); + span.append(' '); + var indirect_id = that.entity.name+'-'+that.attribute_member+'-'+that.other_entity+'-indirect-radio'; + that.indirect_radio = $('<input/>', { + id: indirect_id, type: 'radio', name: 'type', value: 'indirect', @@ -934,8 +943,10 @@ IPA.association_facet = function (spec) { } }).appendTo(span); - span.append(' '); - span.append(IPA.messages.association.indirect_enrollment); + $('<label/>', { + text: IPA.messages.association.indirect_enrollment, + 'for': indirect_id + }).appendTo(span); } }; diff --git a/install/ui/widget.js b/install/ui/widget.js index b25dc8f7f..7acaf9a3e 100644 --- a/install/ui/widget.js +++ b/install/ui/widget.js @@ -936,13 +936,23 @@ IPA.radio_widget = function(spec) { for (var i=0; i<that.options.length; i++) { var option = that.options[i]; + // TODO: Use ID generator or accept ID from spec to avoid conflicts. + // Currently this ID is unique enough, but it will not work if the + // radio button is used multiple times for the same attribute, for + // example both in adder dialog and details facet. + var id = that.entity.name+'-'+that.name+'-'+i+'-radio'; + $('<input/>', { - 'type': 'radio', - 'name': that.name, - 'value': option.value + id: id, + type: 'radio', + name: that.name, + value: option.value }).appendTo(container); - container.append(option.label); + $('<label/>', { + text: option.label, + 'for': id + }).appendTo(container); } if (that.undo) { |