from flask_admin import AdminIndexView from flask_security import current_user from flask import flash from flask_admin.contrib.sqla import ModelView from advlabdb.utils import userActiveSemester def adminViewIsAccessible(): return current_user.has_role("admin") class SecureAdminIndexView(AdminIndexView): def is_accessible(self): return adminViewIsAccessible() class SecureModelView(ModelView): can_export = True can_set_page_size = True list_template = "admin_list.html" create_template = "admin_create.html" edit_template = "admin_edit.html" def is_accessible(self): return adminViewIsAccessible()