$race = new Race;
$race->setName($name);
if ($allotted_time) $race->setAllottedTime($allotted_time);
+ $optional = $posted['optional'];
+ if (is_int($optional) && $optional > 0) $race->setWaypoints($optional);
$prizes = 0;
foreach ($posted as $k => $v) {
if (! preg_match('/^prize_(.+)$/', $k, $m)) continue;
echo "</p>\n";
echo "<h3>Waypoints</h3>\n";
+ echo "<p>Number of optional waypoints: ";
+ input("optional");
+ echo "</p>\n";
+
echo "<table>\n";
foreach ($stations as $station) {
$system = $station->getSystem();
<column name="id" type="integer" required="true" primaryKey="true" autoIncrement="true"/>
<column name="name" type="varchar" size="64" required="true"/>
<column name="allotted_time" type="integer" required="false"/>
+ <column name="waypoints" type="integer" required="false"/>
<column name="prizes" type="integer" required="false"/>
<column name="colour1" type="char" size="7" required="false"/>
<column name="colour2" type="char" size="7" required="false"/>
break;
}
}
+
+ if (valid) {
+ /* Can't have optional more stations than potential ones. */
+ for (var input of document.getElementsByTagName('input')) {
+ if (input.name != 'optional') continue;
+ if (input.value) {
+ var optional = parseInt(input.value);
+ if (optional > stations.length) {
+ input.setCustomValidity("Too many stations marked optional");
+ valid = false;
+ }
+ }
+ if (valid) input.setCustomValidity("");
+ break;
+ }
+ }
}
var submits = document.getElementsByName('add_race');