# HG changeset patch # User Mike Becker # Date 1609760746 -3600 # Node ID 1dc56ab7845e18b14b4f902b73dce16a80fe1fff # Parent 89b3320557e2d8acadafb356d70cadf99fe7ee78# Parent 1c3694ae224ce2d52878f230b6544b4263bd41d9 Automated merge diff -r 89b3320557e2 -r 1dc56ab7845e src/main/java/de/uapcore/lightpit/AbstractLightPITServlet.java --- a/src/main/java/de/uapcore/lightpit/AbstractLightPITServlet.java Mon Jan 04 12:45:22 2021 +0100 +++ b/src/main/java/de/uapcore/lightpit/AbstractLightPITServlet.java Mon Jan 04 12:45:46 2021 +0100 @@ -275,7 +275,7 @@ private Optional parseParameter(String paramValue, Class clazz) { if (paramValue == null) return Optional.empty(); if (clazz.equals(Boolean.class)) { - if (paramValue.toLowerCase().equals("false") || paramValue.equals("0")) { + if (paramValue.equalsIgnoreCase("false") || paramValue.equals("0")) { return Optional.of((T) Boolean.FALSE); } else { return Optional.of((T) Boolean.TRUE); @@ -349,6 +349,13 @@ } } + protected void setAttributeFromParameter(HttpServletRequest req, String name) { + final var parm = req.getParameter(name); + if (parm != null) { + req.setAttribute(name, parm); + } + } + private String sanitizeRequestPath(HttpServletRequest req) { return Optional.ofNullable(req.getPathInfo()).orElse("/"); } diff -r 89b3320557e2 -r 1dc56ab7845e src/main/java/de/uapcore/lightpit/modules/ProjectsModule.java --- a/src/main/java/de/uapcore/lightpit/modules/ProjectsModule.java Mon Jan 04 12:45:22 2021 +0100 +++ b/src/main/java/de/uapcore/lightpit/modules/ProjectsModule.java Mon Jan 04 12:45:46 2021 +0100 @@ -537,7 +537,7 @@ } @RequestMapping(requestPath = "$project/create-issue", method = HttpMethod.GET) - public void createIssue(HttpServletRequest req, HttpServletResponse resp, PathParameters pathParameters, DataAccessObject dao) throws IOException, SQLException, ServletException { + public void createIssue(HttpServletRequest req, HttpServletResponse resp, PathParameters pathParameters, DataAccessObject dao) throws IOException, ServletException { final var viewModel = new IssueEditView(); populate(viewModel, pathParameters, dao); @@ -547,7 +547,10 @@ return; } - // TODO: fix #38 - automatically select component (and version) + setAttributeFromParameter(req, "more"); + setAttributeFromParameter(req, "component"); + setAttributeFromParameter(req, "version"); + final var issue = new Issue(-1, projectInfo.getProject(), null); issue.setProject(projectInfo.getProject()); configureIssueEditor(viewModel, issue, dao); @@ -607,8 +610,12 @@ dao.insertIssue(issue); } - // TODO: implement #110 - setRedirectLocation(req, "./projects/" + issue.getProject().getNode()+"/issues/"+issue.getId()+"/view"); + if (getParameter(req, Boolean.class, "create-another").orElse(false)) { + // TODO: fix #38 - automatically select component (and version) + setRedirectLocation(req, "./projects/" + issue.getProject().getNode() + "/create-issue?more=true"); + } else{ + setRedirectLocation(req, "./projects/" + issue.getProject().getNode() + "/issues/" + issue.getId() + "/view"); + } setContentPage(req, Constants.JSP_COMMIT_SUCCESSFUL); renderSite(req, resp); diff -r 89b3320557e2 -r 1dc56ab7845e src/main/resources/localization/projects.properties --- a/src/main/resources/localization/projects.properties Mon Jan 04 12:45:22 2021 +0100 +++ b/src/main/resources/localization/projects.properties Mon Jan 04 12:45:46 2021 +0100 @@ -29,6 +29,7 @@ button.version.create=New Version button.version.edit=Edit Version button.issue.create=New Issue +button.issue.create.another=Create another Issue button.issue.edit=Edit Issue button.issue.all=All Issues button.comment=Comment diff -r 89b3320557e2 -r 1dc56ab7845e src/main/resources/localization/projects_de.properties --- a/src/main/resources/localization/projects_de.properties Mon Jan 04 12:45:22 2021 +0100 +++ b/src/main/resources/localization/projects_de.properties Mon Jan 04 12:45:46 2021 +0100 @@ -29,6 +29,7 @@ button.version.create=Neue Version button.version.edit=Version Bearbeiten button.issue.create=Neuer Vorgang +button.issue.create.another=Weiteren Vorgang erstellen button.issue.edit=Vorgang Bearbeiten button.issue.all=Alle Vorg\u00e4nge button.comment=Kommentieren diff -r 89b3320557e2 -r 1dc56ab7845e src/main/webapp/WEB-INF/jsp/issue-form.jsp --- a/src/main/webapp/WEB-INF/jsp/issue-form.jsp Mon Jan 04 12:45:22 2021 +0100 +++ b/src/main/webapp/WEB-INF/jsp/issue-form.jsp Mon Jan 04 12:45:46 2021 +0100 @@ -1,7 +1,7 @@ <%-- DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. -Copyright 2018 Mike Becker. All rights reserved. +Copyright 2020 Mike Becker. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: @@ -174,6 +174,8 @@ + checked /> +