22 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
22 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
24 */ |
24 */ |
25 |
25 |
26 function toggleFilterDetails() { |
26 function toggleFilterDetails() { |
27 const filters = document.getElementById('more-filters') |
27 const filters = document.getElementById('more-filters'); |
28 const toggle = document.getElementById('show-more-filters') |
28 const toggle = document.getElementById('show-more-filters'); |
29 if (toggle.checked) { |
29 if (toggle.checked) { |
30 filters.style.display = 'flex' |
30 filters.style.display = 'flex'; |
31 } else { |
31 } else { |
32 filters.style.display = 'none' |
32 filters.style.display = 'none'; |
33 } |
33 } |
34 } |
34 } |
35 |
35 |
36 function toggleAssigneeOnlyMine() { |
36 function toggleAssigneeOnlyMine() { |
37 const filters = document.getElementById('filter-assignee') |
37 const filters = document.getElementById('filter-assignee'); |
38 const toggle = document.getElementById('filter-only-mine') |
38 const toggle = document.getElementById('filter-only-mine'); |
39 filters.disabled = !!toggle.checked; |
39 filters.disabled = !!toggle.checked; |
40 } |
40 } |
41 |
41 |
42 function removeAllFilters() { |
42 function removeAllFilters() { |
43 document.querySelectorAll('#filter-form *[name=filter]') |
43 document.querySelectorAll('#filter-form *[name=filter], #filter-form *[name^=sort_]') |
44 .forEach((elem) => elem.value = ''); |
44 .forEach((elem) => elem.value = ''); |
45 document.getElementById('filter-remove').value = 'clear' |
45 document.getElementById('sort-default').value = 'default'; |
46 document.getElementById('filter-form').submit() |
46 document.getElementById('sort-default').disabled = false; |
|
47 document.getElementById('filter-remove').value = 'clear'; |
|
48 document.getElementById('filter-remove').disabled = false; |
|
49 document.getElementById('filter-form').submit(); |
|
50 } |
|
51 |
|
52 function cleanDefaultSort(elem) { |
|
53 if (elem.value === elem.dataset.default) { |
|
54 elem.value = ''; |
|
55 elem.disabled = true; |
|
56 } |
|
57 } |
|
58 |
|
59 function submitFilters() { |
|
60 let sort1 = document.getElementById('sort_primary') |
|
61 let sort2 = document.getElementById('sort_secondary') |
|
62 let sort3 = document.getElementById('sort_tertiary') |
|
63 cleanDefaultSort(sort1); |
|
64 cleanDefaultSort(sort2); |
|
65 cleanDefaultSort(sort3); |
|
66 if (sort1.disabled && sort2.disabled && sort3.disabled) { |
|
67 document.getElementById('sort-default').value = 'default'; |
|
68 document.getElementById('sort-default').disabled = false; |
|
69 } |
|
70 document.getElementById('filter-form').submit(); |
47 } |
71 } |
48 |
72 |
49 window.addEventListener('load', function() { toggleFilterDetails() }, false) |
73 window.addEventListener('load', function() { toggleFilterDetails() }, false) |