1
|
'''User object. Configuration variables and utilities'''
|
2
|
|
3
|
from qommon.storage import StorableObject
|
4
|
|
5
|
class User(StorableObject):
|
6
|
'''User object. Configuration variables and utilities'''
|
7
|
_names = 'users'
|
8
|
|
9
|
name = None
|
10
|
email = None
|
11
|
name_identifiers = None
|
12
|
identification_token = None
|
13
|
lasso_dumps = None
|
14
|
is_admin = False
|
15
|
anonymous = False
|
16
|
|
17
|
def __init__(self, name=None):
|
18
|
StorableObject.__init__(self)
|
19
|
self.name = name
|
20
|
self.name_identifiers = []
|
21
|
self.lasso_dumps = []
|
22
|
|
23
|
def migrate(self):
|
24
|
pass
|
25
|
|
26
|
def remove_name_identifier(self, name_identifier):
|
27
|
self.name_identifiers.remove(name_identifier)
|
28
|
if not self.name_identifiers:
|
29
|
self.remove_self()
|
30
|
else:
|
31
|
self.store()
|
32
|
|
33
|
def get_display_name(self):
|
34
|
if self.name:
|
35
|
return self.name
|
36
|
if self.email:
|
37
|
return self.email
|
38
|
return _('Unknown User')
|
39
|
display_name = property(get_display_name)
|
40
|
|
41
|
def __str__(self):
|
42
|
return 'User %s, name : %s, name identifiers : %s, lasso_dumps : %s, token : %s' \
|
43
|
% (self.id, self.name, self.name_identifiers, self.lasso_dumps,
|
44
|
self.identification_token)
|