diff --git a/src/main/scala/app/IssuesController.scala b/src/main/scala/app/IssuesController.scala index 136262d..e0c32c2 100644 --- a/src/main/scala/app/IssuesController.scala +++ b/src/main/scala/app/IssuesController.scala @@ -23,7 +23,13 @@ } get("/:owner/:repository/issues/:id"){ - issues.html.issue(getRepository(params("owner"), params("repository"), baseUrl).get) + val owner = params("owner") + val repository = params("repository") + val issueId = params("id") + + getIssue(owner, repository, issueId) map { issue => + issues.html.issue(issue, getRepository(owner, repository, baseUrl).get) + } getOrElse NotFound } get("/:owner/:repository/issues/new")( usersOnly { diff --git a/src/main/scala/service/IssuesService.scala b/src/main/scala/service/IssuesService.scala index 95584bf..f98f10b 100644 --- a/src/main/scala/service/IssuesService.scala +++ b/src/main/scala/service/IssuesService.scala @@ -8,6 +8,15 @@ import model._ trait IssuesService { + def getIssue(owner: String, repository: String, issueId: String) = + if (issueId forall (_.isDigit)) + Query(Issues) filter { t => + (t.userName is owner.bind) && + (t.repositoryName is repository.bind) && + (t.issueId is issueId.toInt.bind) + } firstOption + else None + def saveIssue(owner: String, repository: String, loginUser: String, title: String, content: Option[String]) = // next id number diff --git a/src/main/scala/view/helpers.scala b/src/main/scala/view/helpers.scala index f9f4847..e7d060a 100644 --- a/src/main/scala/view/helpers.scala +++ b/src/main/scala/view/helpers.scala @@ -9,14 +9,14 @@ object helpers { /** - * Format java.util.Date to "yyyy/MM/dd HH:mm:ss". + * Format java.util.Date to "yyyy-MM-dd HH:mm:ss". */ - def datetime(date: Date): String = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(date) + def datetime(date: Date): String = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date) /** - * Format java.util.Date to "yyyy/MM/dd". + * Format java.util.Date to "yyyy-MM-dd". */ - def date(date: Date): String = new SimpleDateFormat("yyyy/MM/dd").format(date) + def date(date: Date): String = new SimpleDateFormat("yyyy-MM-dd").format(date) /** * Converts Markdown of Wiki pages to HTML. diff --git a/src/main/twirl/issues/issue.scala.html b/src/main/twirl/issues/issue.scala.html index f1b1330..d56bde5 100644 --- a/src/main/twirl/issues/issue.scala.html +++ b/src/main/twirl/issues/issue.scala.html @@ -1,24 +1,25 @@ -@(repository: service.RepositoryService.RepositoryInfo)(implicit context: app.Context) +@(issue: model.Issue, repository: service.RepositoryService.RepositoryInfo)(implicit context: app.Context) @import context._ -@html.main("2.1 migration issue - ebean - Issue #1181 - " + repository.owner + "/" + repository.name){ +@import view.helpers._ +@html.main("%s - Issue #%d - %s/%s".format(issue.title, issue.issueId, repository.owner, repository.name)){ @html.header("issues", repository) @issuestab("issues", repository)
-
takezoe opened this issue
-

2.1 migration issue - ebean

+
@issue.openedUserName opened this issue
+

@issue.title

- TODO Detail + @markdown(issue.content getOrElse "No description given.", repository, false, true, true)
- @html.preview(repository, "Leave a comment", true, true, true) + @html.preview(repository, "Leave a comment", false, true, true)
diff --git a/src/main/twirl/issues/issueedit.scala.html b/src/main/twirl/issues/issueedit.scala.html index 5ea21a7..87dd12b 100644 --- a/src/main/twirl/issues/issueedit.scala.html +++ b/src/main/twirl/issues/issueedit.scala.html @@ -38,7 +38,7 @@ *@ - @html.preview(repository, "Leave a comment", true, true, true, "width: 650px; height: 200px;") + @html.preview(repository, "Leave a comment", false, true, true, "width: 650px; height: 200px;")