src/main/webapp/issue-overview.js

changeset 401
bf220daedabe
parent 355
4aaacbd102ae
--- a/src/main/webapp/issue-overview.js	Tue Oct 07 10:08:34 2025 +0200
+++ b/src/main/webapp/issue-overview.js	Thu Oct 09 11:49:39 2025 +0200
@@ -24,26 +24,50 @@
  */
 
 function toggleFilterDetails() {
-    const filters = document.getElementById('more-filters')
-    const toggle = document.getElementById('show-more-filters')
+    const filters = document.getElementById('more-filters');
+    const toggle = document.getElementById('show-more-filters');
     if (toggle.checked) {
-        filters.style.display = 'flex'
+        filters.style.display = 'flex';
     } else {
-        filters.style.display = 'none'
+        filters.style.display = 'none';
     }
 }
 
 function toggleAssigneeOnlyMine() {
-    const filters = document.getElementById('filter-assignee')
-    const toggle = document.getElementById('filter-only-mine')
+    const filters = document.getElementById('filter-assignee');
+    const toggle = document.getElementById('filter-only-mine');
     filters.disabled = !!toggle.checked;
 }
 
 function removeAllFilters() {
-    document.querySelectorAll('#filter-form *[name=filter]')
+    document.querySelectorAll('#filter-form *[name=filter], #filter-form *[name^=sort_]')
         .forEach((elem) => elem.value = '');
-    document.getElementById('filter-remove').value = 'clear'
-    document.getElementById('filter-form').submit()
+    document.getElementById('sort-default').value = 'default';
+    document.getElementById('sort-default').disabled = false;
+    document.getElementById('filter-remove').value = 'clear';
+    document.getElementById('filter-remove').disabled = false;
+    document.getElementById('filter-form').submit();
+}
+
+function cleanDefaultSort(elem) {
+    if (elem.value === elem.dataset.default) {
+        elem.value = '';
+        elem.disabled = true;
+    }
+}
+
+function submitFilters() {
+    let sort1 = document.getElementById('sort_primary')
+    let sort2 = document.getElementById('sort_secondary')
+    let sort3 = document.getElementById('sort_tertiary')
+    cleanDefaultSort(sort1);
+    cleanDefaultSort(sort2);
+    cleanDefaultSort(sort3);
+    if (sort1.disabled && sort2.disabled && sort3.disabled) {
+        document.getElementById('sort-default').value = 'default';
+        document.getElementById('sort-default').disabled = false;
+    }
+    document.getElementById('filter-form').submit();
 }
 
 window.addEventListener('load', function() { toggleFilterDetails() }, false)

mercurial