diff --git a/src/main/scala/gitbucket/core/controller/DashboardController.scala b/src/main/scala/gitbucket/core/controller/DashboardController.scala index 24d6786..ae86de4 100644 --- a/src/main/scala/gitbucket/core/controller/DashboardController.scala +++ b/src/main/scala/gitbucket/core/controller/DashboardController.scala @@ -21,11 +21,17 @@ with WebHookPullRequestService with WebHookPullRequestReviewCommentService with MilestonesService + with CommitStatusService with UsersAuthenticator with RequestCache trait DashboardControllerBase extends ControllerBase { - self: IssuesService with PullRequestService with RepositoryService with AccountService with UsersAuthenticator => + self: IssuesService + with PullRequestService + with RepositoryService + with AccountService + with CommitStatusService + with UsersAuthenticator => get("/dashboard/repos")(usersOnly { val repos = getVisibleRepositories( @@ -86,9 +92,10 @@ val condition = getOrCreateCondition(Keys.Session.DashboardIssues, filter, userName) val userRepos = getUserRepositories(userName, true).map(repo => repo.owner -> repo.name) val page = IssueSearchCondition.page(request) + val issues = searchIssue(condition, IssueSearchOption.Issues, (page - 1) * IssueLimit, IssueLimit, userRepos: _*) html.issues( - searchIssue(condition, IssueSearchOption.Issues, (page - 1) * IssueLimit, IssueLimit, userRepos: _*), + issues.map(issue => (issue, None)), page, countIssue(condition.copy(state = "open"), IssueSearchOption.Issues, userRepos: _*), countIssue(condition.copy(state = "closed"), IssueSearchOption.Issues, userRepos: _*), @@ -116,15 +123,21 @@ val condition = getOrCreateCondition(Keys.Session.DashboardPulls, filter, userName) val allRepos = getAllRepositories(userName) val page = IssueSearchCondition.page(request) + val issues = searchIssue( + condition, + IssueSearchOption.PullRequests, + (page - 1) * PullRequestLimit, + PullRequestLimit, + allRepos: _* + ) + val status = issues.map { issue => + issue.commitId.flatMap { commitId => + getCommitStatusWithSummary(issue.issue.userName, issue.issue.repositoryName, commitId) + } + } html.pulls( - searchIssue( - condition, - IssueSearchOption.PullRequests, - (page - 1) * PullRequestLimit, - PullRequestLimit, - allRepos: _* - ), + issues.zip(status), page, countIssue(condition.copy(state = "open"), IssueSearchOption.PullRequests, allRepos: _*), countIssue(condition.copy(state = "closed"), IssueSearchOption.PullRequests, allRepos: _*), diff --git a/src/main/scala/gitbucket/core/controller/IssuesController.scala b/src/main/scala/gitbucket/core/controller/IssuesController.scala index a0b711f..5732424 100644 --- a/src/main/scala/gitbucket/core/controller/IssuesController.scala +++ b/src/main/scala/gitbucket/core/controller/IssuesController.scala @@ -467,13 +467,15 @@ defining(repository.owner, repository.name) { case (owner, repoName) => val page = IssueSearchCondition.page(request) - // retrieve search condition val condition = IssueSearchCondition(request) + // search issues + val issues = + searchIssue(condition, IssueSearchOption.Issues, (page - 1) * IssueLimit, IssueLimit, owner -> repoName) html.list( "issues", - searchIssue(condition, IssueSearchOption.Issues, (page - 1) * IssueLimit, IssueLimit, owner -> repoName), + issues.map(issue => (issue, None)), page, getAssignableUserNames(owner, repoName), getMilestones(owner, repoName), diff --git a/src/main/scala/gitbucket/core/controller/MilestonesController.scala b/src/main/scala/gitbucket/core/controller/MilestonesController.scala index de445c4..ceaae31 100644 --- a/src/main/scala/gitbucket/core/controller/MilestonesController.scala +++ b/src/main/scala/gitbucket/core/controller/MilestonesController.scala @@ -2,7 +2,13 @@ import gitbucket.core.issues.milestones.html import gitbucket.core.service.IssuesService.{IssueLimit, IssueSearchCondition} -import gitbucket.core.service.{AccountService, IssueSearchOption, MilestonesService, RepositoryService} +import gitbucket.core.service.{ + AccountService, + CommitStatusService, + IssueSearchOption, + MilestonesService, + RepositoryService +} import gitbucket.core.util.Implicits._ import gitbucket.core.util.{ReferrerAuthenticator, WritableUsersAuthenticator} import gitbucket.core.util.SyntaxSugars._ @@ -15,11 +21,16 @@ with MilestonesService with RepositoryService with AccountService + with CommitStatusService with ReferrerAuthenticator with WritableUsersAuthenticator trait MilestonesControllerBase extends ControllerBase { - self: MilestonesService with RepositoryService with ReferrerAuthenticator with WritableUsersAuthenticator => + self: MilestonesService + with RepositoryService + with CommitStatusService + with ReferrerAuthenticator + with WritableUsersAuthenticator => case class MilestoneForm(title: String, description: Option[String], dueDate: Option[java.util.Date]) @@ -45,15 +56,22 @@ request, milestone.get.title ) + val issues = searchIssue( + condition, + IssueSearchOption.Both, + (page - 1) * IssueLimit, + IssueLimit, + repository.owner -> repository.name + ) + val status = issues.map { issue => + issue.commitId.flatMap { commitId => + getCommitStatusWithSummary(issue.issue.userName, issue.issue.repositoryName, commitId) + } + } + html.milestone( condition.state, - searchIssue( - condition, - IssueSearchOption.Both, - (page - 1) * IssueLimit, - IssueLimit, - repository.owner -> repository.name - ), + issues.zip(status), page, getAssignableUserNames(repository.owner, repository.name), getPriorities(repository.owner, repository.name), diff --git a/src/main/scala/gitbucket/core/controller/PullRequestsController.scala b/src/main/scala/gitbucket/core/controller/PullRequestsController.scala index c93c864..99a28ca 100644 --- a/src/main/scala/gitbucket/core/controller/PullRequestsController.scala +++ b/src/main/scala/gitbucket/core/controller/PullRequestsController.scala @@ -219,7 +219,7 @@ val branchProtection = getProtectedBranchInfo(owner, name, pullreq.branch) val mergeStatus = PullRequestService.MergeStatus( conflictMessage = conflictMessage, - commitStatues = getCommitStatues(owner, name, pullreq.commitIdTo), + commitStatuses = getCommitStatuses(owner, name, pullreq.commitIdTo), branchProtection = branchProtection, branchIsOutOfDate = JGitUtil.getShaByRef(owner, name, pullreq.branch) != Some(pullreq.commitIdFrom), needStatusCheck = context.loginAccount @@ -637,19 +637,26 @@ defining(repository.owner, repository.name) { case (owner, repoName) => val page = IssueSearchCondition.page(request) - // retrieve search condition val condition = IssueSearchCondition(request) + // search issues + val issues = searchIssue( + condition, + IssueSearchOption.PullRequests, + (page - 1) * PullRequestLimit, + PullRequestLimit, + owner -> repoName + ) + // commit status + val status = issues.map { issue => + issue.commitId.flatMap { commitId => + getCommitStatusWithSummary(owner, repoName, commitId) + } + } gitbucket.core.issues.html.list( "pulls", - searchIssue( - condition, - IssueSearchOption.PullRequests, - (page - 1) * PullRequestLimit, - PullRequestLimit, - owner -> repoName - ), + issues.zip(status), page, getAssignableUserNames(owner, repoName), getMilestones(owner, repoName), diff --git a/src/main/scala/gitbucket/core/controller/RepositorySettingsController.scala b/src/main/scala/gitbucket/core/controller/RepositorySettingsController.scala index b47aab2..bdaf277 100644 --- a/src/main/scala/gitbucket/core/controller/RepositorySettingsController.scala +++ b/src/main/scala/gitbucket/core/controller/RepositorySettingsController.scala @@ -186,7 +186,7 @@ redirect(s"/${repository.owner}/${repository.name}/settings/branches") } else { val protection = ApiBranchProtection(getProtectedBranchInfo(repository.owner, repository.name, branch)) - val lastWeeks = getRecentStatuesContexts( + val lastWeeks = getRecentStatusContexts( repository.owner, repository.name, Date.from(LocalDateTime.now.minusWeeks(1).toInstant(ZoneOffset.UTC)) diff --git a/src/main/scala/gitbucket/core/controller/RepositoryViewerController.scala b/src/main/scala/gitbucket/core/controller/RepositoryViewerController.scala index da73ca8..6caf710 100644 --- a/src/main/scala/gitbucket/core/controller/RepositoryViewerController.scala +++ b/src/main/scala/gitbucket/core/controller/RepositoryViewerController.scala @@ -4,7 +4,6 @@ import scala.util.Using import javax.servlet.http.{HttpServletRequest, HttpServletResponse} -import gitbucket.core.plugin.PluginRegistry import gitbucket.core.repo.html import gitbucket.core.helper import gitbucket.core.model.activity.DeleteBranchInfo @@ -15,9 +14,9 @@ import gitbucket.core.util.SyntaxSugars._ import gitbucket.core.util.Implicits._ import gitbucket.core.util.Directory._ -import gitbucket.core.model.{Account, CommitState, CommitStatus} +import gitbucket.core.model.Account import gitbucket.core.service.RepositoryService.RepositoryInfo -import gitbucket.core.util.JGitUtil.{CommitInfo, createBranch} +import gitbucket.core.util.JGitUtil.CommitInfo import gitbucket.core.view import gitbucket.core.view.helpers import org.apache.commons.compress.archivers.{ArchiveEntry, ArchiveOutputStream} @@ -263,23 +262,8 @@ val (branchName, path) = repository.splitPath(multiParams("splat").head) val page = params.get("page").flatMap(_.toIntOpt).getOrElse(1) - def getStatuses(sha: String): List[CommitStatus] = { - getCommitStatues(repository.owner, repository.name, sha) - } - - def getSummary(statuses: List[CommitStatus]): (CommitState, String) = { - val stateMap = statuses.groupBy(_.state) - val state = CommitState.combine(stateMap.keySet) - val summary = stateMap.map { case (keyState, states) => s"${states.size} ${keyState.name}" }.mkString(", ") - state -> summary - } - Using.resource(Git.open(getRepositoryDir(repository.owner, repository.name))) { git => - def getTags(sha: String): List[String] = { - JGitUtil.getTagsOnCommit(git, sha) - } - JGitUtil.getCommitLog(git, branchName, page, 30, path) match { case Right((logs, hasNext)) => html.commits( @@ -288,34 +272,33 @@ repository, logs .map { - c => - CommitInfo( - id = c.id, - shortMessage = c.shortMessage, - fullMessage = c.fullMessage, - parents = c.parents, - authorTime = c.authorTime, - authorName = c.authorName, - authorEmailAddress = c.authorEmailAddress, - commitTime = c.commitTime, - committerName = c.committerName, - committerEmailAddress = c.committerEmailAddress, - commitSign = c.commitSign, - verified = c.commitSign - .flatMap { s => - GpgUtil.verifySign(s) - } + commit => + ( + CommitInfo( + id = commit.id, + shortMessage = commit.shortMessage, + fullMessage = commit.fullMessage, + parents = commit.parents, + authorTime = commit.authorTime, + authorName = commit.authorName, + authorEmailAddress = commit.authorEmailAddress, + commitTime = commit.commitTime, + committerName = commit.committerName, + committerEmailAddress = commit.committerEmailAddress, + commitSign = commit.commitSign, + verified = commit.commitSign.flatMap(GpgUtil.verifySign) + ), + JGitUtil.getTagsOnCommit(git, commit.id), + getCommitStatusWithSummary(repository.owner, repository.name, commit.id) ) } - .splitWith { (commit1, commit2) => - view.helpers.date(commit1.commitTime) == view.helpers.date(commit2.commitTime) + .splitWith { + case ((commit1, _, _), (commit2, _, _)) => + view.helpers.date(commit1.commitTime) == view.helpers.date(commit2.commitTime) }, page, hasNext, - hasDeveloperRole(repository.owner, repository.name, context.loginAccount), - getStatuses, - getSummary, - getTags + hasDeveloperRole(repository.owner, repository.name, context.loginAccount) ) case Left(_) => NotFound() } @@ -731,6 +714,7 @@ new JGitUtil.CommitInfo(revCommit), JGitUtil.getBranchesOfCommit(git, revCommit.getName), JGitUtil.getTagsOfCommit(git, revCommit.getName), + getCommitStatusWithSummary(repository.owner, repository.name, revCommit.getName), getCommitComments(repository.owner, repository.name, id, true), repository, diffs, @@ -889,19 +873,20 @@ defaultBranch = repository.repository.defaultBranch, origin = repository.repository.originUserName.isEmpty ) - .sortBy(br => (br.mergeInfo.isEmpty, br.commitTime)) + .sortBy(branch => (branch.mergeInfo.isEmpty, branch.commitTime)) .map( - br => + branch => ( - br, + branch, getPullRequestByRequestCommit( repository.owner, repository.name, repository.repository.defaultBranch, - br.name, - br.commitId + branch.name, + branch.commitId ), - protectedBranches.contains(br.name) + protectedBranches.contains(branch.name), + getCommitStatusWithSummary(repository.owner, repository.name, branch.commitId) ) ) .reverse @@ -1085,6 +1070,7 @@ repository, if (path == ".") Nil else path.split("/").toList, // current path new JGitUtil.CommitInfo(lastModifiedCommit), // last modified commit + getCommitStatusWithSummary(repository.owner, repository.name, lastModifiedCommit.getName), commitCount, files, readme, diff --git a/src/main/scala/gitbucket/core/controller/api/ApiRepositoryStatusControllerBase.scala b/src/main/scala/gitbucket/core/controller/api/ApiRepositoryStatusControllerBase.scala index 787acda..c98f60d 100644 --- a/src/main/scala/gitbucket/core/controller/api/ApiRepositoryStatusControllerBase.scala +++ b/src/main/scala/gitbucket/core/controller/api/ApiRepositoryStatusControllerBase.scala @@ -47,7 +47,7 @@ ref <- params.get("ref") sha <- JGitUtil.getShaByRef(repository.owner, repository.name, ref) } yield { - JsonFormat(getCommitStatuesWithCreator(repository.owner, repository.name, sha).map { + JsonFormat(getCommitStatusesWithCreator(repository.owner, repository.name, sha).map { case (status, creator) => ApiCommitStatus(status, ApiUser(creator)) }) @@ -73,7 +73,7 @@ owner <- getAccountByUserName(repository.owner) sha <- JGitUtil.getShaByRef(repository.owner, repository.name, ref) } yield { - val statuses = getCommitStatuesWithCreator(repository.owner, repository.name, sha) + val statuses = getCommitStatusesWithCreator(repository.owner, repository.name, sha) JsonFormat(ApiCombinedCommitStatus(sha, statuses, ApiRepository(repository, owner))) }) getOrElse NotFound() }) diff --git a/src/main/scala/gitbucket/core/service/CommitStatusService.scala b/src/main/scala/gitbucket/core/service/CommitStatusService.scala index 25a9b6b..47c561b 100644 --- a/src/main/scala/gitbucket/core/service/CommitStatusService.scala +++ b/src/main/scala/gitbucket/core/service/CommitStatusService.scala @@ -47,6 +47,18 @@ ) } + def getCommitStatusWithSummary(userName: String, repositoryName: String, sha: String)( + implicit s: Session + ): Option[(CommitState, List[CommitStatus])] = { + val statuses = getCommitStatuses(userName, repositoryName, sha) + if (statuses.isEmpty) { + None + } else { + val summary = CommitState.combine(statuses.groupBy(_.state).keySet) + Some((summary, statuses)) + } + } + def getCommitStatus(userName: String, repositoryName: String, id: Int)(implicit s: Session): Option[CommitStatus] = CommitStatuses.filter(t => t.byPrimaryKey(id) && t.byRepository(userName, repositoryName)).firstOption @@ -55,10 +67,12 @@ ): Option[CommitStatus] = CommitStatuses.filter(t => t.byCommit(userName, repositoryName, sha) && t.context === context.bind).firstOption - def getCommitStatues(userName: String, repositoryName: String, sha: String)(implicit s: Session): List[CommitStatus] = - byCommitStatues(userName, repositoryName, sha).list + def getCommitStatuses(userName: String, repositoryName: String, sha: String)( + implicit s: Session + ): List[CommitStatus] = + byCommitStatus(userName, repositoryName, sha).list - def getRecentStatuesContexts(userName: String, repositoryName: String, time: java.util.Date)( + def getRecentStatusContexts(userName: String, repositoryName: String, time: java.util.Date)( implicit s: Session ): List[String] = CommitStatuses @@ -68,15 +82,15 @@ .map(_._1) .list - def getCommitStatuesWithCreator(userName: String, repositoryName: String, sha: String)( + def getCommitStatusesWithCreator(userName: String, repositoryName: String, sha: String)( implicit s: Session ): List[(CommitStatus, Account)] = - byCommitStatues(userName, repositoryName, sha) + byCommitStatus(userName, repositoryName, sha) .join(Accounts) .filter { case (t, a) => t.creator === a.userName } .list - protected def byCommitStatues(userName: String, repositoryName: String, sha: String)(implicit s: Session) = + protected def byCommitStatus(userName: String, repositoryName: String, sha: String)(implicit s: Session) = CommitStatuses.filter(t => t.byCommit(userName, repositoryName, sha)).sortBy(_.updatedDate desc) } diff --git a/src/main/scala/gitbucket/core/service/IssuesService.scala b/src/main/scala/gitbucket/core/service/IssuesService.scala index b827dc6..98e8f51 100644 --- a/src/main/scala/gitbucket/core/service/IssuesService.scala +++ b/src/main/scala/gitbucket/core/service/IssuesService.scala @@ -188,37 +188,6 @@ .toMap } - def getCommitStatues(userName: String, repositoryName: String, issueId: Int)( - implicit s: Session - ): Option[CommitStatusInfo] = { - val status = PullRequests - .filter { pr => - pr.userName === userName.bind && pr.repositoryName === repositoryName.bind && pr.issueId === issueId.bind - } - .join(CommitStatuses) - .on { - case pr ~ cs => - pr.userName === cs.userName && pr.repositoryName === cs.repositoryName && pr.commitIdTo === cs.commitId - } - .list - - if (status.nonEmpty) { - val (_, cs) = status.head - Some( - CommitStatusInfo( - count = status.length, - successCount = status.count(_._2.state == CommitState.SUCCESS), - context = (if (status.length == 1) Some(cs.context) else None), - state = (if (status.length == 1) Some(cs.state) else None), - targetUrl = (if (status.length == 1) cs.targetUrl else None), - description = (if (status.length == 1) cs.description else None) - ) - ) - } else { - None - } - } - /** * Returns the search result against issues. * @@ -246,9 +215,11 @@ .on { case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 => t1.byMilestone(t5.userName, t5.repositoryName, t5.milestoneId) } .joinLeft(Priorities) .on { case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 ~ t6 => t1.byPriority(t6.userName, t6.repositoryName, t6.priorityId) } - .sortBy { case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 ~ t6 => i asc } + .joinLeft(PullRequests) + .on { case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 ~ t6 ~ t7 => t1.byIssue(t7.userName, t7.repositoryName, t7.issueId) } + .sortBy { case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 ~ t6 ~ t7 => i asc } .map { - case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 ~ t6 => + case t1 ~ t2 ~ i ~ t3 ~ t4 ~ t5 ~ t6 ~ t7 => ( t1, t2.commentCount, @@ -256,7 +227,8 @@ t4.map(_.labelName), t4.map(_.color), t5.map(_.title), - t6.map(_.priorityName) + t6.map(_.priorityName), + t7.map(_.commitIdTo) ) } .list @@ -266,7 +238,7 @@ result.map { issues => issues.head match { - case (issue, commentCount, _, _, _, milestone, priority) => + case (issue, commentCount, _, _, _, milestone, priority, commitId) => IssueInfo( issue, issues.flatMap { t => @@ -275,7 +247,7 @@ milestone, priority, commentCount, - getCommitStatues(issue.userName, issue.repositoryName, issue.issueId) + commitId ) } } toList @@ -974,24 +946,14 @@ } } - case class CommitStatusInfo( - count: Int, - successCount: Int, - context: Option[String], - state: Option[CommitState], - targetUrl: Option[String], - description: Option[String] - ) - case class IssueInfo( issue: Issue, labels: List[Label], milestone: Option[String], priority: Option[String], commentCount: Int, - status: Option[CommitStatusInfo] + commitId: Option[String] ) - } sealed trait IssueSearchOption diff --git a/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala b/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala index c0639e4..209c5e3 100644 --- a/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala +++ b/src/main/scala/gitbucket/core/service/ProtectedBranchService.scala @@ -154,7 +154,7 @@ if (contexts.isEmpty) { Set.empty } else { - contexts.toSet -- getCommitStatues(owner, repository, sha1) + contexts.toSet -- getCommitStatuses(owner, repository, sha1) .filter(_.state == CommitState.SUCCESS) .map(_.context) .toSet diff --git a/src/main/scala/gitbucket/core/service/PullRequestService.scala b/src/main/scala/gitbucket/core/service/PullRequestService.scala index 0b211a5..5344a17 100644 --- a/src/main/scala/gitbucket/core/service/PullRequestService.scala +++ b/src/main/scala/gitbucket/core/service/PullRequestService.scala @@ -611,7 +611,7 @@ case class MergeStatus( conflictMessage: Option[String], - commitStatues: List[CommitStatus], + commitStatuses: List[CommitStatus], branchProtection: ProtectedBranchService.ProtectedBranchInfo, branchIsOutOfDate: Boolean, hasUpdatePermission: Boolean, @@ -622,7 +622,7 @@ val hasConflict = conflictMessage.isDefined val statuses: List[CommitStatus] = - commitStatues ++ (branchProtection.contexts.toSet -- commitStatues.map(_.context).toSet) + commitStatuses ++ (branchProtection.contexts.toSet -- commitStatuses.map(_.context).toSet) .map(CommitStatus.pending(branchProtection.owner, branchProtection.repository, _)) val hasRequiredStatusProblem = needStatusCheck && branchProtection.contexts.exists( context => statuses.find(_.context == context).map(_.state) != Some(CommitState.SUCCESS) diff --git a/src/main/twirl/gitbucket/core/dashboard/issues.scala.html b/src/main/twirl/gitbucket/core/dashboard/issues.scala.html index c2e92ed..33d9a18 100644 --- a/src/main/twirl/gitbucket/core/dashboard/issues.scala.html +++ b/src/main/twirl/gitbucket/core/dashboard/issues.scala.html @@ -1,4 +1,4 @@ -@(issues: List[gitbucket.core.service.IssuesService.IssueInfo], +@(issues: List[(gitbucket.core.service.IssuesService.IssueInfo, Option[(gitbucket.core.model.CommitState, List[gitbucket.core.model.CommitStatus])])], page: Int, openCount: Int, closedCount: Int, diff --git a/src/main/twirl/gitbucket/core/dashboard/issueslist.scala.html b/src/main/twirl/gitbucket/core/dashboard/issueslist.scala.html index 5476ad5..9105bd0 100644 --- a/src/main/twirl/gitbucket/core/dashboard/issueslist.scala.html +++ b/src/main/twirl/gitbucket/core/dashboard/issueslist.scala.html @@ -1,4 +1,4 @@ -@(issues: List[gitbucket.core.service.IssuesService.IssueInfo], +@(issues: List[(gitbucket.core.service.IssuesService.IssueInfo, Option[(gitbucket.core.model.CommitState, List[gitbucket.core.model.CommitStatus])])], page: Int, openCount: Int, closedCount: Int, @@ -17,7 +17,7 @@
- @issues.map { case IssueInfo(issue, labels, milestone, priority, commentCount, commitStatus) => { + @issues.map { case (IssueInfo(issue, labels, milestone, priority, commentCount, commitId), status) =>@helpers.date(day.head.commitTime) | - @day.zipWithIndex.map { case (commit, i) => +@helpers.date(day.head._1.commitTime) | + @day.zipWithIndex.map { case ((commit, tags, status), i) => @if(i != 0){
---|---|
@@ -47,15 +44,13 @@
Unverified
}
}
- @defining(getTags(commit.id)) { tags =>
- @if(tags.nonEmpty){
-
-
- @tags.map { tag =>
- @tag
- }
-
- }
+ @if(tags.nonEmpty){
+
+
+ @tags.map { tag =>
+ @tag
+ }
+
}
@@ -127,20 +101,9 @@
Browse files » @@ -79,30 +74,9 @@ } @helpers.user(commit.committerName, commit.committerEmailAddress, "username") committed @gitbucket.core.helper.html.datetimeago(commit.commitTime) - @defining({ - val statuses = getStatuses(commit.id) - val (summary, summaryText) = getSummary(statuses) - (statuses, summary, summaryText) - }){ case (statuses, summaryState, summaryText) => - @if(statuses.nonEmpty){ - @helpers.commitStateIcon(summaryState) - @helpers.commitStateText(summaryState, commit.id) - - @summaryText checks - Show all checks - - } - } + @status.map { case (summary, statuses) => + @gitbucket.core.helper.html.commitstatus(commit.id, summary, statuses) + } |