From 876a4cd0efe44c70383e71b66be0b8f432f03748 Mon Sep 17 00:00:00 2001
From: TheJoeCoder <joe@radialbog9.uk>
Date: Tue, 2 Jul 2024 22:23:23 +0100
Subject: [PATCH] Add user details to search

---
 librarian/views.py | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/librarian/views.py b/librarian/views.py
index 3974035..7d132b5 100644
--- a/librarian/views.py
+++ b/librarian/views.py
@@ -1,7 +1,7 @@
 from django.contrib.admin.views.decorators import staff_member_required
 from django.contrib.auth.models import User
-from django.db.models import Q
 from django.shortcuts import render, get_object_or_404, redirect
+from django.urls import reverse
 from django.utils.http import urlencode
 from django.utils import timezone
 from django.views.decorators.http import require_POST
@@ -607,6 +607,18 @@ def search_all(request):
             results.append(Author.objects.get(id=hit.meta.id))
         elif hit.meta.index == "publishers":
             results.append(Publisher.objects.get(id=hit.meta.id))
+        elif hit.meta.index == "users":
+            u = User.objects.get(id=hit.meta.id)
+            results.append({
+                "librarian_search_template": "search_display/librarian/types/user.html",
+                "librarian_details_url": reverse("librarian:user_detail", args=[u.id]),
+                "id": u.id,
+                "username": u.username,
+                "first_name": u.first_name,
+                "last_name": u.last_name,
+                "email": u.email,
+                "card_number": u.profile.card_number
+            })
 
     # Search results
     return render(request, "librarian/search_results.html", {"results": results, "query": query})
-- 
GitLab