61 get("/%project/components/-/create", this::componentForm) |
61 get("/%project/components/-/create", this::componentForm) |
62 post("/%project/components/-/commit", this::componentCommit) |
62 post("/%project/components/-/commit", this::componentCommit) |
63 |
63 |
64 get("/%project/issues/%version/%component/%issue", this::issue) |
64 get("/%project/issues/%version/%component/%issue", this::issue) |
65 get("/%project/issues/%version/%component/%issue/edit", this::issueForm) |
65 get("/%project/issues/%version/%component/%issue/edit", this::issueForm) |
66 get("/%project/issues/%version/%component/%issue/comment", this::issueComment) |
66 post("/%project/issues/%version/%component/%issue/comment", this::issueComment) |
67 get("/%project/issues/%version/%component/-/create", this::issueForm) |
67 get("/%project/issues/%version/%component/-/create", this::issueForm) |
68 get("/%project/issues/%version/%component/-/commit", this::issueCommit) |
68 post("/%project/issues/%version/%component/-/commit", this::issueCommit) |
69 } |
69 } |
70 |
70 |
71 fun projects(http: HttpRequest, dao: DataAccessObject) { |
71 fun projects(http: HttpRequest, dao: DataAccessObject) { |
72 val projects = dao.listProjects() |
72 val projects = dao.listProjects() |
73 val projectInfos = projects.map { |
73 val projectInfos = projects.map { |
506 -1 -> null |
506 -1 -> null |
507 -2 -> component?.lead |
507 -2 -> component?.lead |
508 else -> dao.findUser(it) |
508 else -> dao.findUser(it) |
509 } |
509 } |
510 } |
510 } |
511 eta = http.param("eta")?.let { Date.valueOf(it) } |
511 eta = http.param("eta")?.let { if (it.isBlank()) null else Date.valueOf(it) } |
512 |
512 |
513 affectedVersions = http.paramArray("affected") |
513 affectedVersions = http.paramArray("affected") |
514 .mapNotNull { param -> param.toIntOrNull()?.let { Version(it, projectInfo.project.id) } } |
514 .mapNotNull { param -> param.toIntOrNull()?.let { Version(it, projectInfo.project.id) } } |
515 resolvedVersions = http.paramArray("resolved") |
515 resolvedVersions = http.paramArray("resolved") |
516 .mapNotNull { param -> param.toIntOrNull()?.let { Version(it, projectInfo.project.id) } } |
516 .mapNotNull { param -> param.toIntOrNull()?.let { Version(it, projectInfo.project.id) } } |
517 } |
517 } |
518 |
518 |
519 if (http.param("more").toBoolean()) { |
519 val openId = if (issue.id < 0) { |
|
520 dao.insertIssue(issue) |
|
521 } else { |
|
522 dao.updateIssue(issue) |
|
523 issue.id |
|
524 } |
|
525 |
|
526 if (http.param("more") != null) { |
520 http.renderCommit("${issuesHref}-/create") |
527 http.renderCommit("${issuesHref}-/create") |
521 } else { |
528 } else { |
522 http.renderCommit("${issuesHref}${issue.id}") |
529 http.renderCommit("${issuesHref}${openId}") |
523 } |
530 } |
524 } |
531 } |
525 } |
532 } |
526 } |
533 } |