1.1 --- a/src/main/webapp/WEB-INF/jsp/issue-form.jsp Sat May 30 18:12:38 2020 +0200 1.2 +++ b/src/main/webapp/WEB-INF/jsp/issue-form.jsp Mon Jun 01 14:46:58 2020 +0200 1.3 @@ -28,12 +28,9 @@ 1.4 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 1.5 <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 1.6 1.7 -<jsp:useBean id="projects" type="java.util.List<de.uapcore.lightpit.entities.Project>" scope="request" /> 1.8 -<jsp:useBean id="versions" type="java.util.List<de.uapcore.lightpit.entities.Version>" scope="request" /> 1.9 -<jsp:useBean id="issue" type="de.uapcore.lightpit.entities.Issue" scope="request"/> 1.10 -<jsp:useBean id="issueStatusEnum" type="de.uapcore.lightpit.entities.IssueStatus[]" scope="request"/> 1.11 -<jsp:useBean id="issueCategoryEnum" type="de.uapcore.lightpit.entities.IssueCategory[]" scope="request"/> 1.12 -<jsp:useBean id="users" type="java.util.List<de.uapcore.lightpit.entities.User>" scope="request"/> 1.13 +<jsp:useBean id="viewmodel" type="de.uapcore.lightpit.viewmodel.IssueEditView" scope="request"/> 1.14 +<c:set var="issue" scope="page" value="${viewmodel.issue}" /> 1.15 +<c:set var="versions" value="${viewmodel.versions}" /> 1.16 1.17 <form action="./projects/issues/commit" method="post"> 1.18 <table class="formtable"> 1.19 @@ -45,26 +42,28 @@ 1.20 <tr> 1.21 <th><fmt:message key="issue.project"/></th> 1.22 <td> 1.23 - <c:if test="${issue.project.id ge 0}"> 1.24 - <c:out value="${issue.project.name}" /> 1.25 - <input type="hidden" name="pid" value="${issue.project.id}" /> 1.26 - </c:if> 1.27 - <c:if test="${empty issue.project or issue.project.id lt 0}"> 1.28 - <select name="pid" required> 1.29 - <c:forEach var="project" items="${projects}"> 1.30 - <option value="${project.id}"> 1.31 - <c:out value="${project.name}" /> 1.32 - </option> 1.33 - </c:forEach> 1.34 - </select> 1.35 - </c:if> 1.36 + <c:choose> 1.37 + <c:when test="${not empty issue.project}"> 1.38 + <c:out value="${issue.project.name}" /> 1.39 + <input type="hidden" name="pid" value="${issue.project.id}" /> 1.40 + </c:when> 1.41 + <c:otherwise> 1.42 + <select name="pid" required> 1.43 + <c:forEach var="project" items="${viewmodel.projects}"> 1.44 + <option value="${project.id}"> 1.45 + <c:out value="${project.name}" /> 1.46 + </option> 1.47 + </c:forEach> 1.48 + </select> 1.49 + </c:otherwise> 1.50 + </c:choose> 1.51 </td> 1.52 </tr> 1.53 <tr> 1.54 <th><fmt:message key="issue.category"/></th> 1.55 <td> 1.56 <select name="category"> 1.57 - <c:forEach var="category" items="${issueCategoryEnum}"> 1.58 + <c:forEach var="category" items="${viewmodel.issueCategory}"> 1.59 <option 1.60 <c:if test="${category eq issue.category}">selected</c:if> 1.61 value="${category}"> 1.62 @@ -78,7 +77,7 @@ 1.63 <th><fmt:message key="issue.status"/></th> 1.64 <td> 1.65 <select name="status"> 1.66 - <c:forEach var="status" items="${issueStatusEnum}"> 1.67 + <c:forEach var="status" items="${viewmodel.issueStatus}"> 1.68 <option 1.69 <c:if test="${status eq issue.status}">selected</c:if> 1.70 value="${status}"> 1.71 @@ -95,7 +94,7 @@ 1.72 <tr> 1.73 <th class="vtop"><fmt:message key="issue.description"/></th> 1.74 <td> 1.75 - <textarea name="description"><c:out value="${issue.description}"/></textarea> 1.76 + <textarea name="description" rows="10"><c:out value="${issue.description}"/></textarea> 1.77 </td> 1.78 </tr> 1.79 <tr> 1.80 @@ -103,7 +102,7 @@ 1.81 <td> 1.82 <select name="assignee"> 1.83 <option value="-1"><fmt:message key="placeholder.null-assignee"/></option> 1.84 - <c:forEach var="user" items="${users}"> 1.85 + <c:forEach var="user" items="${viewmodel.users}"> 1.86 <option 1.87 <c:if test="${not empty issue.assignee and user eq issue.assignee}">selected</c:if> 1.88 value="${user.id}"><c:out value="${user.displayname}"/></option> 1.89 @@ -155,7 +154,7 @@ 1.90 <td colspan="2"> 1.91 <input type="hidden" name="id" value="${issue.id}"/> 1.92 <c:choose> 1.93 - <c:when test="${not empty issue.project and issue.project.id ge 0}"> 1.94 + <c:when test="${not empty issue.project}"> 1.95 <c:set var="cancelUrl">./projects/issues/?pid=${issue.project.id}</c:set> 1.96 </c:when> 1.97 <c:otherwise>