next unless (defined($cgi->param('old-' . $p)));
next if ($cgi->param($p) eq $cgi->param('old-' . $p));
+ my $val = $cgi->param($p);
+ undef $val if ($val =~ /^\s*$/);
+
if ($p =~ /^score(\d+)-(\d+)/) {
+ if (defined($val) && ($val < 0 || $val > 10000)) {
+ ccbs::user_error("Alle poengsummer må være mellom 0 og 10000 (inklusive).");
+ }
+
$dbh->do('UPDATE scores SET score=? WHERE tournament=? AND round=? AND parallel=? AND player=? AND songnumber=?', undef,
- $cgi->param($p), $tournament, $round, $group, $1, $2);
+ $val, $tournament, $round, $group, $1, $2);
+ } elsif ($p =~ /^playmode(\d+)-(\d+)/) {
+ $dbh->do('UPDATE scores SET playmode=? WHERE tournament=? AND round=? AND parallel=? AND player=? AND songnumber=?', undef,
+ $val, $tournament, $round, $group, $1, $2);
+ } elsif ($p =~ /^difficulty(\d+)-(\d+)/) {
+ $dbh->do('UPDATE scores SET difficulty=? WHERE tournament=? AND round=? AND parallel=? AND player=? AND songnumber=?', undef,
+ $val, $tournament, $round, $group, $1, $2);
+ } elsif ($p =~ /^song(\d+)-(\d+)/) {
+ $dbh->do('UPDATE scores SET song=? WHERE tournament=? AND round=? AND parallel=? AND player=? AND songnumber=? AND chosen=\'t\'', undef,
+ $val, $tournament, $round, $group, $1, $2);
}
}