@@ -6,72 +6,41 @@ <h6>Sort and filter results</h6>
6
6
< div class ="offcanvas-body ">
7
7
< h5 > Sort tests by...</ h5 >
8
8
< 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') }}
22
20
</ div >
23
21
< form id ="filterForm " onsubmit ="return false; ">
24
22
< h5 > Show tests which have...</ h5 >
25
23
< 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 }} "
28
27
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 >
40
29
</ label >
30
+ {%- endmacro -%}
31
+ {{ filter_option('overall-passed', 'passed') }}
32
+ {{ filter_option('overall-failed', 'failed') }}
33
+ {{ filter_option('overall-skipped', 'skipped') }}
41
34
</ div >
42
35
< 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') }}
58
39
</ div >
59
40
< 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') }}
75
44
</ div >
76
45
< div class ="d-flex ">
77
46
< button type ="submit " class ="btn btn-primary m-2 " data-bs-dismiss ="offcanvas "> Apply</ button >
0 commit comments