From fbf764e2efde7e7d3b4eced77dad4a4cf4a79d1e Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Wed, 17 Apr 2019 00:57:44 +1000 Subject: [PATCH 1/5] Send search query text to template --- InvenTree/InvenTree/views.py | 4 ++++ InvenTree/templates/InvenTree/search.html | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/InvenTree/InvenTree/views.py b/InvenTree/InvenTree/views.py index 6fc4302bfa..c160398caf 100644 --- a/InvenTree/InvenTree/views.py +++ b/InvenTree/InvenTree/views.py @@ -241,4 +241,8 @@ class SearchView(TemplateView): context = self.get_context_data() + query = request.POST.get('search', '') + + context['query'] = query + return super(TemplateView, self).render_to_response(context) diff --git a/InvenTree/templates/InvenTree/search.html b/InvenTree/templates/InvenTree/search.html index 2e8c755d3c..b9042d22b5 100644 --- a/InvenTree/templates/InvenTree/search.html +++ b/InvenTree/templates/InvenTree/search.html @@ -5,7 +5,7 @@

InvenTree Search

- Search stuff goes here. + Searched for: {{ query }}

{% endblock %} From ca7182bf6bebb144b39221d817a6f0dfe455c3e3 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Wed, 17 Apr 2019 08:16:34 +1000 Subject: [PATCH 2/5] search page now returns matching parts - Searches 'name' and 'description' field - Uses the JSON API --- InvenTree/templates/InvenTree/search.html | 54 ++++++++++++++++++++--- InvenTree/templates/navbar.html | 8 +--- InvenTree/templates/search_form.html | 9 ++++ 3 files changed, 59 insertions(+), 12 deletions(-) create mode 100644 InvenTree/templates/search_form.html diff --git a/InvenTree/templates/InvenTree/search.html b/InvenTree/templates/InvenTree/search.html index b9042d22b5..19f653cfa8 100644 --- a/InvenTree/templates/InvenTree/search.html +++ b/InvenTree/templates/InvenTree/search.html @@ -2,14 +2,58 @@ {% block content %} -

InvenTree Search

+

Search Results

-

- Searched for: {{ query }} -

+{% include "search_form.html" with query_text=query %} + +

+

Parts

+ +
{% endblock %} +{% block js_ready %} +{{ block.super }} + + $("#part-results-table").on('load-success.bs.table', function() { + var n = $("#part-results-table").bootstrapTable('getData').length; + $("#part-result-count").html("(found " + n + " results)"); + }); + + $("#part-results-table").bootstrapTable({ + sortable: true, + search: true, + pagination: true, + queryParams: function(p) { + return { + search: "{{ query }}", + } + }, + columns: [ + { + field: 'pk', + title: 'ID', + visible: false, + }, + { + field: 'name', + title: 'Name', + sortable: true, + searchable: true, + formatter: function(value, row, index, field) { + return renderLink(value, row.url); + } + }, + { + field: 'description', + title: 'Description', + searchable: true, + } + ], + url: "{% url 'api-part-list' %}" + }); + + -{% block js_load %} {% endblock %} \ No newline at end of file diff --git a/InvenTree/templates/navbar.html b/InvenTree/templates/navbar.html index 31e0d4de9b..64bb7ec34c 100644 --- a/InvenTree/templates/navbar.html +++ b/InvenTree/templates/navbar.html @@ -12,13 +12,7 @@
  • Companies