diff --git a/web/core/views.py b/web/core/views.py index a1a3753..8b44900 100644 --- a/web/core/views.py +++ b/web/core/views.py @@ -1023,11 +1023,22 @@ def login_attempts(request): @login_required @require_POST def clear_history(request): + """ + Clear all 'recents' for the CURRENT user. + We clear the two app-specific keys AND a few common variants in case + your templates or JS ever used alternates. """ - 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"]: + KEYS = [ + "recent_searches", # your app’s key for searches + "recent_entries", # your app’s key for viewed entries + # Defensive extras (ignored if unused): + "recent_viewed", "recently_viewed", "recent_results", + "recentSearches", "recentEntries", + ] + cleared = {} + for k in KEYS: + existed = k in request.session request.session.pop(k, None) + cleared[k] = bool(existed) request.session.modified = True - return JsonResponse({"ok": True}) \ No newline at end of file + return JsonResponse({"ok": True, "cleared": cleared}) \ No newline at end of file