misc: add $prefix_user_nameid variable (#41463)
This commit is contained in:
parent
500793ee46
commit
4be26e7d16
|
@ -11,6 +11,7 @@ from quixote import cleanup
|
|||
|
||||
from wcs import publisher
|
||||
from wcs import fields
|
||||
from wcs.variables import LazyUser
|
||||
|
||||
from utilities import create_temporary_pub
|
||||
|
||||
|
@ -42,6 +43,25 @@ def test_get_users_with_name_identifier():
|
|||
assert pub.user_class.get_users_with_name_identifier('foo')[0].name == 'Pierre'
|
||||
|
||||
|
||||
def test_user_substitution_variables():
|
||||
pub.user_class.wipe()
|
||||
|
||||
user = pub.user_class()
|
||||
user.name = 'Pierre'
|
||||
user.email = 'test@example.net'
|
||||
user.name_identifiers = ['foo']
|
||||
user.store()
|
||||
|
||||
assert user.get_substitution_variables().get('session_user_display_name') == 'Pierre'
|
||||
assert user.get_substitution_variables().get('session_user_nameid') == 'foo'
|
||||
assert user.get_substitution_variables().get('session_user_email') == 'test@example.net'
|
||||
|
||||
lazy_user = LazyUser(user)
|
||||
assert lazy_user.email == user.email
|
||||
assert lazy_user.nameid == user.name_identifiers[0]
|
||||
assert lazy_user.display_name == user.name
|
||||
|
||||
|
||||
def test_get_users_with_role():
|
||||
pub.user_class.wipe()
|
||||
|
||||
|
|
|
@ -88,6 +88,10 @@ class User(StorableObject):
|
|||
return _('Unknown User')
|
||||
display_name = property(get_display_name)
|
||||
|
||||
@property
|
||||
def nameid(self):
|
||||
return self.name_identifiers[0] if self.name_identifiers else None
|
||||
|
||||
def get_roles(self):
|
||||
return (self.roles or [])
|
||||
|
||||
|
@ -181,6 +185,8 @@ class User(StorableObject):
|
|||
d[prefix + 'user_admin_access'] = self.can_go_in_admin()
|
||||
d[prefix + 'user_backoffice_access'] = self.can_go_in_backoffice()
|
||||
for i, name_identifier in enumerate(self.name_identifiers):
|
||||
if i == 0:
|
||||
d[prefix + 'user_nameid'] = name_identifier
|
||||
d[prefix + 'user_name_identifier_%d' % i] = name_identifier
|
||||
return d
|
||||
|
||||
|
|
|
@ -772,7 +772,7 @@ class LazyUser(object):
|
|||
self._user = user
|
||||
|
||||
def inspect_keys(self):
|
||||
return ['display_name', 'email', 'var']
|
||||
return ['display_name', 'email', 'var', 'nameid']
|
||||
|
||||
@property
|
||||
def display_name(self):
|
||||
|
@ -801,6 +801,10 @@ class LazyUser(object):
|
|||
d[str(i)] = name_identifier
|
||||
return d
|
||||
|
||||
@property
|
||||
def nameid(self):
|
||||
return self._user.nameid
|
||||
|
||||
def __getitem__(self, key):
|
||||
return getattr(self, key)
|
||||
|
||||
|
|
Loading…
Reference in New Issue