diff options
author | Endi S. Dewata <edewata@redhat.com> | 2010-10-15 23:40:38 -0500 |
---|---|---|
committer | Adam Young <ayoung@redhat.com> | 2010-10-20 09:33:44 -0400 |
commit | 2c5f3cfd60575d7c72e6be8124b34c88b90d9fb7 (patch) | |
tree | 7fcaf067b6a46e5c48a6df57b3af2435d39b3ac8 /install/static/host.js | |
parent | df97bce34904e2b135a4b98d5cd5d59c2bb6b9ac (diff) | |
download | freeipa-2c5f3cfd60575d7c72e6be8124b34c88b90d9fb7.tar.gz freeipa-2c5f3cfd60575d7c72e6be8124b34c88b90d9fb7.tar.xz freeipa-2c5f3cfd60575d7c72e6be8124b34c88b90d9fb7.zip |
Host certificate management
The service certificate management UI has been generalized and moved
into certificate.js. The host details page is now using the same code
to manage certificates. The host.py has been modified to return host
certificate info.
The Get/Revoke/View buttons behavior has been modified such that they
are visible only if there is a valid certificate. The Get dialog box
has been fixed to show the correct certificate header and footer.
The ipa.css has been modified to store the style of the status bullets.
New unit tests for certificate has been added. The test data has been
modified to include sample host certificate.
Diffstat (limited to 'install/static/host.js')
-rw-r--r-- | install/static/host.js | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/install/static/host.js b/install/static/host.js index d2cdd7d50..c4d110a86 100644 --- a/install/static/host.js +++ b/install/static/host.js @@ -35,13 +35,50 @@ ipa_entity_set_add_definition('host', [ ]); ipa_entity_set_details_definition('host', [ - ipa_stanza({name:'host', label:'Host Details'}). + ipa_stanza({name:'details', label:'Host Details'}). input({name:'fqdn', label:'Fully Qualified Domain Name'}). input({name:'krbprincipalname', label:'Kerberos Principal'}). - input({name:'serverhostname', label:'Server Host Name'}) + input({name:'serverhostname', label:'Server Host Name'}), + ipa_stanza({name:'enrollment', label:'Enrollment'}). + input({name:'enrollment_status', label:'Status', + load:host_enrollment_status_load}), + ipa_stanza({name:'certificate', label:'Host Certificate'}). + input({name:'certificate_status', label:'Status', + load:host_usercertificate_load}) ]); ipa_entity_set_association_definition('host', { 'hostgroup': { associator: SerialAssociator }, 'rolegroup': { associator: SerialAssociator } }); + +function host_enrollment_status_load(container, dt, result) { + // skip enrollment_status +} + +function host_usercertificate_load(container, dt, result) { + + var panel = certificate_status_panel({ + 'entity_type': 'host', + 'entity_label': 'Host', + 'result': result, + 'get_entity_pkey': function(result) { + var values = result['fqdn']; + return values ? values[0] : null; + }, + 'get_entity_name': function(result) { + return this.get_entity_pkey(result); + }, + 'get_entity_principal': function(result) { + var values = result['krbprincipalname']; + return values ? values[0] : null; + }, + 'get_entity_certificate': function(result) { + var values = result['usercertificate']; + return values ? values[0].__base64__ : null; + } + }); + + var dd = ipa_create_first_dd(this.name, panel); + dt.after(dd); +} |