Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | {% comment %} |
| 2 | Show a detail table Search field and Rows per page. |
| 3 | Input: |
| 4 | objects, our boilerplated paginated with search fields set. |
| 5 | object_count, count of full, unfiltered, objects list |
| 6 | search_what, fills in "Search ___" |
| 7 | Only show the search form if we have more than 10 results, |
| 8 | or if return from a previous search. |
| 9 | {% endcomment %} |
| 10 | |
| 11 | |
| 12 | <script> |
| 13 | $(document).ready(function() { |
| 14 | /* Clear the current search selection and reload the results */ |
| 15 | $(".search-clear").click(function(){ |
| 16 | $("#search").val(""); |
| 17 | $(this).parents("form").submit(); |
| 18 | }); |
| 19 | }); |
| 20 | </script> |
| 21 | <div class="row-fluid"> |
| 22 | {% if objects.paginator.count > 10 or request.GET.search %} |
| 23 | {% if objects.paginator.count == 0 %} |
| 24 | <div class="alert"> |
| 25 | <h3>No {{search_what}} found</h3> |
| 26 | <form id="searchform" class="input-append"> |
| 27 | {% else %} |
| 28 | <form id="searchform" class="navbar-search input-append pull-left"> |
| 29 | {% endif %} |
| 30 | |
| 31 | <input id="search" class="input-xlarge" type="text" placeholder="Search {{search_what}}" name="search" value="{% if request.GET.search %}{{request.GET.search}}{% endif %}"> |
| 32 | <input type="hidden" value="name:+" name="orderby"> |
| 33 | <input type="hidden" value="l" name="page"> |
| 34 | {% if request.GET.search %} |
| 35 | <a class="add-on btn search-clear"> |
| 36 | <i class="icon-remove"></i> |
| 37 | </a> |
| 38 | {% endif %} |
| 39 | <button type="submit" class="btn">Search</button> |
| 40 | {% if objects.paginator.count == 0 %} |
| 41 | <button type="submit" class="btn btn-link search-clear"> |
| 42 | Show all {{search_what}} |
| 43 | </button> |
| 44 | {% endif %} |
| 45 | </form> |
| 46 | {% endif %} |
| 47 | |
| 48 | {% if objects.paginator.count == 0 %} |
| 49 | </div> {# end alert #} |
| 50 | {% else %} |
| 51 | {% if object_count > 10 %} |
| 52 | <div class="pull-right"> |
| 53 | <span class="help-inline" style="padding-top:5px;">Show rows:</span> |
| 54 | <select style="margin-top:5px;margin-bottom:0px;" class="pagesize"> |
| 55 | {% with "10 25 50 100 150" as list%} |
| 56 | {% for i in list.split %} |
| 57 | {% if request.session.limit == i %} |
| 58 | <option value="{{i}}" selected>{{i}}</option> |
| 59 | {% else %} |
| 60 | <option value="{{i}}">{{i}}</option> |
| 61 | {% endif %} |
| 62 | {% endfor %} |
| 63 | {% endwith %} |
| 64 | </select> |
| 65 | </div> |
| 66 | {% endif %} |
| 67 | {% endif %} |
| 68 | </div> {# row-fluid #} |