rename shadowban permission

pull/4846/head
Thibault Duplessis 2019-01-20 08:24:36 +08:00
parent 493266daed
commit 283f5f6a59
8 changed files with 16 additions and 16 deletions

View File

@ -50,7 +50,7 @@ object Mod extends LilaController {
case (inquiry, suspect) => Report.onInquiryClose(inquiry, me, suspect.some)(ctx)
})
def troll(username: String, v: Boolean) = OAuthModBody(_.MarkTroll) { me =>
def troll(username: String, v: Boolean) = OAuthModBody(_.Shadowban) { me =>
withSuspect(username) { prev =>
for {
inquiry <- Env.report.api.inquiries ofModId me.id
@ -82,7 +82,7 @@ object Mod extends LilaController {
}
}(actionResult(username))
def deletePmsAndChats(username: String) = OAuthMod(_.MarkTroll) { _ => me =>
def deletePmsAndChats(username: String) = OAuthMod(_.Shadowban) { _ => me =>
withSuspect(username) { sus =>
Env.mod.publicChat.delete(sus) >>
Env.message.api.deleteThreadsBy(sus.user) map some
@ -164,7 +164,7 @@ object Mod extends LilaController {
}
private def communications(username: String, priv: Boolean) = Secure {
perms => if (priv) perms.ViewPrivateComms else perms.MarkTroll
perms => if (priv) perms.ViewPrivateComms else perms.Shadowban
} { implicit ctx => me =>
OptionFuOk(UserRepo named username) { user =>
lila.game.GameRepo.recentPovsByUserFromSecondary(user, 80) flatMap { povs =>
@ -300,11 +300,11 @@ object Mod extends LilaController {
}
}
def chatPanic = Secure(_.MarkTroll) { implicit ctx => me =>
def chatPanic = Secure(_.Shadowban) { implicit ctx => me =>
Ok(html.mod.chatPanic(Env.chat.panic.get)).fuccess
}
def chatPanicPost = OAuthMod(_.MarkTroll) { req => me =>
def chatPanicPost = OAuthMod(_.Shadowban) { req => me =>
val v = getBool("v", req)
Env.chat.panic.set(v)
Env.slack.api.chatPanic(me, v)

View File

@ -51,7 +51,7 @@ object chat {
"public" -> public,
"permissions" -> Json.obj("local" -> localMod)
.add("timeout" -> isGranted(_.ChatTimeout))
.add("shadowban" -> isGranted(_.MarkTroll)),
.add("shadowban" -> isGranted(_.Shadowban)),
"timeout" -> timeout
).add("kobold" -> ctx.troll)
.add("timeoutReasons" -> isGranted(_.ChatTimeout).option(lila.chat.JsonView.timeoutReasons))

View File

@ -78,7 +78,7 @@
<a href="@routes.User.games(in.user.id, "search")?players.b=@atom.by.value">View<br />Games</a>
}
}
@if(isGranted(_.MarkTroll)) {
@if(isGranted(_.Shadowban)) {
<a href="@routes.Mod.communicationPublic(in.user.id)">View<br />Comms</a>
}
</div>
@ -111,7 +111,7 @@
@autoNextInput
</form>
}
@if(isGranted(_.MarkTroll)) {
@if(isGranted(_.Shadowban)) {
<form method="post" action="@routes.Mod.troll(in.user.username, !in.user.troll)" data-hint="@if(in.user.troll){Un-s}else{S}hadowban" class="hint--bottom-left">
<button data-icon="c" class="fbt icon@when(in.user.troll, " active")" type="submit"></button>
@autoNextInput

View File

@ -30,7 +30,7 @@
@if(isGranted(_.SeeReport)) {
<a class="@active.active("irwin")" href="@routes.Irwin.dashboard">Irwin dashboard</a>
}
@if(isGranted(_.MarkTroll)) {
@if(isGranted(_.Shadowban)) {
<a class="@active.active("panic")" href="@routes.Mod.chatPanic">
Chat Panic <strong>@if(isChatPanicEnabled){ON}else{OFF}</strong>
</a>

View File

@ -42,7 +42,7 @@ moreCss = cssTag("report.css")) {
</thead>
<tbody>
@reports.map {
case WithSuspect(r, sus, _) if (!r.isTrollOrInsult || isGranted(_.MarkTroll)) => {
case WithSuspect(r, sus, _) if (!r.isTrollOrInsult || isGranted(_.Shadowban)) => {
<tr@if(r.open){ class="new"}>
<td>
@reportScore(r.score)

View File

@ -8,7 +8,7 @@
<form method="post" action="@routes.Mod.refreshUserAssess(u.username)" data-hint="Collect data and analyze if the user is suspicious." class="hint--bottom xhr">
<input class="button" type="submit" value="Evaluate" />
</form>
@if(isGranted(_.MarkTroll)) {
@if(isGranted(_.Shadowban)) {
<a class="button hint--bottom" href="@routes.Mod.communicationPublic(u.id)" data-hint="View communications">Comms</a>
}
<form method="post" action="@routes.Mod.notifySlack(u.id)" data-hint="Notify slack #tavern" class="hint--bottom xhr">
@ -26,7 +26,7 @@
<input class="button@when(u.booster, " active")" type="submit" value="Booster" />
</form>
}
@if(isGranted(_.MarkTroll)) {
@if(isGranted(_.Shadowban)) {
<form method="post" action="@routes.Mod.troll(u.username, !u.troll)" data-hint="@if(u.troll){En}else{Dis}able communication features for this user." class="hint--bottom xhr">
<input class="button@when(u.troll, " active")" type="submit" value="Shadowban" />
</form>

View File

@ -18,7 +18,7 @@ object Permission {
case object UserSpy extends Permission("ROLE_USER_SPY")
case object UserEvaluate extends Permission("ROLE_USER_EVALUATE")
case object ViewPrivateComms extends Permission("ROLE_VIEW_PRIVATE_COMS")
case object MarkTroll extends Permission("ROLE_CHAT_BAN", List(UserSpy, ChatTimeout))
case object Shadowban extends Permission("ROLE_SHADOWBAN", List(UserSpy, ChatTimeout))
case object MarkEngine extends Permission("ROLE_ADJUST_CHEATER", List(UserSpy))
case object MarkBooster extends Permission("ROLE_ADJUST_BOOSTER", List(UserSpy))
case object IpBan extends Permission("ROLE_IP_BAN", List(UserSpy))
@ -65,7 +65,7 @@ object Permission {
case object Admin extends Permission("ROLE_ADMIN", List(
Hunter, ModerateForum, IpBan, CloseAccount, ReopenAccount, ViewPrivateComms,
ChatTimeout, MarkTroll, SetTitle, SetEmail, ModerateQa, StreamConfig,
ChatTimeout, Shadowban, SetTitle, SetEmail, ModerateQa, StreamConfig,
MessageAnyone, ManageTeam, TerminateTournament, ManageTournament, ManageEvent,
PracticeConfig, RemoveRanking, ReportBan, DisapproveCoachReview,
Relay, Streamers, DisableTwoFactor, Prismic
@ -76,7 +76,7 @@ object Permission {
))
lazy val allButSuperAdmin: List[Permission] = List(
Admin, Hunter, MarkTroll, ChatTimeout, ChangePermission, ViewBlurs, ModerateForum,
Admin, Hunter, Shadowban, ChatTimeout, ChangePermission, ViewBlurs, ModerateForum,
UserSpy, MarkEngine, MarkBooster, IpBan, ModerateQa, StreamConfig, PracticeConfig,
Beta, MessageAnyone, UserSearch, ManageTeam, TerminateTournament, ManageTournament, ManageEvent,
PublicMod, Developer, Coach, ModNote, RemoveRanking, ReportBan, Impersonate,

View File

@ -24,7 +24,7 @@ export default function(ctrl: Ctrl): Array<VNode | undefined> {
m = ctrl.moderation();
const vnodes = [
h('ol.messages.content.scroll-shadow-soft' + (m ? '.as-mod' : ''), {
attrs: {
attrs: {
role: 'log',
'aria-live': 'polite',
'aria-atomic': false