|
1 | 1 | from flask_admin import Admin |
2 | 2 | from flask_admin.menu import MenuLink |
3 | 3 |
|
| 4 | +from FlaskRTBCTF.admin.views import ( |
| 5 | + BaseModelView, |
| 6 | + UserAdminView, |
| 7 | + MachineAdminView, |
| 8 | + NotificationAdminView, |
| 9 | + ChallengeAdminView, |
| 10 | + UserChallengeAdminView, |
| 11 | + UserMachineAdminView, |
| 12 | +) |
| 13 | + |
| 14 | +from FlaskRTBCTF.users.models import User, Logs |
| 15 | +from FlaskRTBCTF.main.models import Notification |
| 16 | +from FlaskRTBCTF.ctf.models import ( |
| 17 | + Machine, |
| 18 | + Challenge, |
| 19 | + Tag, |
| 20 | + Category, |
| 21 | + UserChallenge, |
| 22 | + UserMachine, |
| 23 | +) |
| 24 | +from .models import db |
4 | 25 |
|
5 | 26 | admin_manager = Admin(template_mode="bootstrap3") |
6 | 27 | admin_manager.add_link(MenuLink(name="CTF Setup", url="/setup")) |
7 | 28 | admin_manager.add_link(MenuLink(name="Go Back", url="/")) |
| 29 | + |
| 30 | +# Add model views for admin control |
| 31 | +admin_manager.add_view(NotificationAdminView(Notification, db.session)) |
| 32 | +admin_manager.add_view(UserAdminView(User, db.session, category="Users")) |
| 33 | +admin_manager.add_view(BaseModelView(Logs, db.session, category="Users")) |
| 34 | +admin_manager.add_view(ChallengeAdminView(Challenge, db.session, category="Challenges")) |
| 35 | +admin_manager.add_view( |
| 36 | + UserChallengeAdminView(UserChallenge, db.session, category="Challenges") |
| 37 | +) |
| 38 | +admin_manager.add_view(BaseModelView(Category, db.session, category="Challenges")) |
| 39 | +admin_manager.add_view(BaseModelView(Tag, db.session, category="Challenges")) |
| 40 | +admin_manager.add_view(MachineAdminView(Machine, db.session, category="Machines")) |
| 41 | +admin_manager.add_view( |
| 42 | + UserMachineAdminView(UserMachine, db.session, category="Machines") |
| 43 | +) |
0 commit comments