Added tenant information to the session...
This commit is contained in:
@@ -2,6 +2,7 @@ import logging
|
||||
import os
|
||||
from flask import Flask
|
||||
from flask_security import SQLAlchemyUserDatastore
|
||||
from flask_security.signals import user_authenticated
|
||||
from werkzeug.middleware.proxy_fix import ProxyFix
|
||||
import logging.config
|
||||
|
||||
@@ -9,9 +10,7 @@ from .extensions import db, migrate, bootstrap, security, mail, login_manager
|
||||
from .models.user import User, Tenant, Role
|
||||
from .models.document import Document, DocumentLanguage, DocumentVersion
|
||||
from .logging_config import LOGGING
|
||||
# from .context_processors import inject_user
|
||||
|
||||
# Create app
|
||||
from .utils.security import set_tenant_session_data
|
||||
|
||||
|
||||
def create_app(config_file=None):
|
||||
@@ -33,8 +32,7 @@ def create_app(config_file=None):
|
||||
# Setup Flask-Security-Too
|
||||
user_datastore = SQLAlchemyUserDatastore(db, User, Role)
|
||||
security.init_app(app, user_datastore)
|
||||
|
||||
# app.context_processor(inject_user)
|
||||
user_authenticated.connect(set_tenant_session_data, app)
|
||||
|
||||
# Register Blueprints
|
||||
register_blueprints(app)
|
||||
@@ -45,13 +43,6 @@ def create_app(config_file=None):
|
||||
mail_logger.setLevel(logging.DEBUG)
|
||||
security_logger = logging.getLogger('flask_security')
|
||||
security_logger.setLevel(logging.DEBUG)
|
||||
# with app.app_context():
|
||||
# mail.send_mail(
|
||||
# subject="Dit is een debugging test",
|
||||
# message="Die wordt enkel verzonden als de app in debug mode staat",
|
||||
# from_email="eveai_super@flow-it.net",
|
||||
# recipient_list=["eveai_super@flow-it.net"],
|
||||
# )
|
||||
|
||||
# Register API
|
||||
register_api(app)
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
from flask_security import current_user
|
||||
|
||||
|
||||
# def inject_user():
|
||||
# if current_user:
|
||||
# print("Injecting current_user: ", current_user)
|
||||
# else:
|
||||
# print("No user to inject")
|
||||
# return {'current_user': current_user}
|
||||
8
eveai_app/utils/security.py
Normal file
8
eveai_app/utils/security.py
Normal file
@@ -0,0 +1,8 @@
|
||||
from flask import session
|
||||
from ..models.user import User, Tenant
|
||||
|
||||
|
||||
# Definition of Trigger Handlers
|
||||
def set_tenant_session_data(sender, user):
|
||||
tenant = Tenant.query.filter_by(id=user.tenant_id).first()
|
||||
session['tenant'] = tenant
|
||||
@@ -179,7 +179,8 @@ def select_tenant():
|
||||
@roles_required('Super User')
|
||||
def handle_tenant_selection():
|
||||
tenant_id = request.form['tenant_id']
|
||||
session['tenant_id'] = request.form['tenant_id']
|
||||
the_tenant = Tenant.query.get(tenant_id)
|
||||
session['tenant'] = the_tenant
|
||||
action = request.form['action']
|
||||
|
||||
if action == 'view_users':
|
||||
|
||||
Reference in New Issue
Block a user