]> git.sesse.net Git - ccbs/commitdiff
Added a "finish tournament" button that is shown if one can finish the tournament.
authorSteinar H. Gunderson <sesse@samfundet.no>
Wed, 16 Feb 2005 19:15:26 +0000 (19:15 +0000)
committerSteinar H. Gunderson <sesse@samfundet.no>
Wed, 16 Feb 2005 19:15:26 +0000 (19:15 +0000)
html/show-tournament.pl
html/templates/show-tournament.tmpl

index 01c301e4f0f2b833ae9791611950699b54203e59..230621bba7294f51edd67df4efc7689fce82a906 100755 (executable)
@@ -16,7 +16,8 @@ my $songs = ccbs::db_fetch_all($dbh, 'SELECT song,title FROM machinesongs NATURA
 # Check if the last round is valid for closing (by checking if all scores
 # entered are valid)
 my $ref = $dbh->selectrow_hashref('SELECT COUNT(*) AS num_incomplete FROM scores WHERE tournament=? AND (song IS NULL OR playmode IS NULL OR difficulty IS NULL OR chosen IS NULL or score IS NULL)', undef, $tournament->{'tournament'});
 # Check if the last round is valid for closing (by checking if all scores
 # entered are valid)
 my $ref = $dbh->selectrow_hashref('SELECT COUNT(*) AS num_incomplete FROM scores WHERE tournament=? AND (song IS NULL OR playmode IS NULL OR difficulty IS NULL OR chosen IS NULL or score IS NULL)', undef, $tournament->{'tournament'});
-my $closing_valid;
+my ($closing_valid,$finishing_valid);
+$finishing_valid = 0;
 if ($ref->{'num_incomplete'} == 0) {
        $closing_valid = 1;
 } else {
 if ($ref->{'num_incomplete'} == 0) {
        $closing_valid = 1;
 } else {
@@ -78,6 +79,12 @@ for my $r (0..$#rounds-1) {
        $rounds[$r]->{'locked'} = 1;
 }
 
        $rounds[$r]->{'locked'} = 1;
 }
 
+# If there's only one group left and it's valid for closing, we can also finish
+# the entire tournament if we'd like
+if ($closing_valid && (scalar @{$rounds[$#rounds]->{'parallels'}}) == 1) {
+       $finishing_valid = 1;
+}
+
 # If there have been no rounds, check out the number of participants; if not, check the
 # number of qualified from the last round
 my $num_qualified;
 # If there have been no rounds, check out the number of participants; if not, check the
 # number of qualified from the last round
 my $num_qualified;
@@ -98,6 +105,7 @@ ccbs::process_template('show-tournament.tmpl', $tournament->{'tournamentname'},
        num_rounds => $num_rounds,
        num_qualified => $num_qualified,
        songs => $songs,
        num_rounds => $num_rounds,
        num_qualified => $num_qualified,
        songs => $songs,
-       closing_valid => $closing_valid
+       closing_valid => $closing_valid,
+       finishing_valid => $finishing_valid
 });
 $dbh->disconnect;
 });
 $dbh->disconnect;
index e9d56e378678ad12e084e0823b43a0251d7d5c6b..0c4e350899baf0926475a41d63bbfef2d4bd2665 100644 (file)
@@ -16,7 +16,7 @@
   <h2>Start ny runde</h2>
 
   <div>
   <h2>Start ny runde</h2>
 
   <div>
-    <p>For øyeblikket har det vært avholdt <strong>[% num_rounds %]</strong> runder,
+    <p>For øyeblikket har det vært avholdt <strong>[% num_rounds %]</strong> fulle runder,
       hvilket vil si at du kan begynne runde <strong>[% num_rounds + 1 %]</strong>
       om du skulle ønske det. Vær oppmerksom på at du ikke kan begynne en ny runde
       før den forrige er gjort helt ferdig.</p>
       hvilket vil si at du kan begynne runde <strong>[% num_rounds + 1 %]</strong>
       om du skulle ønske det. Vær oppmerksom på at du ikke kan begynne en ny runde
       før den forrige er gjort helt ferdig.</p>
     </form>
   </div>
 [% END %]
     </form>
   </div>
 [% END %]
+  
+[% IF finishing_valid %]
+  <h2>Avslutt turnering</h2>
+
+  <div>
+    <p>Ettersom det bare er igjen én gruppe og runden er ferdigspilt, kan du om du ønsker
+      det avslutte turneringen. Vær obs på at når du har avsluttet turneringen vil rankinglister
+      genereres og CC-poeng utdeles, og det er ingen vei tilbake (dvs. turneringen er permanent
+      avsluttet).</p>
+
+    <form method="post" action="do-finish-tournament.pl">
+      <p>
+        <input type="hidden" name="tournament" value="[% tournament.tournament %]" />
+        <input type="submit" value="Avslutt turneringen" />
+      </p>
+    </form>
+  </div>
+[% END %]
 
 [% IF num_rankings > 0 %]
   <h2>Rankingliste</h2>
 
 [% IF num_rankings > 0 %]
   <h2>Rankingliste</h2>