", undef, $team);
}
+sub get_switches {
+ my $self = shift;
+ my $team = shift;
+ my $dbh = $self->db();
+
+ my ($c, $s) = $dbh->selectrow_array("
+ SELECT
+ COUNT(stage) - 1 AS count,
+ SUM(i) AS sum
+ FROM (
+ SELECT
+ s.stage, icount(array_agg(rider) & lag(array_agg(rider)) OVER (ORDER BY \"date\")) AS i
+ FROM
+ rider_manager_team AS rmt
+ JOIN
+ stage AS s
+ ON (rmt.stage = s.stage)
+ WHERE
+ manager_team = ?
+ GROUP BY s.stage
+ ORDER BY
+ \"date\"
+ ) AS foo
+ ", undef, $team);
+
+ my $switches = 10 * $c - $s;
+
+ return $switches;
+}
+
sub new_team_form {
my $self = shift;
my $race = $self->param('race');
stages => $stages,
stage_team => \%stage_team,
director => get_director($self, $team),
+ switches => get_switches($self, $team),
);
}
VALUES (?, ?, ?)
");
+ my $switches = get_switches($self, $team);
+
+ if ($switches > 20) {
+ $self->app->log->debug("Too many switches.");
+ $dbh->do("
+ DELETE FROM
+ rider_manager_team
+ WHERE
+ manager_team = ?
+ AND
+ stage = ?
+ ", undef, $team, $stage);
+
+ return $self->redirect_to('manager_team', team => $team)
+ }
+
$dbh->do("
UPDATE
manager_team
<a href="<%== url_for 'manager_edit_form', team => $team->{'manager_team'} %>">Edit</a>
% }
+<h3>Switches made</h3>
+<p><%= $switches %></p>
+
% for my $stage (@{ $stages }) {
<h3><%= $stage->{'name'} %></h3>
<table class="table table-condensed">
% }
</table>
% }
+