diff options
author | Kevin McCarthy <kmccarth@redhat.com> | 2007-08-28 16:01:07 -0700 |
---|---|---|
committer | Kevin McCarthy <kmccarth@redhat.com> | 2007-08-28 16:01:07 -0700 |
commit | e9bd8dee3b0350c08d16d57bfd008a72cb283c48 (patch) | |
tree | f02ea70f613862f2e668bbdb691c25295d3aba20 /ipa-server/ipa-gui/ipagui/controllers.py | |
parent | ef2dc5cefa2f9ba94edea7cfce8913e3f25723bd (diff) | |
download | freeipa-e9bd8dee3b0350c08d16d57bfd008a72cb283c48.tar.gz freeipa-e9bd8dee3b0350c08d16d57bfd008a72cb283c48.tar.xz freeipa-e9bd8dee3b0350c08d16d57bfd008a72cb283c48.zip |
Change user search to be asynchronous.
This way it returns results even if the search times out.
The find_users() search now returns a counter as the first result, which
is set to -1 if the results are partial.
Diffstat (limited to 'ipa-server/ipa-gui/ipagui/controllers.py')
-rw-r--r-- | ipa-server/ipa-gui/ipagui/controllers.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ipa-server/ipa-gui/ipagui/controllers.py b/ipa-server/ipa-gui/ipagui/controllers.py index ca2d15a2d..ebd0b20d6 100644 --- a/ipa-server/ipa-gui/ipagui/controllers.py +++ b/ipa-server/ipa-gui/ipagui/controllers.py @@ -140,10 +140,16 @@ class Root(controllers.RootController): def userlist(self, **kw): """Retrieve a list of all users and display them in one huge list""" users = None + counter = 0 uid = kw.get('uid') if uid != None and len(uid) > 0: try: users = client.find_users(uid.encode('utf-8')) + counter = users[0] + users = users[1:] + if counter == -1: + turbogears.flash("These results are truncated.\n" + + "Please refine your search and try again.") except ipaerror.IPAError, e: turbogears.flash("User list failed: " + str(e)) raise turbogears.redirect("/userlist") |