27 lines
616 B
Python
27 lines
616 B
Python
# scopes.storage.user
|
|
|
|
from scopes.storage.common import registerContainerClass
|
|
from scopes.storage import concept
|
|
|
|
class User(concept.Concept):
|
|
|
|
headFields = ('name', 'login')
|
|
prefix = 'user'
|
|
|
|
@staticmethod
|
|
def prepareData(data):
|
|
from scopes.api.auth.user import hashPassword
|
|
data = concept.Concept.prepareData(data)
|
|
pw = data.pop('password', None)
|
|
if pw:
|
|
data['pw_hash'] = hashPassword(pw)
|
|
return data
|
|
|
|
|
|
@registerContainerClass
|
|
class Users(concept.Concepts):
|
|
|
|
itemFactory = User
|
|
indexes = [('name',), ('login',)]
|
|
tableName = 'users'
|
|
|