Mon, 04 Jan 2021 12:45:46 +0100
Automated merge
1.1 --- a/src/main/java/de/uapcore/lightpit/AbstractLightPITServlet.java Mon Jan 04 12:45:22 2021 +0100 1.2 +++ b/src/main/java/de/uapcore/lightpit/AbstractLightPITServlet.java Mon Jan 04 12:45:46 2021 +0100 1.3 @@ -275,7 +275,7 @@ 1.4 private <T> Optional<T> parseParameter(String paramValue, Class<T> clazz) { 1.5 if (paramValue == null) return Optional.empty(); 1.6 if (clazz.equals(Boolean.class)) { 1.7 - if (paramValue.toLowerCase().equals("false") || paramValue.equals("0")) { 1.8 + if (paramValue.equalsIgnoreCase("false") || paramValue.equals("0")) { 1.9 return Optional.of((T) Boolean.FALSE); 1.10 } else { 1.11 return Optional.of((T) Boolean.TRUE); 1.12 @@ -349,6 +349,13 @@ 1.13 } 1.14 } 1.15 1.16 + protected void setAttributeFromParameter(HttpServletRequest req, String name) { 1.17 + final var parm = req.getParameter(name); 1.18 + if (parm != null) { 1.19 + req.setAttribute(name, parm); 1.20 + } 1.21 + } 1.22 + 1.23 private String sanitizeRequestPath(HttpServletRequest req) { 1.24 return Optional.ofNullable(req.getPathInfo()).orElse("/"); 1.25 }
2.1 --- a/src/main/java/de/uapcore/lightpit/modules/ProjectsModule.java Mon Jan 04 12:45:22 2021 +0100 2.2 +++ b/src/main/java/de/uapcore/lightpit/modules/ProjectsModule.java Mon Jan 04 12:45:46 2021 +0100 2.3 @@ -537,7 +537,7 @@ 2.4 } 2.5 2.6 @RequestMapping(requestPath = "$project/create-issue", method = HttpMethod.GET) 2.7 - public void createIssue(HttpServletRequest req, HttpServletResponse resp, PathParameters pathParameters, DataAccessObject dao) throws IOException, SQLException, ServletException { 2.8 + public void createIssue(HttpServletRequest req, HttpServletResponse resp, PathParameters pathParameters, DataAccessObject dao) throws IOException, ServletException { 2.9 final var viewModel = new IssueEditView(); 2.10 populate(viewModel, pathParameters, dao); 2.11 2.12 @@ -547,7 +547,10 @@ 2.13 return; 2.14 } 2.15 2.16 - // TODO: fix #38 - automatically select component (and version) 2.17 + setAttributeFromParameter(req, "more"); 2.18 + setAttributeFromParameter(req, "component"); 2.19 + setAttributeFromParameter(req, "version"); 2.20 + 2.21 final var issue = new Issue(-1, projectInfo.getProject(), null); 2.22 issue.setProject(projectInfo.getProject()); 2.23 configureIssueEditor(viewModel, issue, dao); 2.24 @@ -607,8 +610,12 @@ 2.25 dao.insertIssue(issue); 2.26 } 2.27 2.28 - // TODO: implement #110 2.29 - setRedirectLocation(req, "./projects/" + issue.getProject().getNode()+"/issues/"+issue.getId()+"/view"); 2.30 + if (getParameter(req, Boolean.class, "create-another").orElse(false)) { 2.31 + // TODO: fix #38 - automatically select component (and version) 2.32 + setRedirectLocation(req, "./projects/" + issue.getProject().getNode() + "/create-issue?more=true"); 2.33 + } else{ 2.34 + setRedirectLocation(req, "./projects/" + issue.getProject().getNode() + "/issues/" + issue.getId() + "/view"); 2.35 + } 2.36 setContentPage(req, Constants.JSP_COMMIT_SUCCESSFUL); 2.37 2.38 renderSite(req, resp);
3.1 --- a/src/main/resources/localization/projects.properties Mon Jan 04 12:45:22 2021 +0100 3.2 +++ b/src/main/resources/localization/projects.properties Mon Jan 04 12:45:46 2021 +0100 3.3 @@ -29,6 +29,7 @@ 3.4 button.version.create=New Version 3.5 button.version.edit=Edit Version 3.6 button.issue.create=New Issue 3.7 +button.issue.create.another=Create another Issue 3.8 button.issue.edit=Edit Issue 3.9 button.issue.all=All Issues 3.10 button.comment=Comment
4.1 --- a/src/main/resources/localization/projects_de.properties Mon Jan 04 12:45:22 2021 +0100 4.2 +++ b/src/main/resources/localization/projects_de.properties Mon Jan 04 12:45:46 2021 +0100 4.3 @@ -29,6 +29,7 @@ 4.4 button.version.create=Neue Version 4.5 button.version.edit=Version Bearbeiten 4.6 button.issue.create=Neuer Vorgang 4.7 +button.issue.create.another=Weiteren Vorgang erstellen 4.8 button.issue.edit=Vorgang Bearbeiten 4.9 button.issue.all=Alle Vorg\u00e4nge 4.10 button.comment=Kommentieren
5.1 --- a/src/main/webapp/WEB-INF/jsp/issue-form.jsp Mon Jan 04 12:45:22 2021 +0100 5.2 +++ b/src/main/webapp/WEB-INF/jsp/issue-form.jsp Mon Jan 04 12:45:46 2021 +0100 5.3 @@ -1,7 +1,7 @@ 5.4 <%-- 5.5 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. 5.6 5.7 -Copyright 2018 Mike Becker. All rights reserved. 5.8 +Copyright 2020 Mike Becker. All rights reserved. 5.9 5.10 Redistribution and use in source and binary forms, with or without 5.11 modification, are permitted provided that the following conditions are met: 5.12 @@ -174,6 +174,8 @@ 5.13 <tfoot> 5.14 <tr> 5.15 <td colspan="2"> 5.16 + <input type="checkbox" id="create-another" name="create-another" <c:if test="${more}">checked</c:if> /> 5.17 + <label for="create-another"><fmt:message key="button.issue.create.another"/> </label> 5.18 <input type="hidden" name="id" value="${issue.id}"/> 5.19 <c:if test="${issue.id ge 0}"> 5.20 <a href="./projects/${issue.project.node}/issues/${issue.id}/view" class="button">