app/soc/models/user.py
changeset 98 b2b823466a8b
parent 83 3f4f7c540b75
child 99 8c38b546a3cf
--- a/app/soc/models/user.py	Wed Aug 20 18:36:55 2008 +0000
+++ b/app/soc/models/user.py	Wed Aug 20 21:59:00 2008 +0000
@@ -63,3 +63,36 @@
   link_name.help_text = ugettext_lazy(
       'Field used in URLs to identify user. '
       'Lower ASCII characters only.')
+
+  @staticmethod
+  def doesUserExist(user=None):
+    """Returns if user already exists in the Datastore.
+    
+    Args:
+      user: a Google Account object,
+    """
+    #: let's do a gql query and check if user exists in datastore
+    data = self.getUser(user)
+    if data:
+      return True
+    else:
+      return False
+
+  @staticmethod
+  def getUser(user=None):
+    """Returns User entity from datastore, or None if not found.  
+    
+    Args:
+      user: a Google Account object,
+    """
+    return User.gql('WHERE id = :1', user).get()
+
+  @staticmethod
+  def getUserForLinkname(link_name=None):
+    """Returns User entity for linkname or None if not found.
+    
+    Args:
+      link_name: linkname used in URLs to identify user,
+    """
+    return User.gql('WHERE link_name = :1', link_name).get()
+    
\ No newline at end of file