src/main/webapp/WEB-INF/jspf/issue-filter.jspf

Sun, 08 Jan 2023 19:32:11 +0100

author
Mike Becker <universe@uap-core.de>
date
Sun, 08 Jan 2023 19:32:11 +0100
changeset 271
f8f5e82944fa
parent 270
8c088c628a20
permissions
-rw-r--r--

#15 add sort options

     1 <form method="GET" id="filter-form">
     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>
    12             <input name="filter"
    13                    type="checkbox"
    14                    value="${viewmodel.filter.flagMine}"
    15                    <c:if test="${viewmodel.filter.onlyMine}">checked</c:if>
    16             >
    17             <fmt:message key="issue.filter.mine"/>
    18         </label>
    19         <label>
    20             <input name="filter"
    21                    type="checkbox"
    22                    value="${viewmodel.filter.flagBlocker}"
    23                    <c:if test="${viewmodel.filter.onlyBlocker}">checked</c:if>
    24             >
    25             <fmt:message key="issue.filter.blocking"/>
    26         </label>
    27         <label>
    28             <input id="show-more-filters" type="checkbox" onclick="toggleFilterDetails()">
    29             <fmt:message key="issue.filter.more"/>
    30         </label>
    31     </div>
    32     <div id="more-filters" style="display: flex; gap: 1em">
    33         <div style="display: inline-block">
    34             <label class="caption" style="display:block;" for="filter-category"><fmt:message key="issue.category"/></label>
    35             <select id="filter-category" name="filter" multiple size="10">
    36                 <c:forEach var="category" items="${viewmodel.filter.issueCategory}">
    37                     <option value="c.${category}" <c:if test="${viewmodel.filter.category.contains(category) }">selected</c:if> >
    38                         <fmt:message key="issue.category.${category}"/>
    39                     </option>
    40                 </c:forEach>
    41             </select>
    42         </div>
    43         <div style="display: inline-block">
    44             <label class="caption" style="display:block;" for="filter-status"><fmt:message key="issue.status"/></label>
    45             <select id="filter-status" name="filter" multiple size="10">
    46                 <c:forEach var="status" items="${viewmodel.filter.issueStatus}">
    47                     <option value="s.${status}" <c:if test="${viewmodel.filter.status.contains(status) }">selected</c:if>>
    48                         <fmt:message key="issue.status.${status}"/>
    49                     </option>
    50                 </c:forEach>
    51             </select>
    52         </div>
    53         <c:set var="sortPriority" value="primary"/>
    54         <c:set var="currentSort" value="${viewmodel.filter.sortPrimary}"/>
    55         <%@include file="sort-box.jspf"%>
    56         <c:set var="sortPriority" value="secondary"/>
    57         <c:set var="currentSort" value="${viewmodel.filter.sortSecondary}"/>
    58         <%@include file="sort-box.jspf"%>
    59         <c:set var="sortPriority" value="tertiary"/>
    60         <c:set var="currentSort" value="${viewmodel.filter.sortTertiary}"/>
    61         <%@include file="sort-box.jspf"%>
    62     </div>
    63     <div class="medskip">
    64         <button name="filter" type="submit"><fmt:message key="button.apply"/></button>
    65         <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>
    66     </div>
    67 </form>

mercurial