Files
fet2020/fet2020/tasks/admin.py
2023-01-09 16:34:02 +00:00

132 lines
3.3 KiB
Python
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from django.contrib import admin
from .forms import DocumentInlineForm
from .forms import TaskAdminForm
from .forms import TaskListAdminForm
from .models import Document
from .models import Task
from .models import TaskList
class DocumentInline(admin.TabularInline):
form = DocumentInlineForm
model = Document
extra = 0
verbose_name = "Dokument"
verbose_name_plural = "Do­ku­men­ten­samm­lung"
class TaskListAdmin(admin.ModelAdmin):
form = TaskListAdminForm
model = TaskList
fieldsets = (
(
None,
{
"fields": (
"name",
"shortterm",
"slug",
"users",
)
},
),
)
readonly_fields = ("slug",)
def add_view(self, request, form_url="", extra_context=None):
extra_context = extra_context or {}
extra_context["help_text"] = "Fette Schriften sind Pflichtfelder."
return super().add_view(
request,
form_url,
extra_context=extra_context,
)
def change_view(self, request, object_id, form_url="", extra_context=None):
extra_context = extra_context or {}
extra_context["help_text"] = "Fette Schriften sind Pflichtfelder."
return super().change_view(
request,
object_id,
form_url,
extra_context=extra_context,
)
class TaskAdmin(admin.ModelAdmin):
form = TaskAdminForm
model = Task
inlines = (DocumentInline,)
fieldsets = (
(
None,
{
"fields": (
"title",
"task_list",
"note",
"priority",
),
},
),
(
"Fälligkeit",
{
"fields": (
"due_date",
"assigned_to",
),
},
),
(
"Abgeschlossen",
{
"fields": (
"completed_date",
"completed",
),
},
),
)
list_display = [
"title",
"task_list",
"assigned_to",
"due_date",
"completed",
"priority",
]
list_filter = ("task_list",)
search_fields = ("title",)
def add_view(self, request, form_url="", extra_context=None):
extra_context = extra_context or {}
extra_context["help_text"] = "Fette Schriften sind Pflichtfelder."
return super().add_view(
request,
form_url,
extra_context=extra_context,
)
def change_view(self, request, object_id, form_url="", extra_context=None):
extra_context = extra_context or {}
extra_context["help_text"] = "Fette Schriften sind Pflichtfelder."
return super().change_view(
request,
object_id,
form_url,
extra_context=extra_context,
)
def save_model(self, request, obj, form, change):
obj.created_by = request.user
super().save_model(request, obj, form, change)
admin.site.register(TaskList, TaskListAdmin)
admin.site.register(Task, TaskAdmin)