diff --git a/install/static/details.js b/install/static/details.js index f0756321d..b2dd26330 100644 --- a/install/static/details.js +++ b/install/static/details.js @@ -89,12 +89,12 @@ function ipa_details_field(spec) { dd = ipa_create_first_dd(that.name); - dd.append(ipa_details_field_create_input.call(that, that.values[0], hint_span, rights, 0)); + dd.append(that.create_value(that.values[0], hint_span, rights, 0)); dd.appendTo(that.container); for (var i = 1; i < that.values.length; ++i) { dd = ipa_create_other_dd(that.name); - dd.append(ipa_details_field_create_input.call(that, that.values[i], hint_span, rights, i)); + dd.append(that.create_value(that.values[i], hint_span, rights, i)); dd.appendTo(that.container); } @@ -112,12 +112,113 @@ function ipa_details_field(spec) { } else { dd = ipa_create_first_dd(that.name); - dd.append(ipa_details_field_create_input.call(that, '', hint_span, rights, 0)); + dd.append(that.create_value('', hint_span, rights, 0)); dd.appendTo(that.container); } } }; + /* create an HTML element for displaying/editing an attribute + * arguments: + * attr - LDAP attribute name + * value - the attributes value */ + that.create_value = function(value, hint, rights, index) { + + // if field is primary key or non-writable, return a label + + var label = $('