2019-04-17 08:52:54 -06:00
|
|
|
package views.html.team
|
|
|
|
|
2020-09-22 02:42:04 -06:00
|
|
|
import controllers.routes
|
|
|
|
import play.api.data.Form
|
|
|
|
|
2019-04-17 08:52:54 -06:00
|
|
|
import lila.api.Context
|
|
|
|
import lila.app.templating.Environment._
|
|
|
|
import lila.app.ui.ScalatagsTemplate._
|
|
|
|
|
|
|
|
object admin {
|
|
|
|
|
2020-02-10 09:25:44 -07:00
|
|
|
import trans.team._
|
|
|
|
|
2020-04-23 17:47:20 -06:00
|
|
|
def leaders(t: lila.team.Team, form: Form[_])(implicit ctx: Context) = {
|
|
|
|
val title = s"${t.name} • ${trans.team.teamLeaders.txt()}"
|
|
|
|
views.html.base.layout(
|
|
|
|
title = title,
|
|
|
|
moreCss = frag(cssTag("team"), cssTag("tagify")),
|
2020-09-12 10:54:21 -06:00
|
|
|
moreJs = jsModule("team.admin")
|
2020-04-23 17:47:20 -06:00
|
|
|
) {
|
2019-04-17 08:52:54 -06:00
|
|
|
main(cls := "page-menu page-small")(
|
|
|
|
bits.menu(none),
|
|
|
|
div(cls := "page-menu__content box box-pad")(
|
|
|
|
h1(title),
|
2020-07-05 08:43:59 -06:00
|
|
|
p(
|
|
|
|
"Only invite leaders that you fully trust. Team leaders can kick members and other leaders out of the team."
|
|
|
|
),
|
2020-04-23 17:47:20 -06:00
|
|
|
postForm(cls := "leaders", action := routes.Team.leaders(t.id))(
|
2020-04-30 11:48:39 -06:00
|
|
|
form3.group(form("leaders"), frag(usersWhoCanManageThisTeam()))(
|
2020-04-23 17:47:20 -06:00
|
|
|
form3.textarea(_)(rows := 2)
|
|
|
|
),
|
|
|
|
form3.actions(
|
|
|
|
a(href := routes.Team.show(t.id))(trans.cancel()),
|
|
|
|
form3.submit(trans.save())
|
|
|
|
)
|
2019-04-17 08:52:54 -06:00
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
def kick(t: lila.team.Team, userIds: Iterable[lila.user.User.ID])(implicit ctx: Context) = {
|
|
|
|
|
2020-04-28 10:13:01 -06:00
|
|
|
val title = s"${t.name} • ${kickSomeone.txt()}"
|
2019-04-17 08:52:54 -06:00
|
|
|
|
|
|
|
bits.layout(title = title) {
|
|
|
|
main(cls := "page-menu page-small")(
|
|
|
|
bits.menu(none),
|
|
|
|
div(cls := "page-menu__content box box-pad")(
|
|
|
|
h1(title),
|
2020-02-10 09:25:44 -07:00
|
|
|
p(whoToKick()),
|
2019-12-13 07:30:20 -07:00
|
|
|
br,
|
|
|
|
br,
|
2019-08-02 01:54:15 -06:00
|
|
|
postForm(cls := "kick", action := routes.Team.kick(t.id))(
|
2019-04-17 08:52:54 -06:00
|
|
|
userIds.toList.sorted.map { userId =>
|
|
|
|
button(name := "userId", cls := "button button-empty button-no-upper confirm", value := userId)(
|
|
|
|
usernameOrId(userId)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
2020-04-04 12:42:53 -06:00
|
|
|
|
2020-05-05 22:11:15 -06:00
|
|
|
def pmAll(t: lila.team.Team, form: Form[_], tours: List[lila.tournament.Tournament])(implicit
|
|
|
|
ctx: Context
|
2020-04-04 13:56:08 -06:00
|
|
|
) = {
|
2020-04-04 12:42:53 -06:00
|
|
|
|
2020-04-30 11:48:39 -06:00
|
|
|
val title = s"${t.name} • ${messageAllMembers.txt()}"
|
2020-04-04 12:42:53 -06:00
|
|
|
|
|
|
|
views.html.base.layout(
|
|
|
|
title = title,
|
2020-04-05 16:54:53 -06:00
|
|
|
moreCss = cssTag("team"),
|
2020-09-04 08:10:30 -06:00
|
|
|
moreJs = embedJsUnsafeLoadThen("""
|
2020-09-22 02:42:04 -06:00
|
|
|
$('.copy-url-button').on('click', function(e) {
|
|
|
|
$('#form3-message').val($('#form3-message').val() + $(e.target).data('copyurl') + '\n')
|
|
|
|
})""")
|
2020-04-04 12:42:53 -06:00
|
|
|
) {
|
|
|
|
main(cls := "page-menu page-small")(
|
|
|
|
bits.menu(none),
|
|
|
|
div(cls := "page-menu__content box box-pad")(
|
|
|
|
h1(title),
|
2020-09-22 02:42:04 -06:00
|
|
|
p(messageAllMembersLongDescription()),
|
2020-04-04 13:56:08 -06:00
|
|
|
tours.nonEmpty option div(cls := "tournaments")(
|
2020-04-30 11:48:39 -06:00
|
|
|
p(youWayWantToLinkOneOfTheseTournaments()),
|
2020-04-04 13:56:08 -06:00
|
|
|
p(
|
|
|
|
ul(
|
|
|
|
tours.map { t =>
|
|
|
|
li(
|
|
|
|
tournamentLink(t),
|
|
|
|
" ",
|
|
|
|
momentFromNow(t.startsAt),
|
2020-04-06 02:43:33 -06:00
|
|
|
" ",
|
2020-04-05 16:54:53 -06:00
|
|
|
a(
|
2021-06-14 01:13:27 -06:00
|
|
|
dataIcon := "",
|
2020-04-05 16:54:53 -06:00
|
|
|
cls := "text copy-url-button",
|
2020-08-01 02:15:00 -06:00
|
|
|
data.copyurl := s"${netConfig.domain}${routes.Tournament.show(t.id).url}"
|
2020-04-06 04:13:33 -06:00
|
|
|
)
|
2020-04-04 13:56:08 -06:00
|
|
|
)
|
|
|
|
}
|
|
|
|
)
|
|
|
|
),
|
|
|
|
br
|
|
|
|
),
|
2020-04-04 12:42:53 -06:00
|
|
|
postForm(cls := "form3", action := routes.Team.pmAllSubmit(t.id))(
|
|
|
|
form3.group(form("message"), trans.message())(form3.textarea(_)(rows := 10)),
|
|
|
|
form3.actions(
|
|
|
|
a(href := routes.Team.show(t.slug))(trans.cancel()),
|
|
|
|
form3.submit(trans.send())
|
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
2019-04-17 08:52:54 -06:00
|
|
|
}
|