mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-06 05:25:50 +01:00
(refs #508)Remove repository filter
This commit is contained in:
@@ -29,23 +29,19 @@ trait DashboardControllerBase extends ControllerBase {
|
|||||||
})
|
})
|
||||||
|
|
||||||
get("/dashboard/pulls")(usersOnly {
|
get("/dashboard/pulls")(usersOnly {
|
||||||
searchPullRequests("created_by", None)
|
searchPullRequests("created_by")
|
||||||
})
|
})
|
||||||
|
|
||||||
get("/dashboard/pulls/created_by")(usersOnly {
|
get("/dashboard/pulls/created_by")(usersOnly {
|
||||||
searchPullRequests("created_by", None)
|
searchPullRequests("created_by")
|
||||||
})
|
})
|
||||||
|
|
||||||
get("/dashboard/pulls/assigned")(usersOnly {
|
get("/dashboard/pulls/assigned")(usersOnly {
|
||||||
searchPullRequests("assigned", None)
|
searchPullRequests("assigned")
|
||||||
})
|
})
|
||||||
|
|
||||||
get("/dashboard/pulls/mentioned")(usersOnly {
|
get("/dashboard/pulls/mentioned")(usersOnly {
|
||||||
searchPullRequests("mentioned", None)
|
searchPullRequests("mentioned")
|
||||||
})
|
|
||||||
|
|
||||||
get("/dashboard/pulls/for/:owner/:repository")(usersOnly {
|
|
||||||
searchPullRequests("all", Some(params("owner") + "/" + params("repository")))
|
|
||||||
})
|
})
|
||||||
|
|
||||||
private def searchIssues(filter: String) = {
|
private def searchIssues(filter: String) = {
|
||||||
@@ -72,7 +68,7 @@ trait DashboardControllerBase extends ControllerBase {
|
|||||||
getGroupNames(userName))
|
getGroupNames(userName))
|
||||||
}
|
}
|
||||||
|
|
||||||
private def searchPullRequests(filter: String, repository: Option[String]) = {
|
private def searchPullRequests(filter: String) = {
|
||||||
import IssuesService._
|
import IssuesService._
|
||||||
import PullRequestService._
|
import PullRequestService._
|
||||||
|
|
||||||
@@ -80,7 +76,7 @@ trait DashboardControllerBase extends ControllerBase {
|
|||||||
val condition = session.putAndGet(Keys.Session.DashboardPulls, {
|
val condition = session.putAndGet(Keys.Session.DashboardPulls, {
|
||||||
if(request.hasQueryString) IssueSearchCondition(request)
|
if(request.hasQueryString) IssueSearchCondition(request)
|
||||||
else session.getAs[IssueSearchCondition](Keys.Session.DashboardPulls).getOrElse(IssueSearchCondition())
|
else session.getAs[IssueSearchCondition](Keys.Session.DashboardPulls).getOrElse(IssueSearchCondition())
|
||||||
}.copy(repo = repository))
|
})
|
||||||
|
|
||||||
val userName = context.loginAccount.get.userName
|
val userName = context.loginAccount.get.userName
|
||||||
val allRepos = getAllRepositories(userName)
|
val allRepos = getAllRepositories(userName)
|
||||||
|
|||||||
@@ -78,29 +78,6 @@ trait IssuesService {
|
|||||||
.toMap
|
.toMap
|
||||||
}
|
}
|
||||||
|
|
||||||
// /**
|
|
||||||
// * Returns list which contains issue count for each repository.
|
|
||||||
// * If the issue does not exist, its repository is not included in the result.
|
|
||||||
// *
|
|
||||||
// * @param condition the search condition
|
|
||||||
// * @param onlyPullRequest if true then returns only pull request, false then returns both of issue and pull request.
|
|
||||||
// * @param repos Tuple of the repository owner and the repository name
|
|
||||||
// * @return list which contains issue count for each repository
|
|
||||||
// */
|
|
||||||
// def countIssueGroupByRepository(
|
|
||||||
// condition: IssueSearchCondition, filterUser: Map[String, String], onlyPullRequest: Boolean,
|
|
||||||
// repos: (String, String)*)(implicit s: Session): List[(String, String, Int)] = {
|
|
||||||
// searchIssueQuery(repos, condition.copy(repo = None), filterUser, onlyPullRequest)
|
|
||||||
// .groupBy { t =>
|
|
||||||
// t.userName -> t.repositoryName
|
|
||||||
// }
|
|
||||||
// .map { case (repo, t) =>
|
|
||||||
// (repo._1, repo._2, t.length)
|
|
||||||
// }
|
|
||||||
// .sortBy(_._3 desc)
|
|
||||||
// .list
|
|
||||||
// }
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the search result against issues.
|
* Returns the search result against issues.
|
||||||
*
|
*
|
||||||
@@ -161,11 +138,6 @@ trait IssuesService {
|
|||||||
private def searchIssueQuery(repos: Seq[(String, String)], condition: IssueSearchCondition,
|
private def searchIssueQuery(repos: Seq[(String, String)], condition: IssueSearchCondition,
|
||||||
filterUser: Map[String, String], pullRequest: Boolean)(implicit s: Session) =
|
filterUser: Map[String, String], pullRequest: Boolean)(implicit s: Session) =
|
||||||
Issues filter { t1 =>
|
Issues filter { t1 =>
|
||||||
condition.repo
|
|
||||||
.map { _.split('/') match { case array => Seq(array(0) -> array(1)) } }
|
|
||||||
.getOrElse (repos)
|
|
||||||
.map { case (owner, repository) => t1.byRepository(owner, repository) }
|
|
||||||
.foldLeft[Column[Boolean]](false) ( _ || _ ) &&
|
|
||||||
(t1.closed === (condition.state == "closed").bind) &&
|
(t1.closed === (condition.state == "closed").bind) &&
|
||||||
(t1.milestoneId === condition.milestoneId.get.get.bind, condition.milestoneId.flatten.isDefined) &&
|
(t1.milestoneId === condition.milestoneId.get.get.bind, condition.milestoneId.flatten.isDefined) &&
|
||||||
(t1.milestoneId.? isEmpty, condition.milestoneId == Some(None)) &&
|
(t1.milestoneId.? isEmpty, condition.milestoneId == Some(None)) &&
|
||||||
@@ -354,7 +326,6 @@ object IssuesService {
|
|||||||
milestoneId: Option[Option[Int]] = None,
|
milestoneId: Option[Option[Int]] = None,
|
||||||
author: Option[String] = None,
|
author: Option[String] = None,
|
||||||
assigned: Option[String] = None,
|
assigned: Option[String] = None,
|
||||||
repo: Option[String] = None,
|
|
||||||
state: String = "open",
|
state: String = "open",
|
||||||
sort: String = "created",
|
sort: String = "created",
|
||||||
direction: String = "desc",
|
direction: String = "desc",
|
||||||
@@ -398,7 +369,6 @@ object IssuesService {
|
|||||||
}},
|
}},
|
||||||
author .map(x => "author=" + urlEncode(x)),
|
author .map(x => "author=" + urlEncode(x)),
|
||||||
assigned.map(x => "assigned=" + urlEncode(x)),
|
assigned.map(x => "assigned=" + urlEncode(x)),
|
||||||
repo.map("for=" + urlEncode(_)),
|
|
||||||
Some("state=" + urlEncode(state)),
|
Some("state=" + urlEncode(state)),
|
||||||
Some("sort=" + urlEncode(sort)),
|
Some("sort=" + urlEncode(sort)),
|
||||||
Some("direction=" + urlEncode(direction)),
|
Some("direction=" + urlEncode(direction)),
|
||||||
@@ -444,7 +414,6 @@ object IssuesService {
|
|||||||
},
|
},
|
||||||
conditions.get("author").flatMap(_.headOption),
|
conditions.get("author").flatMap(_.headOption),
|
||||||
conditions.get("assignee").flatMap(_.headOption),
|
conditions.get("assignee").flatMap(_.headOption),
|
||||||
None, // TODO??
|
|
||||||
conditions.get("is").getOrElse(Seq.empty).filter(x => x == "open" || x == "closed").headOption.getOrElse("open"),
|
conditions.get("is").getOrElse(Seq.empty).filter(x => x == "open" || x == "closed").headOption.getOrElse("open"),
|
||||||
sort,
|
sort,
|
||||||
direction,
|
direction,
|
||||||
@@ -465,7 +434,6 @@ object IssuesService {
|
|||||||
},
|
},
|
||||||
param(request, "author"),
|
param(request, "author"),
|
||||||
param(request, "assigned"),
|
param(request, "assigned"),
|
||||||
param(request, "for"),
|
|
||||||
param(request, "state", Seq("open", "closed")).getOrElse("open"),
|
param(request, "state", Seq("open", "closed")).getOrElse("open"),
|
||||||
param(request, "sort", Seq("created", "comments", "updated")).getOrElse("created"),
|
param(request, "sort", Seq("created", "comments", "updated")).getOrElse("created"),
|
||||||
param(request, "direction", Seq("asc", "desc")).getOrElse("desc"),
|
param(request, "direction", Seq("asc", "desc")).getOrElse("desc"),
|
||||||
|
|||||||
Reference in New Issue
Block a user