From 62d23fef485632274847ef666917d10c11bb0e62 Mon Sep 17 00:00:00 2001 From: Ross Date: Sun, 5 Dec 2021 19:08:24 +0000 Subject: [PATCH] . --- atlas/templates/atlas/base.html | 2 ++ atlas/urls.py | 10 ++++++++ atlas/views.py | 42 ++++++++++++++++++++++++++------- 3 files changed, 46 insertions(+), 8 deletions(-) diff --git a/atlas/templates/atlas/base.html b/atlas/templates/atlas/base.html index c217249c..9650cede 100755 --- a/atlas/templates/atlas/base.html +++ b/atlas/templates/atlas/base.html @@ -20,6 +20,8 @@ Atlas: Cases / Series / Conditions / +Findings / +Structures / Create Case / Create Series {% endif %} diff --git a/atlas/urls.py b/atlas/urls.py index 01496a44..ee02f3ca 100755 --- a/atlas/urls.py +++ b/atlas/urls.py @@ -15,6 +15,16 @@ urlpatterns = [ path("condition//delete", views.ConditionDelete.as_view(), name="condition_delete"), path("condition//update", views.ConditionUpdate.as_view(), name="condition_update"), path("condition//create", views.ConditionCreate.as_view(), name="condition_create"), + path("finding/", views.FindingView.as_view(), name="finding_view"), + path("finding/", views.finding_detail, name="finding_detail"), + path("finding//delete", views.FindingDelete.as_view(), name="finding_delete"), + path("finding//update", views.FindingUpdate.as_view(), name="finding_update"), + path("finding//create", views.FindingCreate.as_view(), name="finding_create"), + path("structure/", views.StructureView.as_view(), name="structure_view"), + path("structure/", views.structure_detail, name="structure_detail"), + path("structure//delete", views.StructureDelete.as_view(), name="structure_delete"), + path("structure//update", views.StructureUpdate.as_view(), name="structure_update"), + path("structure//create", views.StructureCreate.as_view(), name="structure_create"), path("series/", views.series_detail, name="series_detail"), path("series/", views.SeriesView.as_view(), name="series_view"), path("series/", views.series_detail, name="series_detail"), diff --git a/atlas/views.py b/atlas/views.py index 00f50d4e..f19798c1 100755 --- a/atlas/views.py +++ b/atlas/views.py @@ -29,11 +29,13 @@ from django.http import HttpResponseRedirect, HttpResponse from .forms import ( CaseForm, ConditionForm, + FindingForm, SeriesForm, SeriesImageFormSet, SeriesFormSet, SeriesFindingForm, CaseDifferentialFormSet, + StructureForm, ) from .models import ( Case, @@ -46,8 +48,8 @@ from .models import ( SeriesFinding, SeriesImage, ) -from .tables import CaseTable, ConditionTable, SeriesTable -from .filters import AtlasFilter, ConditionFilter, SeriesFilter +from .tables import CaseTable, ConditionTable, FindingTable, SeriesTable, StructureTable +from .filters import AtlasFilter, ConditionFilter, FindingFilter, SeriesFilter, StructureFilter from django_tables2 import SingleTableView, SingleTableMixin from django_filters.views import FilterView @@ -368,15 +370,25 @@ class ConditionCreate(RevisionMixin, LoginRequiredMixin, CreateView): model = Condition form_class = ConditionForm -class ConditionUpdate( +class FindingUpdate( RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView ): - model = Condition - form_class = ConditionForm + model = Finding + form_class = FindingForm -class ConditionCreate(RevisionMixin, LoginRequiredMixin, CreateView): - model = Condition - form_class = ConditionForm +class FindingCreate(RevisionMixin, LoginRequiredMixin, CreateView): + model = Finding + form_class = FindingForm + +class StructureUpdate( + RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView +): + model = Structure + form_class = StructureForm + +class StructureCreate(RevisionMixin, LoginRequiredMixin, CreateView): + model = Structure + form_class = StructureForm class AtlasCreateBase(RevisionMixin, LoginRequiredMixin): model = Case @@ -574,6 +586,20 @@ class ConditionView(LoginRequiredMixin, SingleTableMixin, FilterView): filterset_class = ConditionFilter +class StructureView(LoginRequiredMixin, SingleTableMixin, FilterView): + model = Structure + table_class = StructureTable + template_name = "atlas/view.html" + + filterset_class = StructureFilter + +class FindingView(LoginRequiredMixin, SingleTableMixin, FilterView): + model = Finding + table_class = FindingTable + template_name = "atlas/view.html" + + filterset_class = FindingFilter + @login_required @user_is_author_or_atlas_series_checker