.
This commit is contained in:
+24
-3
@@ -1,4 +1,5 @@
|
||||
import json
|
||||
from dal import autocomplete
|
||||
from django.shortcuts import render, get_object_or_404, redirect
|
||||
from django import forms
|
||||
|
||||
@@ -6,6 +7,7 @@ from django import forms
|
||||
from django.contrib.auth.decorators import login_required, user_passes_test
|
||||
from django.contrib.auth.models import User
|
||||
from django.core.exceptions import (
|
||||
FieldError,
|
||||
ObjectDoesNotExist,
|
||||
PermissionDenied,
|
||||
ViewDoesNotExist,
|
||||
@@ -34,6 +36,7 @@ from .forms import (
|
||||
)
|
||||
from .models import (
|
||||
Case,
|
||||
Condition,
|
||||
Series,
|
||||
Examination,
|
||||
Finding,
|
||||
@@ -152,17 +155,17 @@ class AtlasDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
model = Case
|
||||
success_url = reverse_lazy("atlas:case_view")
|
||||
|
||||
|
||||
class SeriesFindingDelete(RevisionMixin, PermissionRequiredMixin, DeleteView):
|
||||
permission_required = 'atlas.delete_seriesfinding'
|
||||
permission_required = "atlas.delete_seriesfinding"
|
||||
model = SeriesFinding
|
||||
template_name = "confirm_delete.html"
|
||||
#success_url = reverse_lazy("atlas:case_view")
|
||||
# success_url = reverse_lazy("atlas:case_view")
|
||||
|
||||
def get_success_url(self):
|
||||
pk = self.kwargs["pk"]
|
||||
series_id = get_object_or_404(SeriesFinding, pk=pk).series.id
|
||||
return reverse("atlas:series_detail", kwargs={"pk": series_id})
|
||||
|
||||
|
||||
|
||||
class SeriesDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
@@ -558,3 +561,21 @@ def create_series_findings(request):
|
||||
|
||||
return JsonResponse({"success": False})
|
||||
return render(request, "create_post.html", {"posts": posts})
|
||||
|
||||
|
||||
class ConditionAutocomplete(autocomplete.Select2QuerySetView):
|
||||
def get_queryset(self):
|
||||
# Don't forget to filter out results depending on the visitor !
|
||||
if not self.request.user.is_authenticated:
|
||||
return Condition.objects.none()
|
||||
|
||||
qs = Condition.objects.all()
|
||||
|
||||
if self.q:
|
||||
# This raises a fielderror which breaks creating a new item if not caught
|
||||
try:
|
||||
qs = qs.filter(name__istartswith=self.q)
|
||||
except FieldError:
|
||||
return Condition.objects.none()
|
||||
|
||||
return qs
|
||||
|
||||
Reference in New Issue
Block a user