diff options
author | Will Woods <wwoods@redhat.com> | 2009-09-10 17:26:22 -0400 |
---|---|---|
committer | Will Woods <wwoods@redhat.com> | 2009-09-10 17:26:22 -0400 |
commit | ff56c13d124a947a2a5c8ca9f6df411e63a8ed44 (patch) | |
tree | 382b57b6706245f76d5c83f85bcbb3a14d52180e /israwhidebroken/model.py | |
parent | abad8db8160fef1cd9c5ed8898ad72453b8b440e (diff) | |
download | israwhidebroken-ff56c13d124a947a2a5c8ca9f6df411e63a8ed44.tar.gz israwhidebroken-ff56c13d124a947a2a5c8ca9f6df411e63a8ed44.tar.xz israwhidebroken-ff56c13d124a947a2a5c8ca9f6df411e63a8ed44.zip |
Switch to Genshi templates and FAS2 visit/identity
Diffstat (limited to 'israwhidebroken/model.py')
-rw-r--r-- | israwhidebroken/model.py | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/israwhidebroken/model.py b/israwhidebroken/model.py index 13f3209..6e8bcbd 100644 --- a/israwhidebroken/model.py +++ b/israwhidebroken/model.py @@ -44,110 +44,3 @@ class TestResult(SQLObject): bug_id = IntCol() # timestamp this result was entered timestamp = DateTimeCol(notNone=True) - -# the identity model - - -class Visit(SQLObject): - """ - A visit to your site - """ - class sqlmeta: - table = 'visit' - - visit_key = StringCol(length=40, alternateID=True, - alternateMethodName='by_visit_key') - created = DateTimeCol(default=datetime.now) - expiry = DateTimeCol() - - def lookup_visit(cls, visit_key): - try: - return cls.by_visit_key(visit_key) - except SQLObjectNotFound: - return None - lookup_visit = classmethod(lookup_visit) - - -class VisitIdentity(SQLObject): - """ - A Visit that is link to a User object - """ - visit_key = StringCol(length=40, alternateID=True, - alternateMethodName='by_visit_key') - user_id = IntCol() - - -class Group(SQLObject): - """ - An ultra-simple group definition. - """ - # names like "Group", "Order" and "User" are reserved words in SQL - # so we set the name to something safe for SQL - class sqlmeta: - table = 'tg_group' - - group_name = UnicodeCol(length=16, alternateID=True, - alternateMethodName='by_group_name') - display_name = UnicodeCol(length=255) - created = DateTimeCol(default=datetime.now) - - # collection of all users belonging to this group - users = RelatedJoin('User', intermediateTable='user_group', - joinColumn='group_id', otherColumn='user_id') - - # collection of all permissions for this group - permissions = RelatedJoin('Permission', joinColumn='group_id', - intermediateTable='group_permission', - otherColumn='permission_id') - - -class User(SQLObject): - """ - Reasonably basic User definition. - Probably would want additional attributes. - """ - # names like "Group", "Order" and "User" are reserved words in SQL - # so we set the name to something safe for SQL - class sqlmeta: - table = 'tg_user' - - user_name = UnicodeCol(length=16, alternateID=True, - alternateMethodName='by_user_name') - email_address = UnicodeCol(length=255, alternateID=True, - alternateMethodName='by_email_address') - display_name = UnicodeCol(length=255) - password = UnicodeCol(length=40) - created = DateTimeCol(default=datetime.now) - - # groups this user belongs to - groups = RelatedJoin('Group', intermediateTable='user_group', - joinColumn='user_id', otherColumn='group_id') - - def _get_permissions(self): - perms = set() - for g in self.groups: - perms |= set(g.permissions) - return perms - - def _set_password(self, cleartext_password): - """Runs cleartext_password through the hash algorithm before saving.""" - password_hash = identity.encrypt_password(cleartext_password) - self._SO_set_password(password_hash) - - def set_password_raw(self, password): - """Saves the password as-is to the database.""" - self._SO_set_password(password) - - -class Permission(SQLObject): - """ - A relationship that determines what each Group can do - """ - permission_name = UnicodeCol(length=16, alternateID=True, - alternateMethodName='by_permission_name') - description = UnicodeCol(length=255) - - groups = RelatedJoin('Group', - intermediateTable='group_permission', - joinColumn='permission_id', - otherColumn='group_id') |