all admins can impersonate lichess

pull/5961/head
Thibault Duplessis 2020-01-28 11:07:39 -06:00
parent e63b381dc4
commit 041cfcd179
2 changed files with 6 additions and 5 deletions

View File

@ -161,10 +161,11 @@ final class Mod(
if (username == "-" && env.mod.impersonate.isImpersonated(me)) fuccess {
env.mod.impersonate.stop(me)
Redirect(routes.User.show(me.username))
} else if (isGranted(_.Impersonate)) OptionFuRedirect(env.user.repo named username) { user =>
env.mod.impersonate.start(me, user)
fuccess(routes.User.show(user.username))
} else notFound
} else if (isGranted(_.Impersonate) || (isGranted(_.Admin) && username == "lichess"))
OptionFuRedirect(env.user.repo named username) { user =>
env.mod.impersonate.start(me, user)
fuccess(routes.User.show(user.username))
} else notFound
}
def setTitle(username: String) = SecureBody(_.SetTitle) { implicit ctx => me =>

View File

@ -157,7 +157,7 @@ object mod {
submitButton(cls := "btn-rack__btn confirm")("Disable 2FA")
)
},
isGranted(_.Impersonate) option {
(isGranted(_.Impersonate) || (isGranted(_.Admin) && u.id == "lichess")) option {
postForm(action := routes.Mod.impersonate(u.username))(
submitButton(cls := "btn-rack__btn")("Impersonate")
)