service, readme & bug fixes in TX start logic
This commit is contained in:
@@ -29,6 +29,8 @@ def get_app():
|
||||
from app._tools.database import DataManager
|
||||
from app._tools.database import SessionManager
|
||||
DataManager.init_table()
|
||||
DataManager.check_admins()
|
||||
SessionManager.init_table()
|
||||
|
||||
|
||||
return app
|
||||
@@ -4,12 +4,15 @@ import json
|
||||
|
||||
from app._tools.models.user import User
|
||||
from app._tools.models.session import Session
|
||||
from app._tools import passhash as Hash
|
||||
|
||||
from app.config import _USER_DATABASE as U_DB_PATH
|
||||
from app.config import _TOKEN_DATABASE as T_DB_PATH
|
||||
from app.config import _SERVER_CONFIG as S_CFG_PATH
|
||||
from app.config import _SCHEMA_USERS as SCHEMA_USERS
|
||||
from app.config import _SCHEMA_TOKENS as SCHEMA_TOKENS
|
||||
from app.config import _SUPER_ADMINS as SUPER_ADMINS
|
||||
from app.config import _SALT as SALT
|
||||
|
||||
class ConnectManager:
|
||||
def __init__(self, db_file : str):
|
||||
@@ -96,6 +99,16 @@ class DataManager:
|
||||
c_man = ConnectManager(U_DB_PATH)
|
||||
c_man.execute(SCHEMA_USERS, close_connection = False)
|
||||
c_man.execute("VACUUM;")
|
||||
def check_admins():
|
||||
for k in SUPER_ADMINS:
|
||||
if DataManager.get_user_by_name(k) == None:
|
||||
DataManager.add_user(
|
||||
k,
|
||||
"$root$",
|
||||
"Super Admin",
|
||||
Hash.hashPassword(k, SALT)
|
||||
)
|
||||
print(f"Create super admin {k} with password {k}")
|
||||
def get_user_by_name(username : str) -> User:
|
||||
c_man = ConnectManager(U_DB_PATH)
|
||||
data = c_man.execute(
|
||||
|
||||
@@ -8,7 +8,7 @@ _USER_DATABASE = "databases/users.db" #default
|
||||
_TOKEN_DATABASE = "databases/tokens.db" #default
|
||||
_SERVER_CONFIG = "server-tx.json" #default
|
||||
_SALT = '$2b$12$DE09JKsqy6Ii/zAxEAA5n.' #edit
|
||||
_SECRET_SESSION_KEY = "fpmi_cup_event_2025_by_MMCFPMI_developed_by_gallahad_ru_Welcomeee!!!" #edit
|
||||
_SECRET_SESSION_KEY = "GAZAKBAYEV-AHMET-PROJECT" #edit
|
||||
_SUPER_ADMINS = ( #edit
|
||||
"god"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user