aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/views/admin.py20
-rw-r--r--app/views/main.py2
2 files changed, 21 insertions, 1 deletions
diff --git a/app/views/admin.py b/app/views/admin.py
new file mode 100644
index 0000000..b971a1a
--- /dev/null
+++ b/app/views/admin.py
@@ -0,0 +1,20 @@
+from app import app, login_manager, db
+from flask import render_template, flash,url_for, redirect
+import flask_login
+from app.models import User
+
+from flask_admin import Admin
+from flask_admin.contrib.sqla import ModelView
+
+admin = Admin(app, name="Admin", template_mode="bootstrap4")
+
+class ModelView(ModelView):
+ def is_accessible(self):
+ try:
+ if flask_login.current_user.get_role() == "SUPERUSER":
+ return True
+ return False
+ except AttributeError:
+ return False
+
+admin.add_view(ModelView(User, db.session)) \ No newline at end of file
diff --git a/app/views/main.py b/app/views/main.py
index 4814007..003a46f 100644
--- a/app/views/main.py
+++ b/app/views/main.py
@@ -1,7 +1,7 @@
from app import app
from app.forms.app_forms import MyForm
from flask import render_template, flash
-from app.views import auth, error_pages
+from app.views import auth, error_pages, admin
from app.misc_func import flash_errors
theme = "original"