Skip to content

Commit fe9f31b

Browse files
committed
allow creating more team tournaments
1 parent 2aabf35 commit fe9f31b

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

app/controllers/Tournament.scala

+4-4
Original file line numberDiff line numberDiff line change
@@ -261,15 +261,15 @@ final class Tournament(
261261
fuccess(Redirect(routes.Tournament.home(1)))
262262
}
263263

264-
private def rateLimitCreation(me: UserModel, password: Option[String], req: RequestHeader)(
264+
private def rateLimitCreation(me: UserModel, isPrivate: Boolean, req: RequestHeader)(
265265
create: => Fu[Result]
266266
): Fu[Result] = {
267267
val cost =
268268
if (me.hasTitle ||
269269
env.streamer.liveStreamApi.isStreaming(me.id) ||
270270
isGranted(_.ManageTournament, me) ||
271271
me.isVerified ||
272-
password.isDefined) 1
272+
isPrivate) 1
273273
else 3
274274
CreateLimitPerUser(me.id, cost = cost) {
275275
CreateLimitPerIP(HTTPRequest lastRemoteAddress req, cost = cost) {
@@ -286,7 +286,7 @@ final class Tournament(
286286
html = forms(me).bindFromRequest.fold(
287287
err => BadRequest(html.tournament.form(err, me, teams)).fuccess,
288288
setup =>
289-
rateLimitCreation(me, setup.password, ctx.req) {
289+
rateLimitCreation(me, setup.isPrivate, ctx.req) {
290290
api.createTournament(setup, me, teams, getUserTeamIds) map { tour =>
291291
Redirect {
292292
if (tour.isTeamBattle) routes.Tournament.teamBattleEdit(tour.id)
@@ -310,7 +310,7 @@ final class Tournament(
310310
forms(me).bindFromRequest.fold(
311311
jsonFormErrorDefaultLang,
312312
setup =>
313-
rateLimitCreation(me, setup.password, req) {
313+
rateLimitCreation(me, setup.isPrivate, req) {
314314
teamC.teamsIBelongTo(me) flatMap { teams =>
315315
api.createTournament(setup, me, teams, getUserTeamIds) flatMap { tour =>
316316
jsonView(

modules/tournament/src/main/DataForm.scala

+2
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,8 @@ private[tournament] case class TournamentSetup(
150150
def sufficientDuration = estimateNumberOfGamesOneCanPlay >= 3
151151
def excessiveDuration = estimateNumberOfGamesOneCanPlay <= 70
152152

153+
def isPrivate = password.isDefined || conditions.teamMember.isDefined
154+
153155
private def estimateNumberOfGamesOneCanPlay: Double = (minutes * 60) / estimatedGameSeconds
154156

155157
// There are 2 players, and they don't always use all their time (0.8)

0 commit comments

Comments
 (0)