Fix by_email_address (now for users/groups), add by_id for groups.
This commit is contained in:
parent
d2f770d47d
commit
660594dd13
1 changed files with 26 additions and 8 deletions
|
@ -109,13 +109,13 @@ class People(SABase):
|
||||||
'''
|
'''
|
||||||
return cls.query.filter_by(id=id).one()
|
return cls.query.filter_by(id=id).one()
|
||||||
by_id = classmethod(by_id)
|
by_id = classmethod(by_id)
|
||||||
|
|
||||||
def by_email_address(cls, email):
|
def by_email_address(cls, email):
|
||||||
'''
|
'''
|
||||||
A class method that can be used to search users
|
A class method that can be used to search users
|
||||||
based on their email addresses since it is unique.
|
based on their email addresses since it is unique.
|
||||||
'''
|
'''
|
||||||
return cls.query.join('emails').filter_by(email=email).first()
|
return cls.query.join(['email_purposes', 'person_email']).filter_by(email=email).one()
|
||||||
|
|
||||||
by_email_address = classmethod(by_email_address)
|
by_email_address = classmethod(by_email_address)
|
||||||
|
|
||||||
|
@ -141,7 +141,7 @@ class People(SABase):
|
||||||
role.role_type = 'user'
|
role.role_type = 'user'
|
||||||
role.member = cls
|
role.member = cls
|
||||||
role.group = group
|
role.group = group
|
||||||
|
|
||||||
def approve(cls, group, requester):
|
def approve(cls, group, requester):
|
||||||
'''
|
'''
|
||||||
Approve a person in a group - requester for logging purposes
|
Approve a person in a group - requester for logging purposes
|
||||||
|
@ -151,7 +151,7 @@ class People(SABase):
|
||||||
else:
|
else:
|
||||||
role = PersonRoles.query.filter_by(member=cls, group=group).one()
|
role = PersonRoles.query.filter_by(member=cls, group=group).one()
|
||||||
role.role_status = 'approved'
|
role.role_status = 'approved'
|
||||||
|
|
||||||
def upgrade(cls, group, requester):
|
def upgrade(cls, group, requester):
|
||||||
'''
|
'''
|
||||||
Upgrade a user in a group - requester for logging purposes
|
Upgrade a user in a group - requester for logging purposes
|
||||||
|
@ -166,7 +166,7 @@ class People(SABase):
|
||||||
role.role_type = 'administrator'
|
role.role_type = 'administrator'
|
||||||
elif role.role_type == 'user':
|
elif role.role_type == 'user':
|
||||||
role.role_type = 'sponsor'
|
role.role_type = 'sponsor'
|
||||||
|
|
||||||
def downgrade(cls, group, requester):
|
def downgrade(cls, group, requester):
|
||||||
'''
|
'''
|
||||||
Downgrade a user in a group - requester for logging purposes
|
Downgrade a user in a group - requester for logging purposes
|
||||||
|
@ -181,7 +181,7 @@ class People(SABase):
|
||||||
role.role_type = 'user'
|
role.role_type = 'user'
|
||||||
elif role.role_type == 'administrator':
|
elif role.role_type == 'administrator':
|
||||||
role.role_type = 'sponsor'
|
role.role_type = 'sponsor'
|
||||||
|
|
||||||
def sponsor(cls, group, requester):
|
def sponsor(cls, group, requester):
|
||||||
# If we want to do logging, this might be the place.
|
# If we want to do logging, this might be the place.
|
||||||
if not group in cls.unapproved_memberships:
|
if not group in cls.unapproved_memberships:
|
||||||
|
@ -300,6 +300,24 @@ class Configs(SABase):
|
||||||
|
|
||||||
class Groups(SABase):
|
class Groups(SABase):
|
||||||
'''Group that people can belong to.'''
|
'''Group that people can belong to.'''
|
||||||
|
|
||||||
|
def by_id(cls, id):
|
||||||
|
'''
|
||||||
|
A class method that can be used to search groups
|
||||||
|
based on their unique id
|
||||||
|
'''
|
||||||
|
return cls.query.filter_by(id=id).one()
|
||||||
|
by_id = classmethod(by_id)
|
||||||
|
|
||||||
|
def by_email_address(cls, email):
|
||||||
|
'''
|
||||||
|
A class method that can be used to search groups
|
||||||
|
based on their email addresses since it is unique.
|
||||||
|
'''
|
||||||
|
return cls.query.join(['group_email_purposes', 'group_email']).filter_by(email=email).one()
|
||||||
|
|
||||||
|
by_email_address = classmethod(by_email_address)
|
||||||
|
|
||||||
def by_name(cls, name):
|
def by_name(cls, name):
|
||||||
'''
|
'''
|
||||||
A class method that permits to search groups
|
A class method that permits to search groups
|
||||||
|
@ -372,7 +390,7 @@ class UnApprovedRoles(PersonRoles):
|
||||||
|
|
||||||
class Visit(SABase):
|
class Visit(SABase):
|
||||||
'''Track how many people are visiting the website.
|
'''Track how many people are visiting the website.
|
||||||
|
|
||||||
It doesn't currently make sense for us to track this here so we clear this
|
It doesn't currently make sense for us to track this here so we clear this
|
||||||
table of stale records every hour.
|
table of stale records every hour.
|
||||||
'''
|
'''
|
||||||
|
@ -382,7 +400,7 @@ class Visit(SABase):
|
||||||
|
|
||||||
class VisitIdentity(SABase):
|
class VisitIdentity(SABase):
|
||||||
'''Associate a user with a visit cookie.
|
'''Associate a user with a visit cookie.
|
||||||
|
|
||||||
This allows users to log in to app.
|
This allows users to log in to app.
|
||||||
'''
|
'''
|
||||||
pass
|
pass
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue