@@ -6,72 +6,41 @@ <h6>Sort and filter results</h6>
66 < div class ="offcanvas-body ">
77 < h5 > Sort tests by...</ h5 >
88 < div class ="btn-group m-2 pb-2 " role ="group " aria-label ="Select sorting ">
9- < input type ="radio " class ="btn-check sort " data-sort ="status-sort " data-order ="desc " name ="sort "
10- id ="sortstatus "
11- autocomplete ="off " checked >
12- < label class ="btn btn-outline-secondary " for ="sortstatus "> status</ label >
13- < input type ="radio " class ="btn-check sort " data-sort ="collected-sort " data-order ="asc " name ="sort "
14- id ="sortcollected " autocomplete ="off ">
15- < label class ="btn btn-outline-secondary " for ="sortcollected "> collected</ label >
16- < input type ="radio " class ="btn-check sort " data-sort ="test-name " name ="sort " id ="sortname "
17- autocomplete ="off ">
18- < label class ="btn btn-outline-secondary " for ="sortname "> name</ label >
19- < input type ="radio " class ="btn-check sort " data-sort ="rms-sort " data-order ="desc " name ="sort " id ="sortrms "
20- autocomplete ="off ">
21- < label class ="btn btn-outline-secondary " for ="sortrms "> RMS</ label >
9+ {% macro sort_option(id, name, order='', default=false) -%}
10+ < input type ="radio " class ="btn-check sort " data-sort ="{{ id }} "
11+ {% if order | length %}data-order ="{{ order }} "{% endif %}
12+ name ="sort " id ="sort{{ name | lower }} "
13+ autocomplete ="off "{% if default %} checked{% endif %} >
14+ < label class ="btn btn-outline-secondary " for ="sort{{ name | lower }} "> {{ name }}</ label >
15+ {%- endmacro -%}
16+ {{ sort_option('status-sort', 'status', 'desc', default=true) }}
17+ {{ sort_option('collected-sort', 'collected', 'asc') }}
18+ {{ sort_option('test-name', 'name') }}
19+ {{ sort_option('rms-sort', 'RMS', 'desc') }}
2220 </ div >
2321 < form id ="filterForm " onsubmit ="return false; ">
2422 < h5 > Show tests which have...</ h5 >
2523 < div class ="list-group m-2 ">
26- < label class ="list-group-item list-group-item-success ">
27- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="overall-passed "
24+ {% macro filter_option(id, name) -%}
25+ < label class ="list-group-item list-group-item-{{ id | status_class }} ">
26+ < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="{{ id }} "
2827 onclick ="applyFilters() ">
29- passed < span class ="badge bg-light text-dark "> ?</ span >
30- </ label >
31- < label class ="list-group-item list-group-item-danger ">
32- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="overall-failed "
33- onclick ="applyFilters() ">
34- failed < span class ="badge bg-light text-dark "> ?</ span >
35- </ label >
36- < label class ="list-group-item list-group-item-warning ">
37- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="overall-skipped "
38- onclick ="applyFilters() ">
39- skipped < span class ="badge bg-light text-dark "> ?</ span >
28+ {{ name }} < span class ="badge bg-light text-dark "> ?</ span >
4029 </ label >
30+ {%- endmacro -%}
31+ {{ filter_option('overall-passed', 'passed') }}
32+ {{ filter_option('overall-failed', 'failed') }}
33+ {{ filter_option('overall-skipped', 'skipped') }}
4134 </ div >
4235 < div class ="list-group m-2 ">
43- < label class ="list-group-item list-group-item-success ">
44- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="image-match "
45- onclick ="applyFilters() ">
46- matching images < span class ="badge bg-light text-dark "> ?</ span >
47- </ label >
48- < label class ="list-group-item list-group-item-danger ">
49- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="image-diff "
50- onclick ="applyFilters() ">
51- differing images < span class ="badge bg-light text-dark "> ?</ span >
52- </ label >
53- < label class ="list-group-item list-group-item-warning ">
54- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="image-missing "
55- onclick ="applyFilters() ">
56- no baseline image < span class ="badge bg-light text-dark "> ?</ span >
57- </ label >
36+ {{ filter_option('image-match', 'matching images') }}
37+ {{ filter_option('image-diff', 'differing images') }}
38+ {{ filter_option('image-missing', 'no baseline image') }}
5839 </ div >
5940 < div class ="list-group m-2 mpl-hash ">
60- < label class ="list-group-item list-group-item-success ">
61- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="hash-match "
62- onclick ="applyFilters() ">
63- matching hashes < span class ="badge bg-light text-dark "> ?</ span >
64- </ label >
65- < label class ="list-group-item list-group-item-danger ">
66- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="hash-diff "
67- onclick ="applyFilters() ">
68- differing hashes < span class ="badge bg-light text-dark "> ?</ span >
69- </ label >
70- < label class ="list-group-item list-group-item-warning ">
71- < input class ="form-check-input me-1 filter " type ="checkbox " value ="" id ="hash-missing "
72- onclick ="applyFilters() ">
73- no baseline hash < span class ="badge bg-light text-dark "> ?</ span >
74- </ label >
41+ {{ filter_option('hash-match', 'matching hashes') }}
42+ {{ filter_option('hash-diff', 'differing hashes') }}
43+ {{ filter_option('hash-missing', 'no baseline hash') }}
7544 </ div >
7645 < div class ="d-flex ">
7746 < button type ="submit " class ="btn btn-primary m-2 " data-bs-dismiss ="offcanvas "> Apply</ button >
0 commit comments