Automated merge

Mon, 04 Jan 2021 12:45:46 +0100

author
Mike Becker <universe@uap-core.de>
date
Mon, 04 Jan 2021 12:45:46 +0100
changeset 173
1dc56ab7845e
parent 172
89b3320557e2 (current diff)
parent 168
1c3694ae224c (diff)
child 174
690a9aad3f16

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">

mercurial