summaryrefslogtreecommitdiffstats
path: root/install/ui/details.js
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2011-11-11 22:33:05 -0600
committerAdam Young <ayoung@redhat.com>2011-11-14 16:47:08 -0500
commitd6d24be28953f2ec3cf1f2400619fd61459cf45f (patch)
tree3a0db972a38a37b417a0aaba3c1b38ecf60e4cb9 /install/ui/details.js
parent0f34e0bf82d5e0bf905ac8af7257d2f33d72d9a0 (diff)
downloadfreeipa-d6d24be28953f2ec3cf1f2400619fd61459cf45f.tar.gz
freeipa-d6d24be28953f2ec3cf1f2400619fd61459cf45f.tar.xz
freeipa-d6d24be28953f2ec3cf1f2400619fd61459cf45f.zip
Refactored permission target section.
The permission target section has been modified to use widgets to create the target selection and handle multiple fields. Ticket #2098
Diffstat (limited to 'install/ui/details.js')
-rw-r--r--install/ui/details.js35
1 files changed, 31 insertions, 4 deletions
diff --git a/install/ui/details.js b/install/ui/details.js
index d17e06f47..fd3570e1c 100644
--- a/install/ui/details.js
+++ b/install/ui/details.js
@@ -118,13 +118,19 @@ IPA.details_section = function(spec) {
var fields = that.fields.values;
for (var i=0; i<fields.length; i++) {
var field = fields[i];
- if (field.hidden) continue;
var field_container = $('<div/>', {
name: field.name,
title: field.label,
'class': 'field'
- }).appendTo(container);
+ });
+
+ if (field.hidden) {
+ field_container.css('display', 'none');
+ }
+
+ field_container.appendTo(container);
+
field.create(field_container);
}
};
@@ -237,6 +243,8 @@ IPA.details_table_section = function(spec) {
var that = IPA.details_section(spec);
+ that.rows = $.ordered_map();
+
that.create = function(container) {
that.container = container;
@@ -249,9 +257,15 @@ IPA.details_table_section = function(spec) {
var fields = that.fields.values;
for (var i=0; i<fields.length; i++) {
var field = fields[i];
- if (field.hidden) continue;
- var tr = $('<tr/>').appendTo(table);
+ var tr = $('<tr/>');
+ that.add_row(field.name, tr);
+
+ if (field.hidden) {
+ tr.css('display', 'none');
+ }
+
+ tr.appendTo(table);
var td = $('<td/>', {
'class': 'section-cell-label',
@@ -280,6 +294,19 @@ IPA.details_table_section = function(spec) {
}
};
+ that.add_row = function(name, row) {
+ that.rows.put(name, row);
+ };
+
+ that.get_row = function(name) {
+ return that.rows.get(name);
+ };
+
+ that.set_row_visible = function(name, visible) {
+ var row = that.get_row(name);
+ row.css('display', visible ? '' : 'none');
+ };
+
that.table_section_create = that.create;
return that;