summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2011-09-07 13:57:47 +0200
committerEndi S. Dewata <edewata@redhat.com>2011-09-09 22:43:12 +0000
commit75a859dc5de196a0b6925f5a6c254472a95bf599 (patch)
tree89b20ec9816b8c15d7369bd9b3c0b385477c66e4
parent68a468f4b0bff67fa3b4e93f1d4ac345c0ef68ab (diff)
downloadfreeipa-75a859dc5de196a0b6925f5a6c254472a95bf599.zip
freeipa-75a859dc5de196a0b6925f5a6c254472a95bf599.tar.gz
freeipa-75a859dc5de196a0b6925f5a6c254472a95bf599.tar.xz
Fixed inconsistency in enabling delete buttons
https://fedorahosted.org/freeipa/ticket/1640 On the HBAC Rules page, where the rules are listed, if no rule is selected, the "Delete" button is not enabled, and cannot be clicked on. But edit a Rule, and Delete button is enabled in the available sections - regardless of, if an object is selected to be deleted or not, or even if there is no object to be selected to delete. One can click on this button...but then - there is no message indicating that something should be selected for deletion for this button to do anything. Notes: * fixed association_table_widget and association_facet
-rw-r--r--install/ui/association.js40
1 files changed, 35 insertions, 5 deletions
diff --git a/install/ui/association.js b/install/ui/association.js
index c7a1b6c..a9cce8e 100644
--- a/install/ui/association.js
+++ b/install/ui/association.js
@@ -352,24 +352,25 @@ IPA.association_table_widget = function (spec) {
that.table_create(container);
- var remove_button = IPA.action_button({
+ that.remove_button = IPA.action_button({
name: 'remove',
label: IPA.messages.buttons.remove,
icon: 'remove-icon',
+ 'class': 'action-button-disabled',
click: function() {
- if (!remove_button.hasClass('action-button-disabled')) {
+ if (!that.remove_button.hasClass('action-button-disabled')) {
that.remove_handler();
}
return false;
}
}).appendTo(that.buttons);
- var add_button = IPA.action_button({
+ that.add_button = IPA.action_button({
name: 'add',
label: IPA.messages.buttons.add,
icon: 'add-icon',
click: function() {
- if (!add_button.hasClass('action-button-disabled')) {
+ if (!that.add_button.hasClass('action-button-disabled')) {
that.add_handler();
}
return false;
@@ -420,9 +421,25 @@ IPA.association_table_widget = function (spec) {
that.set_enabled = function(enabled) {
that.table_set_enabled(enabled);
if (enabled) {
- $('.action-button', that.table).removeClass('action-button-disabled');
+ if(that.add_button) {
+ that.add_button.removeClass('action-button-disabled');
+ }
} else {
$('.action-button', that.table).addClass('action-button-disabled');
+ that.unselect_all();
+ }
+ };
+
+ that.select_changed = function() {
+
+ var values = that.get_selected_values();
+
+ if (that.remove_button) {
+ if (values.length === 0) {
+ that.remove_button.addClass('action-button-disabled');
+ } else {
+ that.remove_button.removeClass('action-button-disabled');
+ }
}
};
@@ -831,6 +848,18 @@ IPA.association_facet = function (spec) {
that.refresh_table();
};
+ that.table.select_changed = function() {
+
+ var values = that.table.get_selected_values();
+
+ if (that.remove_button) {
+ if (values.length === 0) {
+ that.remove_button.addClass('action-button-disabled');
+ } else {
+ that.remove_button.removeClass('action-button-disabled');
+ }
+ }
+ };
}
that.create_header = function(container) {
@@ -844,6 +873,7 @@ IPA.association_facet = function (spec) {
name: 'remove',
label: IPA.messages.buttons.remove,
icon: 'remove-icon',
+ 'class': 'action-button-disabled',
click: function() {
if (!that.remove_button.hasClass('action-button-disabled')) {
that.show_remove_dialog();