Tue, 30 Jul 2024 18:53:39 +0200
add filter for assignee - fixes #403
270
8c088c628a20
#15 add remove filter button
Mike Becker <universe@uap-core.de>
parents:
268
diff
changeset
|
1 | <form method="GET" id="filter-form"> |
268 | 2 | <div> |
3 | <label> | |
4 | <input name="filter" | |
5 | type="checkbox" | |
6 | value="${viewmodel.filter.flagIncludeDone}" | |
7 | <c:if test="${viewmodel.filter.includeDone}">checked</c:if> | |
8 | > | |
9 | <fmt:message key="issue.filter.done"/> | |
10 | </label> | |
11 | <label> | |
307
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
12 | <input id="filter-only-mine" |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
13 | name="filter" |
268 | 14 | type="checkbox" |
15 | value="${viewmodel.filter.flagMine}" | |
16 | <c:if test="${viewmodel.filter.onlyMine}">checked</c:if> | |
307
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
17 | onclick="toggleAssigneeOnlyMine()" |
268 | 18 | > |
19 | <fmt:message key="issue.filter.mine"/> | |
20 | </label> | |
21 | <label> | |
22 | <input name="filter" | |
23 | type="checkbox" | |
24 | value="${viewmodel.filter.flagBlocker}" | |
25 | <c:if test="${viewmodel.filter.onlyBlocker}">checked</c:if> | |
26 | > | |
27 | <fmt:message key="issue.filter.blocking"/> | |
28 | </label> | |
29 | <label> | |
30 | <input id="show-more-filters" type="checkbox" onclick="toggleFilterDetails()"> | |
31 | <fmt:message key="issue.filter.more"/> | |
32 | </label> | |
33 | </div> | |
34 | <div id="more-filters" style="display: flex; gap: 1em"> | |
35 | <div style="display: inline-block"> | |
36 | <label class="caption" style="display:block;" for="filter-category"><fmt:message key="issue.category"/></label> | |
37 | <select id="filter-category" name="filter" multiple size="10"> | |
38 | <c:forEach var="category" items="${viewmodel.filter.issueCategory}"> | |
39 | <option value="c.${category}" <c:if test="${viewmodel.filter.category.contains(category) }">selected</c:if> > | |
40 | <fmt:message key="issue.category.${category}"/> | |
41 | </option> | |
42 | </c:forEach> | |
43 | </select> | |
44 | </div> | |
45 | <div style="display: inline-block"> | |
46 | <label class="caption" style="display:block;" for="filter-status"><fmt:message key="issue.status"/></label> | |
47 | <select id="filter-status" name="filter" multiple size="10"> | |
48 | <c:forEach var="status" items="${viewmodel.filter.issueStatus}"> | |
49 | <option value="s.${status}" <c:if test="${viewmodel.filter.status.contains(status) }">selected</c:if>> | |
50 | <fmt:message key="issue.status.${status}"/> | |
51 | </option> | |
52 | </c:forEach> | |
53 | </select> | |
54 | </div> | |
307
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
55 | <div style="display: inline-block"> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
56 | <label class="caption" style="display:block;" for="filter-assignee"><fmt:message key="issue.assignee"/></label> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
57 | <select id="filter-assignee" name="filter" multiple size="10" <c:if test="${viewmodel.filter.onlyMine}">disabled</c:if> > |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
58 | <option value="u.-1" <c:if test="${viewmodel.filter.containsAssignee(null) }">selected</c:if>> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
59 | <fmt:message key="placeholder.null-assignee" /> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
60 | </option> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
61 | <c:forEach var="user" items="${viewmodel.users}"> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
62 | <option value="u.${user.id}" <c:if test="${viewmodel.filter.containsAssignee(user) }">selected</c:if>> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
63 | <c:out value="${user.shortDisplayname}"/> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
64 | </option> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
65 | </c:forEach> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
66 | </select> |
23fe9f174d2d
add filter for assignee - fixes #403
Mike Becker <universe@uap-core.de>
parents:
271
diff
changeset
|
67 | </div> |
271 | 68 | <c:set var="sortPriority" value="primary"/> |
69 | <c:set var="currentSort" value="${viewmodel.filter.sortPrimary}"/> | |
70 | <%@include file="sort-box.jspf"%> | |
71 | <c:set var="sortPriority" value="secondary"/> | |
72 | <c:set var="currentSort" value="${viewmodel.filter.sortSecondary}"/> | |
73 | <%@include file="sort-box.jspf"%> | |
74 | <c:set var="sortPriority" value="tertiary"/> | |
75 | <c:set var="currentSort" value="${viewmodel.filter.sortTertiary}"/> | |
76 | <%@include file="sort-box.jspf"%> | |
268 | 77 | </div> |
78 | <div class="medskip"> | |
79 | <button name="filter" type="submit"><fmt:message key="button.apply"/></button> | |
270
8c088c628a20
#15 add remove filter button
Mike Becker <universe@uap-core.de>
parents:
268
diff
changeset
|
80 | <a class="button" onclick="document.querySelectorAll('#filter-form *[name=filter]').forEach((elem) => elem.value = ''); document.getElementById('filter-form').submit()"><fmt:message key="button.remove"/></a> |
268 | 81 | </div> |
82 | </form> |