Das Backend bestimmt die Datenquelle für Stations- und Zuginformationen. Innerhalb Deutschlands ist Deutsche Bahn via IRIS-TTS eine gute Wahl für Schienenverkehr im Bahnnetz. Die anderen Backends bieten sich für Fahrten im zugehörigen Verkehrsverbund (inklusive Nahverkehr) sowie im Ausland an. Sofern bekannt sind unterhalb der Backend-Namen Karten verlinkt, die die ungefähre Abdeckung aufzeigen. Ein Backend, welches Nah- und Fernverkehr in ganz Deutschland abdeckt, ist aktuell leider nicht verfügbar.
% my $prev_type = 'IRIS-TTS'; % for my $backend (@{$backends}) {
% if ($backend->{type} ne $prev_type) {
% $prev_type = $backend->{type};
<%= $prev_type %>:
% }
% my $class = 'button';
% if (param('efa')) {
% if ($backend->{efa} and $backend->{shortname} eq param('efa')) {
% $class .= ' button-active';
% }
% }
% elsif (param('hafas')) {
% if ($backend->{hafas} and $backend->{shortname} eq param('hafas')) {
% $class .= ' button-active';
% }
% }
% else {
% if (not ($backend->{efa} or $backend->{hafas})) {
% $class .= ' button-active';
% }
% }
<%= $backend->{shortname} // 'IRIS-TTS' %> – <%= $backend->{name} %>
% if ($backend->{has_area}) {
<%= join(q{, }, @{$backend->{regions}}) || '[Karte]' %>
% }
% else {
%= join(q{, }, @{$backend->{regions} // []})
% }
% if ($backend->{homepage}) {
(<%= $backend->{homepage} =~ s{ ^ http s? :// (?: www[.] )? (.*?) (?: / )? $ }{$1}xr %>)
% }