disconnect banned user

This commit is contained in:
Thibault Duplessis 2013-05-15 22:53:16 -03:00
parent a8637d75bf
commit ca1f99b198
5 changed files with 9 additions and 7 deletions

View file

@ -107,7 +107,7 @@ object User extends LilaController {
implicit val req = ctx.req
(UserRepo disable me.id) >>
Env.team.api.quitAll(me.id) >>
(Env.security deleteUser me.id) inject {
(Env.security disconnect me.id) inject {
Redirect(routes.User show me.username) withCookies LilaCookie.newSession
}
}

View file

@ -26,13 +26,15 @@ final class ModApi(
}
def ban(mod: String, userId: String): Funit = withUser(userId) { user
userSpy(userId) flatMap { spy
userSpy(user.id) flatMap { spy
UserRepo.toggleIpBan(user.id) >>
logApi.ban(mod, user.id, !user.ipBan) >>
user.ipBan.fold(
(spy.ipStrings map firewall.unblockIp).sequence,
(spy.ipStrings map firewall.blockIp).sequence >>- censor(user)
)
(spy.ipStrings map firewall.blockIp).sequence >>
(SecurityStore disconnect user.id) >>-
censor(user)
)
}
}

View file

@ -10,7 +10,7 @@ private[security] final class Cli extends lila.common.Cli {
perform(uid, u UserRepo enable u.id)
case "security" :: "disable" :: uid :: Nil
perform(uid, u (UserRepo disable u.id) >> (Store deleteUser u.id))
perform(uid, u (UserRepo disable u.id) >> (Store disconnect u.id))
case "security" :: "passwd" :: uid :: pwd :: Nil
perform(uid, user UserRepo.passwd(user.id, pwd))

View file

@ -41,7 +41,7 @@ final class Env(
lazy val userSpy = UserSpy(firewall) _
lazy val deleteUser = Store deleteUser _
lazy val disconnect = Store disconnect _
def cli = new Cli

View file

@ -38,7 +38,7 @@ object Store {
// useful when closing an account,
// we want to logout too
def deleteUser(userId: String): Funit = $update(
def disconnect(userId: String): Funit = $update(
Json.obj("user" -> userId),
$set("up" -> false),
upsert = false,