show unprocessed reports first

This commit is contained in:
Thibault Duplessis 2014-06-10 10:27:29 +02:00
parent 62fad167d6
commit 349f57fcb4
3 changed files with 9 additions and 4 deletions

View file

@ -57,7 +57,7 @@ object Mod extends LilaController {
me =>
OptionFuOk(UserRepo named username) { user =>
for {
isReported <- Env.report.api.recent map {
isReported <- Env.report.api recent 100 map {
_ exists (r => r.user == user.id && r.isCommunication)
}
povs <- isReported ?? lila.game.GameRepo.recentPovsByUser(user, 50)

View file

@ -14,7 +14,7 @@ object Report extends LilaController {
private def api = Env.report.api
def list = Secure(_.SeeReport) { implicit ctx =>
_ => api.recent map { reports =>
_ => api unprocessedAndRecent 50 map { reports =>
html.report.list(reports)
}
}

View file

@ -72,12 +72,17 @@ private[report] final class ReportApi(evaluator: ActorSelection) {
$update(Json.obj("user" -> userId.toLowerCase), Json.obj("processedBy" -> "lichess"))
private val unprocessedSelect = Json.obj("processedBy" -> $exists(false))
private val processedSelect = Json.obj("processedBy" -> $exists(true))
def nbUnprocessed = $count(unprocessedSelect)
def recent = $find($query.all sort $sort.createdDesc, 50)
def recent(nb: Int) = $find($query.all sort $sort.createdDesc, nb)
def recentUnprocessed = $find($query(unprocessedSelect) sort $sort.createdDesc, 50)
def unprocessedAndRecent(nb: Int) = recentUnprocessed |+| recentProcessed(nb)
def recentUnprocessed = $find($query(unprocessedSelect) sort $sort.createdDesc)
def recentProcessed(nb: Int) = $find($query(processedSelect) sort $sort.createdDesc, nb)
private def findRecent(user: User, reason: Reason): Fu[Option[Report]] =
$find.one(Json.obj(