forked from DefectDojo/django-DefectDojo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadmin.py
93 lines (66 loc) · 1.97 KB
/
admin.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
from auditlog.models import LogEntry
from django.contrib import admin
from polymorphic.admin import PolymorphicParentModelAdmin, PolymorphicChildModelAdmin
from dojo.models import Question, TextQuestion, ChoiceQuestion, Choice, \
Answer, TextAnswer, ChoiceAnswer, Engagement_Survey, Answered_Survey
admin.site.unregister(LogEntry)
# ==============================
# Defect Dojo Engaegment Surveys
# ==============================
class QuestionChildAdmin(PolymorphicChildModelAdmin):
"""
Base admin class for all child models of Question
"""
base_model = Question
class TextQuestionAdmin(QuestionChildAdmin):
"""
ModelAdmin for a TextQuestion
"""
class ChoiceQuestionAdmin(QuestionChildAdmin):
"""
ModelAdmin for a ChoiceQuestion
"""
class QuestionParentAdmin(PolymorphicParentModelAdmin):
"""
Question parent model admin
"""
base_model = Question
child_models = (
TextQuestion,
ChoiceQuestion
)
admin.site.register(TextQuestion, TextQuestionAdmin)
admin.site.register(ChoiceQuestion, ChoiceQuestionAdmin)
admin.site.register(Question, QuestionParentAdmin)
admin.site.register(Choice)
class AnswerChildAdmin(PolymorphicChildModelAdmin):
"""
Base admin class for all child Answer models
"""
base_model = Answer
class TextAnswerAdmin(AnswerChildAdmin):
"""
ModelAdmin for TextAnswer
"""
class ChoiceAnswerAdmin(AnswerChildAdmin):
"""
ModelAdmin for ChoiceAnswer
"""
class AnswerParentAdmin(PolymorphicParentModelAdmin):
"""
The parent model admin for answer
"""
list_display = (
'answered_survey',
'question',
)
base_model = Answer
child_models = (
TextAnswer,
ChoiceAnswer,
)
admin.site.register(TextAnswer, TextAnswerAdmin)
admin.site.register(ChoiceAnswer, ChoiceAnswerAdmin)
admin.site.register(Answer, AnswerParentAdmin)
admin.site.register(Engagement_Survey)
admin.site.register(Answered_Survey)