Refactored role methods

This commit is contained in:
0mar
2021-03-29 21:26:34 +02:00
parent 036a4eb934
commit 1515747b1e
12 changed files with 148 additions and 138 deletions

View File

@@ -39,7 +39,8 @@ from sqlalchemy.types import Text
from sqlalchemy.types import TypeDecorator
from tornado.log import app_log
from .roles import add_role
from .roles import assign_default_roles
from .roles import create_role
from .roles import get_default_roles
from .roles import update_roles
from .utils import compare_token
@@ -621,8 +622,12 @@ class APIToken(Hashed, Base):
if not token_role:
default_roles = get_default_roles()
for role in default_roles:
add_role(db, role)
update_roles(db, obj=orm_token, kind='tokens', roles=roles)
create_role(db, role)
if roles:
update_roles(db, entity=orm_token, roles=roles)
else:
assign_default_roles(db, entity=orm_token)
db.commit()
return token