feat: Implement session-based approach for handling selected IDs

This commit is contained in:
Lord_Devi 2024-09-19 22:59:33 -04:00
parent 13c8500352
commit a2573a14fa
2 changed files with 8 additions and 5 deletions

View file

@ -248,10 +248,10 @@
<ul class="pagination justify-content-center">
{% if page_obj.has_previous %}
<li class="page-item">
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page=1&selected_ids={{ selected_ids|join:',' }}">&laquo; First</a>
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page=1">&laquo; First</a>
</li>
<li class="page-item">
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page={{ page_obj.previous_page_number }}&selected_ids={{ selected_ids|join:',' }}">Previous</a>
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page={{ page_obj.previous_page_number }}">Previous</a>
</li>
{% endif %}
@ -261,10 +261,10 @@
{% if page_obj.has_next %}
<li class="page-item">
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page={{ page_obj.next_page_number }}&selected_ids={{ selected_ids|join:',' }}">Next</a>
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page={{ page_obj.next_page_number }}">Next</a>
</li>
<li class="page-item">
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page={{ page_obj.paginator.num_pages }}&selected_ids={{ selected_ids|join:',' }}">Last &raquo;</a>
<a class="page-link" href="?{% if request.GET.urlencode %}{{ request.GET.urlencode }}&{% endif %}page={{ page_obj.paginator.num_pages }}">Last &raquo;</a>
</li>
{% endif %}
</ul>

View file

@ -65,7 +65,10 @@ def data_sources(request):
return render(request, 'leads/data_sources.html')
def ids_data(request):
selected_ids = request.GET.getlist('selected_ids', [])
selected_ids = request.session.get('selected_ids', [])
if request.method == 'POST':
selected_ids = request.POST.getlist('selected_ids', [])
request.session['selected_ids'] = selected_ids
categories = request.GET.getlist('category')
municipalities = request.GET.getlist('municipality')
states = request.GET.getlist('state')