log appeal actions

pull/7079/head
Thibault Duplessis 2020-08-04 09:16:54 +02:00
parent 9a44d52aab
commit c34298ae0c
3 changed files with 16 additions and 4 deletions

View File

@ -62,6 +62,7 @@ final class Appeal(env: Env, reportC: => Report) extends LilaController(env) {
for {
_ <- env.appeal.api.reply(text, appeal, me)
_ <- env.security.automaticEmail.onAppealReply(suspect.user)
_ <- env.mod.logApi.appealPost(me.id, suspect.user.id)
} yield Redirect(routes.Appeal.show(username)).flashSuccess
)
}
@ -71,10 +72,11 @@ final class Appeal(env: Env, reportC: => Report) extends LilaController(env) {
Secure(_.Appeals) { implicit ctx => me =>
asMod(username) { (appeal, suspect) =>
val res = action match {
case "close" => env.appeal.api.close(appeal)
case "open" => env.appeal.api.open(appeal)
case "mute" => env.appeal.api.mute(appeal)
case _ => funit
case "close" =>
env.appeal.api.close(appeal) >> env.mod.logApi.appealClose(me.id, suspect.user.id)
case "open" => env.appeal.api.open(appeal)
case "mute" => env.appeal.api.mute(appeal)
case _ => funit
}
res inject Redirect(routes.Appeal.show(username)).flashSuccess
}

View File

@ -65,6 +65,8 @@ case class Modlog(
case Modlog.streamerTier => "set streamer tier"
case Modlog.teamKick => "kick from team"
case Modlog.teamEdit => "edited team"
case Modlog.appealPost => "posted in appeal"
case Modlog.appealClose => "closed appeal"
case a => a
}
@ -127,4 +129,6 @@ object Modlog {
val streamerTier = "streamerTier"
val teamKick = "teamKick"
val teamEdit = "teamEdit"
val appealPost = "appealPost"
val appealClose = "appealClose"
}

View File

@ -213,6 +213,12 @@ final class ModlogApi(repo: ModlogRepo, userRepo: UserRepo, slackApi: lila.slack
Modlog(mod, teamOwner.some, Modlog.teamEdit, details = Some(teamName take 140))
}
def appealPost(mod: User.ID, user: User.ID) =
add { Modlog(mod, user.some, Modlog.appealPost, details = none) }
def appealClose(mod: User.ID, user: User.ID) =
add { Modlog(mod, user.some, Modlog.appealClose, details = none) }
def recent =
coll.ext
.find(