style and code dedup
This commit is contained in:
parent
3b8ad13308
commit
ee879568b1
|
@ -37,7 +37,7 @@ object Search extends LilaController {
|
|||
RateLimitGlobal("-", cost = cost) {
|
||||
Env.game.cached.nbTotal flatMap { nbGames =>
|
||||
implicit def req = ctx.body
|
||||
negotiate (
|
||||
negotiate(
|
||||
html = searchForm.bindFromRequest.fold(
|
||||
failure => Ok(html.search.index(failure, none, nbGames)).fuccess,
|
||||
data => data.nonEmptyQuery ?? { query =>
|
||||
|
@ -50,15 +50,13 @@ object Search extends LilaController {
|
|||
failure => Ok(jsonError("Could not process search query")).fuccess,
|
||||
data => data.nonEmptyQuery ?? { query =>
|
||||
env.paginator(query, page) map (_.some)
|
||||
} flatMap { pager =>
|
||||
pager match {
|
||||
case Some(s) =>
|
||||
Env.api.userGameApi.search(s) map {
|
||||
Ok(_)
|
||||
}
|
||||
case None =>
|
||||
Ok(jsonError("Could not process search query")).fuccess
|
||||
}
|
||||
} flatMap {
|
||||
case Some(s) =>
|
||||
Env.api.userGameApi.jsPaginator(s) map {
|
||||
Ok(_)
|
||||
}
|
||||
case None =>
|
||||
BadRequest(jsonError("Could not process search query")).fuccess
|
||||
}
|
||||
)
|
||||
)
|
||||
|
|
|
@ -94,8 +94,8 @@ object User extends LilaController {
|
|||
}
|
||||
}.map { status(_) }.mon(_.http.response.user.show.website),
|
||||
api = _ => userGames(u, filterOption, page).flatMap {
|
||||
case (filterName, pag) => Env.api.userGameApi.filter(filterName, pag) map {
|
||||
Ok(_)
|
||||
case (filterName, pag) => Env.api.userGameApi.jsPaginator(pag) map { res =>
|
||||
Ok(res ++ Json.obj("filter" -> filterName))
|
||||
}
|
||||
}.mon(_.http.response.user.show.mobile))
|
||||
else negotiate(
|
||||
|
|
|
@ -16,18 +16,7 @@ final class UserGameApi(
|
|||
import lila.round.JsonView._
|
||||
import LightUser.lightUserWrites
|
||||
|
||||
def filter(filterName: String, pag: Paginator[Game])(implicit ctx: Context): Fu[JsObject] =
|
||||
bookmarkApi.filterGameIdsBookmarkedBy(pag.currentPageResults, ctx.me) map { bookmarkedIds =>
|
||||
implicit val gameWriter = Writes[Game] { g =>
|
||||
write(g, bookmarkedIds(g.id))
|
||||
}
|
||||
Json.obj(
|
||||
"filter" -> filterName,
|
||||
"paginator" -> lila.common.paginator.PaginatorJson(pag)
|
||||
)
|
||||
}
|
||||
|
||||
def search(pag: Paginator[Game])(implicit ctx: Context): Fu[JsObject] =
|
||||
def jsPaginator(pag: Paginator[Game])(implicit ctx: Context): Fu[JsObject] =
|
||||
bookmarkApi.filterGameIdsBookmarkedBy(pag.currentPageResults, ctx.me) map { bookmarkedIds =>
|
||||
implicit val gameWriter = Writes[Game] { g =>
|
||||
write(g, bookmarkedIds(g.id))
|
||||
|
|
Loading…
Reference in a new issue