summaryrefslogtreecommitdiffstats
path: root/install/static/policy.js
diff options
context:
space:
mode:
authorAdam Young <ayoung@redhat.com>2010-12-02 14:14:59 -0500
committerEndi Sukma Dewata <edewata@redhat.com>2010-12-03 11:42:38 -0500
commite33377bc1353141a035ce5d188cb63fa926fb86f (patch)
treec311bc8fa89406b11240334efb5b34f50c47d948 /install/static/policy.js
parent188ca3a360b7d22cd4c40afcba87912cc892aa01 (diff)
downloadfreeipa.git-e33377bc1353141a035ce5d188cb63fa926fb86f.tar.gz
freeipa.git-e33377bc1353141a035ce5d188cb63fa926fb86f.tar.xz
freeipa.git-e33377bc1353141a035ce5d188cb63fa926fb86f.zip
dns2 ui replaceing calls for the dns plugin to the dns2 plugin no has attribute permissions and all other benefits of building on the baseldap plugin
Diffstat (limited to 'install/static/policy.js')
-rw-r--r--install/static/policy.js67
1 files changed, 41 insertions, 26 deletions
diff --git a/install/static/policy.js b/install/static/policy.js
index db60e10a..18c4ef55 100644
--- a/install/static/policy.js
+++ b/install/static/policy.js
@@ -21,12 +21,12 @@
/* REQUIRES: ipa.js, details.js, search.js, add.js, entity.js */
/* DNS */
-ipa_entity_set_search_definition('dns', [
+ipa_entity_set_search_definition('dnszone', [
['idnsname', 'Zone Name', null]
]);
-ipa_entity_set_add_definition('dns', [
+ipa_entity_set_add_definition('dnszone', [
'dialog-add-dns', 'Add New Zone', [
['idnsname', 'Name', null],
['idnssoamname', 'Authoritative name server'],
@@ -34,7 +34,7 @@ ipa_entity_set_add_definition('dns', [
]
]);
-ipa_entity_set_details_definition('dns', [
+ipa_entity_set_details_definition('dnszone', [
ipa_stanza({name:'identity', label:'DNS Zone Details'}).
input({name:'idnsname', label:'DNS Name'}).
input({name:'idnszoneactive', label:'Zone Active'}).
@@ -51,11 +51,11 @@ ipa_entity_set_details_definition('dns', [
input({name:'idnsupdatepolicy', label:'BIND update policy'})
]);
-ipa_entity_set_association_definition('dns', {
+ipa_entity_set_association_definition('dnszone', {
});
-ipa_entity_set_facet_definition('dns', [
+ipa_entity_set_facet_definition('dnszone', [
ipa_records_facet({
'name': 'records',
'label': 'Records'
@@ -133,12 +133,16 @@ function ipa_records_facet(spec){
function add_fail(data, text_status, xhr) {
}
- params.push( $.bbq.getState('dns-pkey', true));
+ params.push( $.bbq.getState(that.entity_name+'-pkey', true));
params.push(add_dialog.find('#dns-record-resource').val());
- params.push(add_dialog.find('#dns-record-type').val());
- params.push(add_dialog.find('#dns-record-data').val());
- ipa_cmd('dns_add_rr', params, options, add_win, add_fail);
+ var key = add_dialog.find('#dns-record-type').val().toLowerCase()+
+ "record";
+ var value = add_dialog.find('#dns-record-data').val();
+ options[key] = value;
+
+
+ ipa_cmd('dnsrecord_add', params, options, add_win, add_fail);
//add_dialog.dialog('close');
}
@@ -166,7 +170,7 @@ function ipa_records_facet(spec){
function delete_records(records_table){
- var zone = $.bbq.getState('dns-pkey', true);
+ var zone = $.bbq.getState('dnszone-pkey', true);
var thead = records_table.find('thead');
thead.find("INPUT[type='checkbox']").
@@ -193,10 +197,17 @@ function ipa_records_facet(spec){
var tr = $(box).parents('tr');
var resource = $(tr).find('[title="idnsname"]').text();
var type = $(tr).find('[title="type"]').
- text().toUpperCase();
+ text().toLowerCase();
var data = $(tr).find('[title="data"]').text();
- var params = [zone, resource, type, data];
- delete_list.push(params);
+ var rectype=type+"record"
+
+ var options = {};
+ options[rectype]=data;
+
+ var command = {
+ "method":"dnsrecord_del",
+ "params":[[zone,resource], options]};
+ delete_list.push(command);
to_delete_body.append(
$('<tr></tr>').
append($('<td></td>',{html:resource}).
@@ -208,16 +219,12 @@ function ipa_records_facet(spec){
function delete_on_click() {
var delete_count = delete_list.length;
function delete_complete(){
- delete_count -= 1;
- if (delete_count === 0 ){
reload();
delete_dialog.dialog('close');
- }
- }
- for (var i = 0; i < delete_list.length; i += 1){
- ipa_cmd('dns_del_rr',delete_list[i],{},
- delete_complete,delete_complete);
}
+
+ ipa_cmd('batch', delete_list, {},
+ delete_complete,delete_complete);
}
function cancel_on_click() {
@@ -297,17 +304,25 @@ function ipa_records_facet(spec){
'click': function(){refresh()}
}).appendTo(control_span);
+ var action_panel_ul = $('.action-panel ul', that.container);
+
+ var action_controls = $('<li/>',{
+ "class":"action-controls"}).appendTo(action_panel_ul);
+
+
ipa_button({
'label': IPA.messages.button.add,
'icon': 'ui-icon-plus',
'click': add_click
- }).appendTo(control_span);
+ }).appendTo(action_controls);
ipa_button({
'label': IPA.messages.button.remove,
'icon': 'ui-icon-trash',
'click': function(){delete_records(records_table);}
- }).appendTo(control_span);
+ }).appendTo(action_controls);
+
+
div.append('<span class="records-buttons"></span>');
@@ -343,11 +358,11 @@ function ipa_records_facet(spec){
function load_on_win(data){
- display('dns',data);
+ display(that.entity_name,data);
}
function load_on_fail(data){
- display('dns',data);
+ display(that.entity_name,data);
}
function reload(){
@@ -376,8 +391,8 @@ function ipa_records_facet(spec){
}
- var pkey = $.bbq.getState('dns' + '-pkey', true);
- ipa_cmd('dns_find_rr',[pkey],options,load_on_win, load_on_fail);
+ var pkey = $.bbq.getState(that.entity_name + '-pkey', true);
+ ipa_cmd('dnsrecord_find',[pkey],options,load_on_win, load_on_fail);
}