search.html 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. {% extends 'base/layout.html' %}
  2. {% load helpers %}
  3. {% load form_helpers %}
  4. {% load render_table from django_tables2 %}
  5. {% block title %}Search{% endblock %}
  6. {% block tabs %}
  7. <ul class="nav nav-tabs px-3">
  8. <li class="nav-item" role="presentation">
  9. <button class="nav-link active" type="button" role="tab">
  10. Results
  11. </button>
  12. </li>
  13. </ul>
  14. {% endblock tabs %}
  15. {% block content-wrapper %}
  16. <div class="tab-content">
  17. {% if request.GET.q %}
  18. {% if results %}
  19. <div class="row">
  20. <div class="col col-md-9">
  21. {% for obj_type in results %}
  22. <div class="card">
  23. <h5 class="card-header" id="{{ obj_type.name|lower }}">{{ obj_type.name|bettertitle }}</h5>
  24. <div class="card-body table-responsive">
  25. {% render_table obj_type.table 'inc/table.html' %}
  26. </div>
  27. <div class="card-footer text-end">
  28. <a href="{{ obj_type.url }}" class="btn btn-sm btn-primary my-1">
  29. <i class="mdi mdi-arrow-right-bold" aria-hidden="true"></i>
  30. {% if obj_type.table.page.has_next %}
  31. See All {{ obj_type.table.page.paginator.count }} Results
  32. {% else %}
  33. Refine Search
  34. {% endif %}
  35. </a>
  36. </div>
  37. </div>
  38. {% endfor %}
  39. </div>
  40. <div class="col col-md-3">
  41. <div class="card">
  42. <h5 class="card-header">
  43. Search Results
  44. </h5>
  45. <div class="card-body">
  46. <div class="list-group list-group-flush">
  47. {% for obj_type in results %}
  48. <a href="#{{ obj_type.name|lower }}" class="list-group-item">
  49. <div class="float-end">
  50. {% badge obj_type.table.page.paginator.count %}
  51. </div>
  52. {{ obj_type.name|bettertitle }}
  53. </a>
  54. {% endfor %}
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. </div>
  60. {% else %}
  61. <h3 class="text-muted text-center">No results found</h3>
  62. {% endif %}
  63. {% else %}
  64. <div class="row">
  65. <div class="col col-12 col-lg-6 offset-lg-3">
  66. <form action="{% url 'search' %}" method="get" class="form form-horizontal">
  67. <div class="card">
  68. <h5 class="card-header">
  69. Search
  70. </h5>
  71. <div class="card-body">
  72. {% render_form form %}
  73. </div>
  74. <div class="card-footer text-end">
  75. <button type="submit" class="btn btn-primary">
  76. <span class="mdi mdi-magnify" aria-hidden="true"></span> Search
  77. </button>
  78. </div>
  79. </div>
  80. </form>
  81. </div>
  82. </div>
  83. {% endif %}
  84. </div>
  85. {% endblock content-wrapper %}