]> git.rustad.me Git - duplo/commitdiff
SORT
authorBjørn Rustad <rustadbjornen@gmail.com>
Thu, 22 Aug 2013 15:08:26 +0000 (17:08 +0200)
committerBjørn Rustad <rustadbjornen@gmail.com>
Thu, 22 Aug 2013 15:08:26 +0000 (17:08 +0200)
lib/Duplo/Manager.pm
templates/manager/edit_form.html.ep

index 975aaeb4184b8f5373d4e41b3cbeeda60fbd5404..03b0a3dbbb22bfc57c2ea7d21b869ccc0a725ffc 100644 (file)
@@ -190,7 +190,18 @@ sub edit_form {
                  manager_team = ?
                ", undef, $team);
 
-       my $riders_ref = $dbh->selectall_hashref("
+       my $types_ref = $dbh->selectcol_arrayref("
+               SELECT
+                 rr.type
+               FROM
+                 rider_race AS rr
+               WHERE
+                 race = ?
+               AND
+                 rr.type IS NOT NULL
+               ", undef, $race);
+
+       my $sth = $dbh->prepare("
                SELECT
                  r.rider,
                  r.name AS rider_name,
@@ -208,8 +219,19 @@ sub edit_form {
                ON (rr.team = t.team)
                WHERE
                  race = ?
+               AND
+                 rr.type = ?
                ORDER BY price DESC
-               ", ['type', 'rider'], undef, $race);
+               ");
+
+       my $riders_ref;
+       for my $t (@{ $types_ref }) {
+               $riders_ref->{$t} = $dbh->selectall_arrayref(
+                       $sth, { Slice => {} }, $race, $t
+               );
+       }
+
+       $self->app->log->debug(Dumper $riders_ref);
 
        my $directors_ref = $dbh->selectall_arrayref("
                SELECT DISTINCT
index c662951794c9ab3f9ff5dc099efa143e148b71b9..65e48e3a22d1230746023892a2977b521b2ccede 100644 (file)
   <label for="rider">
     <%= $name %>:
   </label>
-  <select name="rider" data-placeholder="<%= $name %>" class="chosen-select" style="width:350px;" tabindex="2">
-    % for my $rider (keys %{ $riders->{$type} }) {
+  <select name="rider" data-placeholder="<%= $name %>" class="chosen-select" style="width:450px;" tabindex="2">
+    % for my $rider (@{ $riders->{$type} }) {
     <option value="<%= $rider %>">
-      <%= $riders->{$type}->{$rider}->{'rider_name'} %>
-      – <%= $riders->{$type}->{$rider}->{'team_name'} %>
-      – <%= $riders->{$type}->{$rider}->{'price'} %>
+      <%= $rider->{'rider_name'} %>
+      – <%= $rider->{'team_name'} %>
+      – <%= $rider->{'price'} %>
     </option>
     % }
   </select>
@@ -30,6 +30,7 @@
 <p>Dessverre viser denne siden ikke ditt forrige lag, så det får du ha åpent i en annen tab, eller noe sånt. Summering av prisene skjer heller ikke før du sender inn laget, og du vil da få en feilmelding om det er for dyrt (eller det er andre feil). Litt uoptimalt siden du da må begynne på nytt. Forbedringer kommer en gang i fremtiden.</p>
 <p>Lag-direktøren kan kun velges en gang.</p>
 <p>Det laget du sender inn vil bli koblet til neste etappe som ikke enda har startet, og det er da mulig å endre det helt til etappen starter.</p>
+<p>Prisgrensen er 140.</p>
 <form action="<%== url_for 'manager_edit' %>" method="post">
 
   %= $rider_select->('CLIMBER', 'Climber');