| |
1 <%-- |
| |
2 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. |
| |
3 |
| |
4 Copyright 2018 Mike Becker. All rights reserved. |
| |
5 |
| |
6 Redistribution and use in source and binary forms, with or without |
| |
7 modification, are permitted provided that the following conditions are met: |
| |
8 |
| |
9 1. Redistributions of source code must retain the above copyright |
| |
10 notice, this list of conditions and the following disclaimer. |
| |
11 |
| |
12 2. Redistributions in binary form must reproduce the above copyright |
| |
13 notice, this list of conditions and the following disclaimer in the |
| |
14 documentation and/or other materials provided with the distribution. |
| |
15 |
| |
16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| |
17 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| |
18 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| |
19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
| |
20 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| |
21 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| |
22 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| |
23 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| |
24 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| |
25 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
26 --%> |
| |
27 <%@page pageEncoding="UTF-8" %> |
| |
28 <%@page import="de.uapcore.lightpit.Constants" %> |
| |
29 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> |
| |
30 <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> |
| |
31 |
| |
32 <c:set scope="page" var="moduleInfo" value="${requestScope[Constants.REQ_ATTR_MODULE_INFO]}"/> |
| |
33 |
| |
34 <jsp:useBean id="issue" type="de.uapcore.lightpit.entities.Issue" scope="request"/> |
| |
35 <jsp:useBean id="issueStatusEnum" type="de.uapcore.lightpit.entities.IssueStatus[]" scope="request"/> |
| |
36 <jsp:useBean id="issueCategoryEnum" type="de.uapcore.lightpit.entities.IssueCategory[]" scope="request"/> |
| |
37 <jsp:useBean id="versions" type="java.util.List<de.uapcore.lightpit.entities.Version>" scope="request"/> |
| |
38 <jsp:useBean id="users" type="java.util.List<de.uapcore.lightpit.entities.User>" scope="request"/> |
| |
39 |
| |
40 <form action="./${moduleInfo.modulePath}/issues/commit" method="post"> |
| |
41 <table class="formtable"> |
| |
42 <colgroup> |
| |
43 <col> |
| |
44 <col style="width: 75ch"> |
| |
45 </colgroup> |
| |
46 <tbody> |
| |
47 <tr> |
| |
48 <th><fmt:message key="thead.issue.category"/></th> |
| |
49 <td> |
| |
50 <select name="category"> |
| |
51 <c:forEach var="category" items="${issueCategoryEnum}"> |
| |
52 <option |
| |
53 <c:if test="${category eq issue.category}">selected</c:if> |
| |
54 value="${category}"> |
| |
55 <fmt:message key="issue.category.${category}" /> |
| |
56 </option> |
| |
57 </c:forEach> |
| |
58 </select> |
| |
59 </td> |
| |
60 </tr> |
| |
61 <tr> |
| |
62 <th><fmt:message key="thead.issue.status"/></th> |
| |
63 <td> |
| |
64 <select name="status"> |
| |
65 <c:forEach var="status" items="${issueStatusEnum}"> |
| |
66 <option |
| |
67 <c:if test="${status eq issue.status}">selected</c:if> |
| |
68 value="${status}"> |
| |
69 <fmt:message key="issue.status.${status}" /> |
| |
70 </option> |
| |
71 </c:forEach> |
| |
72 </select> |
| |
73 </td> |
| |
74 </tr> |
| |
75 <tr> |
| |
76 <th><fmt:message key="thead.issue.subject"/></th> |
| |
77 <td><input name="subject" type="text" maxlength="20" required value="<c:out value="${issue.subject}"/>" /></td> |
| |
78 </tr> |
| |
79 <tr> |
| |
80 <th class="vtop"><fmt:message key="thead.issue.description"/></th> |
| |
81 <td> |
| |
82 <textarea name="description"><c:out value="${issue.description}"/></textarea> |
| |
83 </td> |
| |
84 </tr> |
| |
85 <tr> |
| |
86 <th><fmt:message key="thead.issue.assignee"/></th> |
| |
87 <td> |
| |
88 <select name="assignee"> |
| |
89 <option value="-1"><fmt:message key="placeholder.null-assignee"/></option> |
| |
90 <c:forEach var="user" items="${users}"> |
| |
91 <option |
| |
92 <c:if test="${not empty issue.assignee and user eq issue.assignee}">selected</c:if> |
| |
93 value="${user.id}"><c:out value="${user.displayname}"/></option> |
| |
94 </c:forEach> |
| |
95 </select> |
| |
96 </td> |
| |
97 </tr> |
| |
98 <tr> |
| |
99 <th> |
| |
100 <c:choose> |
| |
101 <c:when test="${issue.affectedVersions.size() gt 1}"> |
| |
102 <fmt:message key="thead.issue.affected-versions"/> |
| |
103 </c:when> |
| |
104 <c:otherwise> |
| |
105 <fmt:message key="thead.issue.affected-version"/> |
| |
106 </c:otherwise> |
| |
107 </c:choose> |
| |
108 </th> |
| |
109 <td>TODO</td> |
| |
110 </tr> |
| |
111 <tr> |
| |
112 <th> |
| |
113 <c:choose> |
| |
114 <c:when test="${issue.scheduledVersions.size() gt 1}"> |
| |
115 <fmt:message key="thead.issue.scheduled-versions"/> |
| |
116 </c:when> |
| |
117 <c:otherwise> |
| |
118 <fmt:message key="thead.issue.scheduled-version"/> |
| |
119 </c:otherwise> |
| |
120 </c:choose> |
| |
121 </th> |
| |
122 <td>TODO</td> |
| |
123 </tr> |
| |
124 <tr> |
| |
125 <th> |
| |
126 <c:choose> |
| |
127 <c:when test="${issue.resolvedVersions.size() gt 1}"> |
| |
128 <fmt:message key="thead.issue.resolved-versions"/> |
| |
129 </c:when> |
| |
130 <c:otherwise> |
| |
131 <fmt:message key="thead.issue.resolved-version"/> |
| |
132 </c:otherwise> |
| |
133 </c:choose> |
| |
134 </th> |
| |
135 <td>TODO</td> |
| |
136 </tr> |
| |
137 <tr> |
| |
138 <th><fmt:message key="thead.issue.eta"/></th> |
| |
139 <td><input name="eta" type="date" value="<fmt:formatDate value="${issue.eta}" pattern="YYYY-MM-dd" />" /> </td> |
| |
140 </tr> |
| |
141 <tr> |
| |
142 <th><fmt:message key="thead.issue.created"/></th> |
| |
143 <td><fmt:formatDate value="${issue.created}" /></td> |
| |
144 </tr> |
| |
145 <tr> |
| |
146 <th><fmt:message key="thead.issue.updated"/></th> |
| |
147 <td><fmt:formatDate value="${issue.updated}" /></td> |
| |
148 </tr> |
| |
149 </tbody> |
| |
150 <tfoot> |
| |
151 <tr> |
| |
152 <td colspan="2"> |
| |
153 <input type="hidden" name="id" value="${issue.id}"/> |
| |
154 <a href="./${moduleInfo.modulePath}/view?pid=${issue.project.id}" class="button"> |
| |
155 <fmt:message bundle="${lightpit_bundle}" key="button.cancel"/> |
| |
156 </a> |
| |
157 <button type="submit"><fmt:message bundle="${lightpit_bundle}" key="button.okay"/></button> |
| |
158 </td> |
| |
159 </tr> |
| |
160 </tfoot> |
| |
161 </table> |
| |
162 </form> |