app/soc/logic/site/id_user.py
changeset 138 e1167bdf71a4
parent 137 0f572149449d
child 141 e120c24b89e2
--- a/app/soc/logic/site/id_user.py	Fri Sep 12 20:31:56 2008 +0000
+++ b/app/soc/logic/site/id_user.py	Fri Sep 12 20:36:17 2008 +0000
@@ -139,7 +139,14 @@
 def isIdDeveloper(id=None):
   """Returns True if Google Account is a Developer with special privileges.
   
-  using the App Engine Users API.
+  Since it only works on the current logged-in user, if id matches the
+  current logged-in Google Account, the App Engine Users API function
+  user.is_current_user_admin() is checked.  If that returns False, or
+  id is not the currently logged-in user, the is_developer property of
+  the User entity corresponding to the id Google Account is checked next.
+  
+  This solves the "chicken-and-egg" problem of no User entity having its
+  is_developer property set, but no one being able to set it.
   
   Args:
     id: a Google Account (users.User) object; if id is not supplied,