From af4ea8adc7ca7fd376bb07704254a4bc48e55d3c Mon Sep 17 00:00:00 2001 From: "Lord_Devi (aider)" Date: Mon, 16 Sep 2024 23:24:50 -0400 Subject: [PATCH] feat: Implement delete functionality for individual IDS Data entries --- leads/templates/leads/ids_data.html | 5 ++++- .../templates/leads/ids_data_confirm_delete.html | 15 +++++++++++++++ leads/urls.py | 1 + leads/views.py | 8 ++++++++ 4 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 leads/templates/leads/ids_data_confirm_delete.html diff --git a/leads/templates/leads/ids_data.html b/leads/templates/leads/ids_data.html index f5cb041..693af83 100644 --- a/leads/templates/leads/ids_data.html +++ b/leads/templates/leads/ids_data.html @@ -27,7 +27,10 @@ {{ data.gbp_location_state }} View - Delete +
+ {% csrf_token %} + +
{% empty %} diff --git a/leads/templates/leads/ids_data_confirm_delete.html b/leads/templates/leads/ids_data_confirm_delete.html new file mode 100644 index 0000000..bfea2ad --- /dev/null +++ b/leads/templates/leads/ids_data_confirm_delete.html @@ -0,0 +1,15 @@ +{% extends 'leads/base.html' %} + +{% block title %}Confirm Delete IDS Data{% endblock %} + +{% block content %} +

Confirm Delete IDS Data

+ +
+ {% csrf_token %} + + Cancel +
+{% endblock %} diff --git a/leads/urls.py b/leads/urls.py index e16a7b2..2cb9986 100644 --- a/leads/urls.py +++ b/leads/urls.py @@ -12,4 +12,5 @@ urlpatterns = [ path('data/ids//', views.ids_data_detail, name='ids_data_detail'), path('data/ids/import/', views.ids_data_import, name='ids_data_import'), path('data/ids/delete-all/', views.ids_data_delete_all, name='ids_data_delete_all'), + path('data/ids//delete/', views.ids_data_delete, name='ids_data_delete'), ] diff --git a/leads/views.py b/leads/views.py index 193bcb3..99f3096 100644 --- a/leads/views.py +++ b/leads/views.py @@ -124,3 +124,11 @@ def ids_data_delete_all(request): messages.success(request, 'All IDS Data records have been deleted.') return redirect('ids_data') return render(request, 'leads/ids_data_delete_confirm.html') + +def ids_data_delete(request, pk): + ids_data = get_object_or_404(IDSData, pk=pk) + if request.method == 'POST': + ids_data.delete() + messages.success(request, f'IDS Data record "{ids_data.business_name}" has been deleted.') + return redirect('ids_data') + return render(request, 'leads/ids_data_confirm_delete.html', {'ids_data': ids_data})