26 lines
1.0 KiB
Python
26 lines
1.0 KiB
Python
from flask import request, Blueprint, render_template, session, current_app,redirect, url_for
|
|
import os
|
|
from .auth_route import route
|
|
from Database.sql_provider import SQLProvider
|
|
|
|
sql_provider = SQLProvider(os.path.join(os.path.dirname(__file__), 'sql'))
|
|
auth_bp = Blueprint('auth_bp', __name__, template_folder='templates')
|
|
|
|
@auth_bp.route('/', methods=['GET', 'POST'])
|
|
def auth():
|
|
if request.method == 'GET':
|
|
return render_template('auth.html')
|
|
else:
|
|
data = request.form.to_dict()
|
|
auth_data = route(current_app.config['db_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': current_app.config['db_config'],
|
|
'permanent': True
|
|
})
|
|
return redirect(url_for('index'))
|
|
else:
|
|
return render_template('error.html', error_message=auth_data.error_message)
|