From 90dee43a322b1d8c62a14913ac26018f42e3f92e Mon Sep 17 00:00:00 2001
From: Hangzhi <hangzhi@protonmail.com>
Date: Wed, 22 Apr 2020 17:50:30 +0200
Subject: [PATCH] Fix search field flickering bug and hide it if user has no
 search permission

---
 aleksis/core/templates/core/base.html | 5 +++--
 aleksis/core/views.py                 | 1 -
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/aleksis/core/templates/core/base.html b/aleksis/core/templates/core/base.html
index fe5365577..1aaaf85ca 100644
--- a/aleksis/core/templates/core/base.html
+++ b/aleksis/core/templates/core/base.html
@@ -1,7 +1,7 @@
 {# -*- engine:django -*- #}
 
 
-{% load i18n menu_generator static sass_tags any_js pwa %}
+{% load i18n menu_generator static sass_tags any_js pwa rules %}
 
 
 <!DOCTYPE html>
@@ -71,7 +71,8 @@
         </object>
       </a>
     </li>
-    {% if user.is_authenticated %}
+    {% has_perm 'core.search' user as search %}
+    {% if search %}
       <li class="search">
         <form method="get" action="{% url "haystack_search" %}" id="search-form" class="autocomplete">
           <div class="search-wrapper">
diff --git a/aleksis/core/views.py b/aleksis/core/views.py
index 37867877d..6fe5bfd22 100644
--- a/aleksis/core/views.py
+++ b/aleksis/core/views.py
@@ -357,7 +357,6 @@ def delete_announcement(request: HttpRequest, pk: int) -> HttpResponse:
     return redirect("announcements")
 
 
-@permission_required("core.search")
 def searchbar_snippets(request: HttpRequest) -> HttpResponse:
     query = request.GET.get('q', '')
     limit = int(request.GET.get('limit', '5'))
-- 
GitLab