.
This commit is contained in:
+29
-6
@@ -49,7 +49,13 @@ from .models import (
|
||||
SeriesImage,
|
||||
)
|
||||
from .tables import CaseTable, ConditionTable, FindingTable, SeriesTable, StructureTable
|
||||
from .filters import AtlasFilter, ConditionFilter, FindingFilter, SeriesFilter, StructureFilter
|
||||
from .filters import (
|
||||
AtlasFilter,
|
||||
ConditionFilter,
|
||||
FindingFilter,
|
||||
SeriesFilter,
|
||||
StructureFilter,
|
||||
)
|
||||
|
||||
from django_tables2 import SingleTableView, SingleTableMixin
|
||||
from django_filters.views import FilterView
|
||||
@@ -141,6 +147,7 @@ def series_detail(request, pk, finding_pk=None):
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_checker
|
||||
def condition_detail(request, pk):
|
||||
@@ -155,6 +162,7 @@ def condition_detail(request, pk):
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_checker
|
||||
def structure_detail(request, pk):
|
||||
@@ -169,6 +177,7 @@ def structure_detail(request, pk):
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_checker
|
||||
def finding_detail(request, pk):
|
||||
@@ -183,6 +192,7 @@ def finding_detail(request, pk):
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_author_or_atlas_checker
|
||||
def author_detail(request, pk):
|
||||
@@ -204,9 +214,10 @@ def author_list(request):
|
||||
return render(request, "atlas/author_list.html", {"authors": authors})
|
||||
|
||||
|
||||
class AtlasDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
class CaseDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
model = Case
|
||||
success_url = reverse_lazy("atlas:case_view")
|
||||
template_name = "confirm_delete.html"
|
||||
|
||||
|
||||
class SeriesFindingDelete(RevisionMixin, PermissionRequiredMixin, DeleteView):
|
||||
@@ -226,21 +237,25 @@ class SeriesDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
template_name = "confirm_delete.html"
|
||||
success_url = reverse_lazy("atlas:series_view")
|
||||
|
||||
|
||||
class ConditionDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
model = Condition
|
||||
template_name = "confirm_delete.html"
|
||||
success_url = reverse_lazy("atlas:condition_view")
|
||||
|
||||
|
||||
class FindingDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
model = Finding
|
||||
template_name = "confirm_delete.html"
|
||||
success_url = reverse_lazy("atlas:finding_view")
|
||||
|
||||
|
||||
class StructureDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
model = Structure
|
||||
template_name = "confirm_delete.html"
|
||||
success_url = reverse_lazy("atlas:structure_view")
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_author_or_atlas_checker
|
||||
def case_clone(request, pk):
|
||||
@@ -366,30 +381,36 @@ class ConditionUpdate(
|
||||
model = Condition
|
||||
form_class = ConditionForm
|
||||
|
||||
|
||||
class ConditionCreate(RevisionMixin, LoginRequiredMixin, CreateView):
|
||||
model = Condition
|
||||
form_class = ConditionForm
|
||||
|
||||
|
||||
class FindingUpdate(
|
||||
RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView
|
||||
):
|
||||
model = Finding
|
||||
form_class = FindingForm
|
||||
|
||||
|
||||
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
|
||||
form_class = CaseForm
|
||||
@@ -579,6 +600,7 @@ class SeriesView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||
|
||||
filterset_class = SeriesFilter
|
||||
|
||||
|
||||
class ConditionView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||
model = Condition
|
||||
table_class = ConditionTable
|
||||
@@ -586,6 +608,7 @@ class ConditionView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||
|
||||
filterset_class = ConditionFilter
|
||||
|
||||
|
||||
class StructureView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||
model = Structure
|
||||
table_class = StructureTable
|
||||
@@ -593,6 +616,7 @@ class StructureView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||
|
||||
filterset_class = StructureFilter
|
||||
|
||||
|
||||
class FindingView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||
model = Finding
|
||||
table_class = FindingTable
|
||||
@@ -679,9 +703,9 @@ def create_series_findings(request):
|
||||
if series_finding_id > 0:
|
||||
sf = get_object_or_404(SeriesFinding, pk=series_finding_id)
|
||||
sf.series = series
|
||||
sf.description=description
|
||||
sf.annotation_json=annotation_json
|
||||
sf.viewport_json=viewport_json
|
||||
sf.description = description
|
||||
sf.annotation_json = annotation_json
|
||||
sf.viewport_json = viewport_json
|
||||
else:
|
||||
sf = SeriesFinding.objects.create(
|
||||
series=series,
|
||||
@@ -690,7 +714,6 @@ def create_series_findings(request):
|
||||
viewport_json=viewport_json,
|
||||
)
|
||||
|
||||
|
||||
sf.findings.set(findings)
|
||||
sf.structures.set(structures)
|
||||
sf.save()
|
||||
|
||||
Reference in New Issue
Block a user