This repository has been archived on 2025-10-24. You can view files and clone it, but cannot push or open issues or pull requests.
Files
RIS/App/Auth/auth.py

32 lines
1.1 KiB
Python

from flask import request, Blueprint, render_template, session, redirect, url_for
import os
from .auth_route import route
from Database.sql_provider import SQLProvider
import json
sql_provider = SQLProvider(os.path.join(os.path.dirname(__file__), 'sql'))
auth_bp = Blueprint('auth_bp', __name__, template_folder='templates')
db_config_path = os.path.join(os.path.dirname(__file__), os.pardir, 'Database/config.json')
with open(db_config_path) 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 = request.form.to_dict()
print(data)
auth_data = route(config, data, sql_provider, 'auth.sql')
if auth_data.status:
session.update({
'login': auth_data.result[0]['login'],
'role': auth_data.result[0]['role'],
'db_config': config,
'permanent': True
})
return redirect(url_for('index'))
else:
return render_template('error.html', error_message=auth_data.error_message)