fix swiss form
parent
5d6648b8dc
commit
29c9e76295
|
@ -60,7 +60,7 @@ object form {
|
|||
form3.split(fields.name, fields.nbRounds),
|
||||
form3.split(fields.rated, fields.variant),
|
||||
fields.clock,
|
||||
form3.split(fields.description, swiss.settings.position.isDefined option fields.position),
|
||||
form3.split(fields.description, fields.position),
|
||||
form3.split(
|
||||
fields.roundInterval,
|
||||
swiss.isCreated option fields.startsAt
|
||||
|
|
|
@ -71,7 +71,7 @@ final class SwissApi(
|
|||
winnerId = none,
|
||||
settings = Swiss.Settings(
|
||||
nbRounds = data.nbRounds,
|
||||
rated = data.rated | true,
|
||||
rated = data.realPosition.isEmpty && (data.rated | true),
|
||||
description = data.description,
|
||||
position = data.realPosition,
|
||||
chatFor = data.realChatFor,
|
||||
|
@ -86,6 +86,9 @@ final class SwissApi(
|
|||
|
||||
def update(swiss: Swiss, data: SwissForm.SwissData): Funit =
|
||||
Sequencing(swiss.id)(byId) { old =>
|
||||
val position =
|
||||
if (old.isCreated || old.settings.position.isDefined) data.realVariant.standard ?? data.realPosition
|
||||
else old.settings.position
|
||||
val swiss =
|
||||
old.copy(
|
||||
name = data.name | old.name,
|
||||
|
@ -97,11 +100,9 @@ final class SwissApi(
|
|||
else old.nextRoundAt,
|
||||
settings = old.settings.copy(
|
||||
nbRounds = data.nbRounds,
|
||||
rated = data.rated | old.settings.rated,
|
||||
rated = position.isEmpty && (data.rated | old.settings.rated),
|
||||
description = data.description orElse old.settings.description,
|
||||
position =
|
||||
if (old.isCreated || old.settings.position.isDefined) data.realPosition
|
||||
else old.settings.position,
|
||||
position = position,
|
||||
chatFor = data.chatFor | old.settings.chatFor,
|
||||
roundInterval =
|
||||
if (data.roundInterval.isDefined) data.realRoundInterval
|
||||
|
|
Loading…
Reference in New Issue