aboutsummaryrefslogtreecommitdiff
path: root/server/szurubooru/func
diff options
context:
space:
mode:
authorrr-2016-05-08 16:59:25 +0200
committerrr-2016-05-08 16:59:25 +0200
commit198cb0af3e18bb8b526199d309d50df764e36552 (patch)
treea7127d07d206ef8aa9ea5fc3d975fc4f8094c31d /server/szurubooru/func
parent58964bcdc9cfeccd72a017fdbd2f4ffc8ba7b6f3 (diff)
server/users: hardcode available ranks
Diffstat (limited to 'server/szurubooru/func')
-rw-r--r--server/szurubooru/func/auth.py8
-rw-r--r--server/szurubooru/func/users.py12
2 files changed, 8 insertions, 12 deletions
diff --git a/server/szurubooru/func/auth.py b/server/szurubooru/func/auth.py
index 8a5edcb..9134a6c 100644
--- a/server/szurubooru/func/auth.py
+++ b/server/szurubooru/func/auth.py
@@ -1,7 +1,6 @@
import hashlib
import random
-from szurubooru import config
-from szurubooru import errors
+from szurubooru import config, db, errors
def get_password_hash(salt, password):
''' Retrieve new-style password hash. '''
@@ -37,11 +36,10 @@ def is_valid_password(user, password):
return valid_hash in possible_hashes
def has_privilege(user, privilege_name):
- all_ranks = config.config['ranks']
assert privilege_name in config.config['privileges']
- assert user.rank in all_ranks
+ assert user.rank in db.User.ALL_RANKS
minimal_rank = config.config['privileges'][privilege_name]
- good_ranks = all_ranks[all_ranks.index(minimal_rank):]
+ good_ranks = db.User.ALL_RANKS[db.User.ALL_RANKS.index(minimal_rank):]
return user.rank in good_ranks
def verify_privilege(user, privilege_name):
diff --git a/server/szurubooru/func/users.py b/server/szurubooru/func/users.py
index 2e17e63..e8eefe3 100644
--- a/server/szurubooru/func/users.py
+++ b/server/szurubooru/func/users.py
@@ -19,7 +19,6 @@ def serialize_user(user, authenticated_user, force_show_email=False):
ret = {
'name': user.name,
'rank': user.rank,
- 'rankName': config.config['rank_names'].get(user.rank, 'Unknown'),
'creationTime': user.creation_time,
'lastLoginTime': user.last_login_time,
'avatarStyle': user.avatar_style,
@@ -81,7 +80,7 @@ def create_user(name, password, email, auth_user):
if get_user_count() > 0:
user.rank = config.config['default_rank']
else:
- user.rank = 'admin'
+ user.rank = db.User.RANK_ADMINISTRATOR
user.creation_time = datetime.datetime.now()
user.avatar_style = db.User.AVATAR_GRAVATAR
return user
@@ -126,12 +125,11 @@ def update_user_rank(user, rank, authenticated_user):
if not rank:
raise InvalidRankError('Rank cannot be empty.')
rank = rank.strip()
- available_ranks = config.config['ranks']
- if not rank in available_ranks:
+ if not rank in db.User.ALL_RANKS:
raise InvalidRankError(
- 'Rank %r is invalid. Valid ranks: %r' % (rank, available_ranks))
- if available_ranks.index(authenticated_user.rank) \
- < available_ranks.index(rank) and get_user_count() > 0:
+ 'Rank %r is invalid. Valid ranks: %r' % (rank, db.User.ALL_RANKS))
+ if db.User.ALL_RANKS.index(authenticated_user.rank) \
+ < db.User.ALL_RANKS.index(rank) and get_user_count() > 0:
raise errors.AuthError('Trying to set higher rank than your own.')
user.rank = rank

© 2015 - 2026 Jakob L. Kreuze