mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-15 18:05:50 +01:00
Show the number of milestones on the sidebar menu (#2500)
This commit is contained in:
@@ -342,6 +342,10 @@ trait RepositoryService {
|
|||||||
repository.originUserName.getOrElse(repository.userName),
|
repository.originUserName.getOrElse(repository.userName),
|
||||||
repository.originRepositoryName.getOrElse(repository.repositoryName)
|
repository.originRepositoryName.getOrElse(repository.repositoryName)
|
||||||
),
|
),
|
||||||
|
getOpenMilestones(
|
||||||
|
repository.originUserName.getOrElse(repository.userName),
|
||||||
|
repository.originRepositoryName.getOrElse(repository.repositoryName)
|
||||||
|
),
|
||||||
getRepositoryManagers(repository.userName, repository.repositoryName)
|
getRepositoryManagers(repository.userName, repository.repositoryName)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -697,6 +701,14 @@ trait RepositoryService {
|
|||||||
(t.originUserName === userName.bind) && (t.originRepositoryName === repositoryName.bind)
|
(t.originUserName === userName.bind) && (t.originRepositoryName === repositoryName.bind)
|
||||||
}.length).first
|
}.length).first
|
||||||
|
|
||||||
|
private def getOpenMilestones(userName: String, repositoryName: String)(implicit s: Session): Int =
|
||||||
|
Query(
|
||||||
|
Milestones
|
||||||
|
.filter(_.byRepository(userName, repositoryName))
|
||||||
|
.filter(_.closedDate.isEmpty)
|
||||||
|
.length
|
||||||
|
).first
|
||||||
|
|
||||||
def getForkedRepositories(userName: String, repositoryName: String)(implicit s: Session): List[Repository] =
|
def getForkedRepositories(userName: String, repositoryName: String)(implicit s: Session): List[Repository] =
|
||||||
Repositories
|
Repositories
|
||||||
.filter { t =>
|
.filter { t =>
|
||||||
@@ -749,6 +761,7 @@ object RepositoryService {
|
|||||||
issueCount: Int,
|
issueCount: Int,
|
||||||
pullCount: Int,
|
pullCount: Int,
|
||||||
forkedCount: Int,
|
forkedCount: Int,
|
||||||
|
milestoneCount: Int,
|
||||||
branchList: Seq[String],
|
branchList: Seq[String],
|
||||||
tags: Seq[JGitUtil.TagInfo],
|
tags: Seq[JGitUtil.TagInfo],
|
||||||
managers: Seq[String]
|
managers: Seq[String]
|
||||||
@@ -763,15 +776,27 @@ object RepositoryService {
|
|||||||
issueCount: Int,
|
issueCount: Int,
|
||||||
pullCount: Int,
|
pullCount: Int,
|
||||||
forkedCount: Int,
|
forkedCount: Int,
|
||||||
|
milestoneCount: Int,
|
||||||
managers: Seq[String]
|
managers: Seq[String]
|
||||||
) =
|
) =
|
||||||
this(repo.owner, repo.name, model, issueCount, pullCount, forkedCount, repo.branchList, repo.tags, managers)
|
this(
|
||||||
|
repo.owner,
|
||||||
|
repo.name,
|
||||||
|
model,
|
||||||
|
issueCount,
|
||||||
|
pullCount,
|
||||||
|
forkedCount,
|
||||||
|
milestoneCount,
|
||||||
|
repo.branchList,
|
||||||
|
repo.tags,
|
||||||
|
managers
|
||||||
|
)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates instance without issue and pull request count.
|
* Creates instance without issue, pull request, and milestone count.
|
||||||
*/
|
*/
|
||||||
def this(repo: JGitUtil.RepositoryInfo, model: Repository, forkedCount: Int, managers: Seq[String]) =
|
def this(repo: JGitUtil.RepositoryInfo, model: Repository, forkedCount: Int, managers: Seq[String]) =
|
||||||
this(repo.owner, repo.name, model, 0, 0, forkedCount, repo.branchList, repo.tags, managers)
|
this(repo.owner, repo.name, model, 0, 0, forkedCount, 0, repo.branchList, repo.tags, managers)
|
||||||
|
|
||||||
def httpUrl(implicit context: Context): String = RepositoryService.httpUrl(owner, name)
|
def httpUrl(implicit context: Context): String = RepositoryService.httpUrl(owner, name)
|
||||||
def sshUrl(implicit context: Context): Option[String] = RepositoryService.sshUrl(owner, name)
|
def sshUrl(implicit context: Context): Option[String] = RepositoryService.sshUrl(owner, name)
|
||||||
|
|||||||
@@ -40,7 +40,7 @@
|
|||||||
@menuitem("/pulls", "pulls", "Pull requests", "git-pull-request", repository.pullCount)
|
@menuitem("/pulls", "pulls", "Pull requests", "git-pull-request", repository.pullCount)
|
||||||
@menuitem("/issues/labels", "labels", "Labels", "tag")
|
@menuitem("/issues/labels", "labels", "Labels", "tag")
|
||||||
@menuitem("/issues/priorities", "priorities", "Priorities", "flame")
|
@menuitem("/issues/priorities", "priorities", "Priorities", "flame")
|
||||||
@menuitem("/issues/milestones", "milestones", "Milestones", "milestone")
|
@menuitem("/issues/milestones", "milestones", "Milestones", "milestone", repository.milestoneCount)
|
||||||
} else {
|
} else {
|
||||||
@repository.repository.options.externalIssuesUrl.map { externalIssuesUrl =>
|
@repository.repository.options.externalIssuesUrl.map { externalIssuesUrl =>
|
||||||
@menuitem(externalIssuesUrl, "issues", "Issues", "issue-opened")
|
@menuitem(externalIssuesUrl, "issues", "Issues", "issue-opened")
|
||||||
|
|||||||
@@ -79,6 +79,7 @@ object ApiSpecModels {
|
|||||||
issueCount = 1,
|
issueCount = 1,
|
||||||
pullCount = 1,
|
pullCount = 1,
|
||||||
forkedCount = 1,
|
forkedCount = 1,
|
||||||
|
milestoneCount = 1,
|
||||||
branchList = Seq("master", "develop"),
|
branchList = Seq("master", "develop"),
|
||||||
tags = Seq(
|
tags = Seq(
|
||||||
TagInfo(name = "v1.0", time = date("2015-05-05T23:40:27Z"), id = "id1", message = "1.0 released"),
|
TagInfo(name = "v1.0", time = date("2015-05-05T23:40:27Z"), id = "id1", message = "1.0 released"),
|
||||||
|
|||||||
Reference in New Issue
Block a user