Commit 94ea5a08 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

Commute stats: count days, not journeys

parent 0a87135e
Loading
Loading
Loading
Loading
+25 −22
Original line number Diff line number Diff line
@@ -534,37 +534,39 @@ sub commute {
	);

	my %journeys_by_month;
	my %count_by_month;
	my $total = 0;

	my $prev_doy = 0;
	for my $journey ( reverse @journeys ) {
		my $month = $journey->{rt_departure}->month;
		if (
			$filter_type eq 'exact'
			and (  $journey->{to_name} eq $station
			(
				$filter_type eq 'exact' and ( $journey->{to_name} eq $station
					or $journey->{from_name} eq $station )
			)
		{
			push( @{ $journeys_by_month{$month} }, $journey );
			$total++;
		}
		elsif (
			or (
				$filter_type eq 'substring'
				and (  $journey->{to_name} =~ m{\Q$station\E}
					or $journey->{from_name} =~ m{\Q$station\E} )
			)
		{
			push( @{ $journeys_by_month{$month} }, $journey );
			$total++;
		}
		elsif (
			or (
				$filter_type eq 'regex'
				and (  $journey->{to_name} =~ m{$station}
					or $journey->{from_name} =~ m{$station} )
			)
		  )
		{
			push( @{ $journeys_by_month{$month} }, $journey );

			my $doy = $journey->{rt_departure}->day_of_year;
			if ( $doy != $prev_doy ) {
				$count_by_month{$month}++;
				$total++;
			}

			$prev_doy = $doy;
		}
	}

	$self->param( year        => $year );
@@ -575,6 +577,7 @@ sub commute {
		template          => 'commute',
		with_autocomplete => 1,
		journeys_by_month => \%journeys_by_month,
		count_by_month    => \%count_by_month,
		total_journeys    => $total,
		months            => [
			qw(Januar Februar März April Mai Juni Juli August September Oktober November Dezember)
+1 −1
Original line number Diff line number Diff line
@@ -75,7 +75,7 @@
				% for my $i (0 .. $#{$months}) {
					<tr>
						<td><%= $months->[$i] %></td>
						<td><%= scalar @{$journeys_by_month->{$i+1} // []} %></td>
						<td><%= $count_by_month->{$i+1} // 0 %></td>
					</tr>
				% }
			</tbody>