From 44f25bdc706a8eb664517eb4ab1f47e6d3c8ba4a Mon Sep 17 00:00:00 2001 From: Joshua Laymon Date: Sun, 31 Aug 2025 03:43:50 +0000 Subject: [PATCH] Update web/core/views.py --- web/core/views.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/web/core/views.py b/web/core/views.py index 540eb7f..a1a3753 100644 --- a/web/core/views.py +++ b/web/core/views.py @@ -12,6 +12,7 @@ from django.views.decorators.http import require_http_methods from django.utils.text import Truncator from django.urls import reverse from django.views.decorators.cache import never_cache +from django.views.decorators.http import require_POST from .forms import ImportForm, EntryForm from .models import Entry @@ -1018,3 +1019,15 @@ def login_attempts(request): cutoff = timezone.now() - timedelta(days=7) attempts = LoginAttempt.objects.filter(timestamp__gte=cutoff).order_by("-timestamp") return render(request, "tools/login_attempts.html", {"attempts": attempts}) + +@login_required +@require_POST +def clear_history(request): + """ + Clear recent searches + recently viewed entries for the CURRENT user. + Keys are specific to your app: recent_searches, recent_entries. + """ + for k in ["recent_searches", "recent_entries"]: + request.session.pop(k, None) + request.session.modified = True + return JsonResponse({"ok": True}) \ No newline at end of file