Commit 00d2c8ea authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

automatically refresh display after cache expiry

parent 945379f1
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -7,12 +7,14 @@ use utf8;

our $VERSION = '0.03';

my $refresh_interval = 900;

sub get_results_for {
	my ($station) = @_;

	my $cache = Cache::File->new(
		cache_root      => '/tmp/db-fake',
		default_expires => '900 sec'
		default_expires => $refresh_interval . ' sec',
	);

	my $results = $cache->thaw($station);
@@ -87,7 +89,8 @@ sub handle_request {
			$info = undef;
		}
		if ($info) {
			$info =~ s{ ^ (?: ca\. \s* )? \+ (\d+) }{Verspätung ca. $1 Minuten}x;
			$info
			  =~ s{ ^ (?: ca\. \s* )? \+ (\d+) }{Verspätung ca. $1 Minuten}x;
			$info =~ s{ 1 \s Minute\Kn }{}x;
		}
		push(
@@ -107,7 +110,8 @@ sub handle_request {
		$template,
		departures       => \@departures,
		version          => $VERSION,
		title      => "departures for ${station}"
		title            => "departures for ${station}",
		refresh_interval => $refresh_interval + 3,
	);
}

+3 −0
Original line number Diff line number Diff line
@@ -4,6 +4,9 @@
<head>
	<title><%= $title %></title>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
% if ($self->stash('refresh_interval')) {
	<meta http-equiv="refresh" content="<%= $self->stash('refresh_interval') %>"/>
% }
	<style type="text/css">

	html {