From 8a37ac0f340380ec0aed935252ace3ea0e28cfd0 Mon Sep 17 00:00:00 2001
From: Renon <renon@disroot.org>
Date: Mon, 11 Nov 2019 11:32:07 +0100
Subject: [PATCH] Resolve "No feedback when search does not raise any result"

---
 front/src/components/audio/SearchBar.vue | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/front/src/components/audio/SearchBar.vue b/front/src/components/audio/SearchBar.vue
index d73571fcb..ae2ae08fb 100644
--- a/front/src/components/audio/SearchBar.vue
+++ b/front/src/components/audio/SearchBar.vue
@@ -49,12 +49,17 @@ export default {
     jQuery(this.$el).search({
       type: 'category',
       minCharacters: 3,
+      showNoResults: true,
+      error: {
+        noResultsHeader: this.$pgettext('Sidebar/Search/Error', 'No matches found'),
+        noResults: this.$pgettext('Sidebar/Search/Error.Label', 'Sorry, there are no results for this search')
+      },
       onSelect (result, response) {
         router.push(result.routerUrl)
       },
       onSearchQuery (query) {
         self.$emit('search')
-        searchQuery = query;
+        searchQuery = query
       },
       apiSettings: {
         beforeXHR: function (xhrObject) {
@@ -65,7 +70,8 @@ export default {
           return xhrObject
         },
         onResponse: function (initialResponse) {
-          var results = {}
+          let results = {}
+	  let isEmptyResults = true
           let categories = [
             {
               code: 'artists',
@@ -130,6 +136,7 @@ export default {
               results: []
             }
             initialResponse[category.code].forEach(result => {
+	      isEmptyResults = false
               let id = category.getId(result)
               results[category.code].results.push({
                 title: category.getTitle(result),
@@ -144,7 +151,9 @@ export default {
               })
             })
           })
-          return {results: results}
+          return {
+	    results: isEmptyResults ? {} : results
+	  }
         },
         url: this.$store.getters['instance/absoluteUrl']('api/v1/search?query={query}')
       }
-- 
GitLab