Pack of changes (auth and requests)

This commit is contained in:
Anton Kamalov
2024-10-22 21:48:18 +03:00
parent d1f513e106
commit c5bd8c03e4
10 changed files with 101 additions and 64 deletions

View File

@@ -1,28 +1,15 @@
from flask import request, Blueprint, render_template, session, redirect, url_for
from os import path
from db.sql_provider import SQLProvider
from db.select import select_list
import json
from dataclasses import dataclass
from Database.select import select_list
@dataclass
class InfoRespronse:
result: tuple
error_message: str
status: bool
sql_provider = SQLProvider(path.join(path.dirname(__file__), 'sql'))
auth_bp = Blueprint('auth_bp', __name__, template_folder='templates')
with open(path.join(path.dirname(__file__), 'config.json')) as f:
config = json.load(f)
@auth_bp.route('/', methods=['GET', 'POST'])
def auth():
if request.method == 'GET':
return render_template('auth.html')
else:
data = dict(request.form)
print(data)
result = select_list(config, sql_provider.get('auth.sql', data))
if result[1]:
session['user_id'] = result[1][0]['user_ID']
session['role'] = result[1][0]['role']
session['db_config'] = config
session.permanent = True
return redirect(url_for('index'))
else:
return 'Неправильный логин или пароль'
def route(db_config, input_data, sql_provider, name) -> InfoRespronse:
_sql = sql_provider.get(name, input_data)
print("sql = ", _sql)
result = select_list(db_config, _sql)
if result is None:
return InfoRespronse(result, error_message = 'Ошибка на этапе авторизации', status=False)
return InfoRespronse(result, error_message='', status=True)