summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2007-12-12 15:18:28 -0500
committerRob Crittenden <rcritten@redhat.com>2007-12-12 15:18:28 -0500
commitb5af99c51d1ea8d4e6593a634d347b38a5d97271 (patch)
treee36a3d05f8925cdd3fb9d0d47a8ce194ac381af9
parent6976f92862c1dba3f7a25baa1893c41a67590b23 (diff)
downloadfreeipa-b5af99c51d1ea8d4e6593a634d347b38a5d97271.tar.gz
freeipa-b5af99c51d1ea8d4e6593a634d347b38a5d97271.tar.xz
freeipa-b5af99c51d1ea8d4e6593a634d347b38a5d97271.zip
Fix the UI indicators for mandatory fields.
The source and target groups weren't highlighted but the entire block of checkboxes was and it looked absolutely horrible.
-rw-r--r--ipa-server/ipa-gui/ipagui/forms/delegate.py5
-rw-r--r--ipa-server/ipa-gui/ipagui/subcontrollers/delegation.py7
-rw-r--r--ipa-server/ipa-gui/ipagui/templates/delegateform.kid4
3 files changed, 12 insertions, 4 deletions
diff --git a/ipa-server/ipa-gui/ipagui/forms/delegate.py b/ipa-server/ipa-gui/ipagui/forms/delegate.py
index d9d5d727c..7eadfe23e 100644
--- a/ipa-server/ipa-gui/ipagui/forms/delegate.py
+++ b/ipa-server/ipa-gui/ipagui/forms/delegate.py
@@ -65,8 +65,9 @@ class DelegateValidator(validators.Schema):
messages = { 'empty': _("Please choose a group"), })
dest_group_dn = validators.String(not_empty=True,
messages = { 'empty': _("Please choose a group"), })
- attrs = validators.NotEmpty(
- messages = { 'empty': _("Please select at least one value"), })
+ # There is no attrs validator here because then it shows as one
+ # huge block of color in the form. The validation is done in
+ # the subcontroller.
class DelegateForm(widgets.Form):
params = ['delegate_fields', 'attr_list']
diff --git a/ipa-server/ipa-gui/ipagui/subcontrollers/delegation.py b/ipa-server/ipa-gui/ipagui/subcontrollers/delegation.py
index cee239e72..9f4ec6c43 100644
--- a/ipa-server/ipa-gui/ipagui/subcontrollers/delegation.py
+++ b/ipa-server/ipa-gui/ipagui/subcontrollers/delegation.py
@@ -292,4 +292,11 @@ class DelegationController(IPAController):
@validate(form=delegate_form)
@identity.require(identity.not_anonymous())
def delegatevalidate(self, tg_errors=None, **kw):
+ # We are faking this because otherwise it shows up as one huge
+ # block of color in the UI when it has a not empty validator.
+ if not kw.get('attrs'):
+ if not tg_errors:
+ tg_errors = {}
+ tg_errors['attrs'] = _("Please select at least one value")
+ cherrypy.request.validation_errors = tg_errors
return tg_errors, kw
diff --git a/ipa-server/ipa-gui/ipagui/templates/delegateform.kid b/ipa-server/ipa-gui/ipagui/templates/delegateform.kid
index 4eb846d53..d2be336c8 100644
--- a/ipa-server/ipa-gui/ipagui/templates/delegateform.kid
+++ b/ipa-server/ipa-gui/ipagui/templates/delegateform.kid
@@ -104,7 +104,7 @@
py:content="tg.errors.get('source_group_dn')" />
</div>
<div id="source_searcharea" style="display:none">
- <input id="source_criteria" type="text"
+ <input class="requiredfield" id="source_criteria" type="text"
onkeypress="return enterDoSearch(event, 'source');" />
<input class="searchbutton" type="button" value="Find"
onclick="return doSearch('source');"
@@ -142,7 +142,7 @@
</div>
<div id="dest_searcharea" style="display:none">
<div>
- <input id="dest_criteria" type="text"
+ <input class="requiredfield" id="dest_criteria" type="text"
onkeypress="return enterDoSearch(event, 'dest');" />
<input class="searchbutton" type="button" value="Find"
onclick="return doSearch('dest');"