# Remove View refactoring
* refactors remove view for kom, eiv, oek and ema * introduces BaseRemoveModalFormView * moves html blocking logic from BaseModalForm into BaseModalFormView
This commit is contained in:
@@ -14,9 +14,8 @@ from intervention.views.deduction import NewInterventionDeductionView, EditInter
|
||||
RemoveInterventionDeductionView
|
||||
from intervention.views.document import NewInterventionDocumentView, GetInterventionDocumentView, \
|
||||
RemoveInterventionDocumentView, EditInterventionDocumentView
|
||||
from intervention.views.intervention import remove_view, \
|
||||
InterventionIndexView, InterventionIdentifierGeneratorView, InterventionDetailView, NewInterventionFormView, \
|
||||
EditInterventionFormView
|
||||
from intervention.views.intervention import InterventionIndexView, InterventionIdentifierGeneratorView, \
|
||||
InterventionDetailView, NewInterventionFormView, EditInterventionFormView, RemoveInterventionView
|
||||
from intervention.views.log import InterventionLogView
|
||||
from intervention.views.record import InterventionRecordView
|
||||
from intervention.views.report import InterventionReportView
|
||||
@@ -33,7 +32,7 @@ urlpatterns = [
|
||||
path('<id>', InterventionDetailView.as_view(), name='detail'),
|
||||
path('<id>/log', InterventionLogView.as_view(), name='log'),
|
||||
path('<id>/edit', EditInterventionFormView.as_view(), name='edit'),
|
||||
path('<id>/remove', remove_view, name='remove'),
|
||||
path('<id>/remove', RemoveInterventionView.as_view(), name='remove'),
|
||||
path('<id>/share/<token>', InterventionShareByTokenView.as_view(), name='share-token'),
|
||||
path('<id>/share', InterventionShareFormView.as_view(), name='share-form'),
|
||||
path('<id>/check', InterventionCheckView.as_view(), name='check'),
|
||||
|
||||
@@ -10,22 +10,21 @@ from django.contrib.auth.decorators import login_required
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.http import HttpRequest
|
||||
from django.shortcuts import get_object_or_404, render, redirect
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from intervention.forms.intervention import EditInterventionForm, NewInterventionForm
|
||||
from intervention.models import Intervention
|
||||
from intervention.tables import InterventionTable
|
||||
from konova.contexts import BaseContext
|
||||
from konova.decorators import default_group_required, shared_access_required, login_required_modal
|
||||
from konova.decorators import default_group_required, shared_access_required
|
||||
from konova.forms import SimpleGeomForm
|
||||
from konova.forms.modals import RemoveModalForm
|
||||
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
||||
from konova.utils.message_templates import DATA_CHECKED_PREVIOUSLY_TEMPLATE, RECORDED_BLOCKS_EDIT, \
|
||||
CHECK_STATE_RESET, FORM_INVALID, GEOMETRY_SIMPLIFIED, GEOMETRIES_IGNORED_TEMPLATE
|
||||
from konova.views.base import BaseIndexView, BaseIdentifierGeneratorView, BaseNewSpatialLocatedObjectFormView, \
|
||||
BaseEditSpatialLocatedObjectFormView
|
||||
from konova.views.detail import BaseDetailView
|
||||
from konova.views.remove import BaseRemoveModalFormView
|
||||
|
||||
|
||||
class InterventionIndexView(LoginRequiredMixin, BaseIndexView):
|
||||
@@ -181,26 +180,6 @@ def edit_view(request: HttpRequest, id: str):
|
||||
context = BaseContext(request, context).context
|
||||
return render(request, template, context)
|
||||
|
||||
|
||||
@login_required_modal
|
||||
@login_required
|
||||
@default_group_required
|
||||
@shared_access_required(Intervention, "id")
|
||||
def remove_view(request: HttpRequest, id: str):
|
||||
""" Renders a remove view for this intervention
|
||||
|
||||
Args:
|
||||
request (HttpRequest): The incoming request
|
||||
id (str): The uuid id as string
|
||||
|
||||
Returns:
|
||||
|
||||
"""
|
||||
obj = Intervention.objects.get(id=id)
|
||||
identifier = obj.identifier
|
||||
form = RemoveModalForm(request.POST or None, instance=obj, request=request)
|
||||
return form.process_request(
|
||||
request,
|
||||
_("{} removed").format(identifier),
|
||||
redirect_url=reverse("intervention:index")
|
||||
)
|
||||
class RemoveInterventionView(LoginRequiredMixin, BaseRemoveModalFormView):
|
||||
_MODEL_CLS = Intervention
|
||||
_REDIRECT_URL = "intervention:index"
|
||||
|
||||
Reference in New Issue
Block a user