<!DOCTYPE html>
<html lang="de">
<head>
	<title><%= stash('title') // 'db-infoscreen' %></title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
% if ($self->stash('refresh_interval')) {
	<meta http-equiv="refresh" content="<%= $self->stash('refresh_interval') %>"/>
% }

	% my $av = 'v6'; # asset version
	%= stylesheet "/static/${av}/default.css"
	%= stylesheet "/static/${av}/jquery-ui.min.css"
% my $force_mobile = param('force_mobile') // -1;
% if ($force_mobile == 1 or ($self->browser->mobile and $force_mobile != 0)) {
	%= stylesheet "/static/${av}/mobile.css"
% }
	%if (stash('load_marquee')) {
	%= javascript '/static/jquery-1.10.2.min.js'
	%= javascript "/static/${av}/jquery-ui.min.js"
	%= javascript "/static/${av}/dbf.min.js"
	%= javascript "/static/${av}/marquee.min.js"
	%= javascript begin
	$(function () {  $('marquee').marquee() });
	% end
	% } else {
	%= javascript '/static/jquery-1.10.2.min.js', defer => undef
	%= javascript "/static/${av}/jquery-ui.min.js", defer => undef
	%= javascript "/static/${av}/dbf.min.js", defer => undef
	% }
	% if (stash('with_geolocation')) {
	%= javascript "/static/${av}/geolocation.min.js", defer => undef
	% }
</head>
<body style="<%= (stash('hide_opts') ? 'margin: 0; padding: 0;' : q{}) %>
<%= (param('dark') ? 'background-color: #000000; color: #ffffff;' : q{}) %>">

<div class="container">
% if (my $error = stash 'error') {
<div class="error"><strong>Backend-Fehler:</strong>
<pre>
%= $error
</pre>
</div>
% }
% elsif (stash('stationlist')) {
<div class="error"><strong>Mehrdeutige Eingabe.</strong>
Bitte eine Station aus der Liste auswählen</div>
% }
</div>

%= content

% if (not stash('hide_opts')) {
<div class="container">
<div class="input-field">


%= form_for _redirect => begin
<div>
  <div class="field">
    <div class="desc">Bahnhof / Haltestelle</div>
    <div>
% if (stash('stationlist')) {
      %= select_field station => stash('stationlist')
% }
% elsif (stash('station')) {
      %= text_field 'station', class => 'station'
% }
% else {
      %= text_field 'station', class => 'station', autofocus => 'autofocus'
% }
    </div>
  </div>
  <div class="field">
    %= submit_button 'Abfahrtsmonitor'
  </div>
  % if (not stash('show_intro')) {
    <div class="break"></div>
    <div class="field">
      <a class="button" href="<%= url_for('_auto')->to_abs->scheme('https') %>">Bahnhöfe im Umfeld suchen</a>
    </div>
  % }
  <div class="break"></div>
  <div class="moresettings-header moresettings-header-collapsed button button-light">Weitere Einstellungen</div>
  <div class="moresettings moresettings-collapsed">
    <div class="field">
      <div class="desc">
        Frontend
      </div>
      <div>
        %= select_field mode => [ ['App' => 'app'], ['Infoscreen' => 'infoscreen'], ['Bahnhofstafel' => 'multi'], ['Gleisanzeiger' => 'single'] ]
      </div>
    </div>
    <div class="field">
      <div class="desc">
        Backend
      </div>
      <div>
        %= select_field backend => [ ['IRIS' => 'iris'], ['HAFAS' => 'ris'] ]
      </div>
    </div>
    <div class="field">
      <div class="desc">
        Nur Züge über
      </div>
      <div>
        %= text_field 'via', placeholder => 'Bahnhof 1, Bhf2, ... (oder regulärer Ausdruck)', class => 'station'
      </div>
    </div>
    <div class="field">
      <div class="desc">
        Gleise
      </div>
      <div>
        %= text_field 'platforms', placeholder => '1, 2, 5, ...'
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'hidelowdelay' => 1, id => 'id_hidelowdelay'
        <label for="id_hidelowdelay">
          Nur Verspätungen &gt;5 Min. anzeigen
        </label>
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'dark' => 1, id => 'id_dark'
        <label for="id_dark">
          Dunkles Layout (experimentell)
        </label>
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'hide_opts' => 1, id => 'id_hide_opts'
        <label for="id_hide_opts">
          Formular verstecken (für Infoscreens)
        </label>
      </div>
    </div>
    <div class="break"></div>
    <span class="optional">Nur für IRIS-Backend:</span>
    <div class="field">
      <div class="desc">
        Ankunfts- oder Abfahrtszeit anzeigen?
      </div>
      <div>
        %= select_field admode => [['Abfahrt bevorzugen' => 'deparr'], ['Nur Abfahrt' => 'dep'], ['Nur Ankunft' => 'arr']]
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'detailed' => 1, id => 'id_detailed'
        <label for="id_detailed">
          Mehr Details (Zugnummern und Ankunftszeiten) anzeigen
        </label>
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'show_realtime' => 1, id => 'id_show_realtime'
        <label for="id_show_realtime">
          Echtzeitangaben statt Fahrplandaten anzeigen
        </label>
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'no_related' => 1, id => 'id_no_related'
        <label for="id_no_related">
        Betriebliche Bahnhofstrennungen berücksichtigen (z.B. "Hbf (Fern+Regio)" vs. "Hbf (S)")
        </label>
      </div>
    </div>
    <div class="field">
      <div class="desc">
        %= check_box 'save_defaults' => 1, id => 'id_save_defaults'
        <label for="id_save_defaults">
        Ausgewählte Optionen als Default speichern
        </label>
      </div>
    </div>
    <div class="field">
      %= submit_button 'Anzeigen'
    </div>
  </div> <!-- moresettings -->
</div>
% end

</div> <!-- input-field -->

<div class="notes">
<span class="notes">Siehe auch:</span>
<ul>
<li><a href="https://reiseauskunft.bahn.de/bin/bhftafel.exe/dn">DB Abfahrtsmonitor</a>
   (<a href="https://mobile.bahn.de/bin/mobil/bhftafel.exe/dox">mobil</a>)</li>
<li>Für Nahverkehr: <a href="https://vrrf.finalrewind.org/">vrr-infoscreen</a></li>
</ul>
</div> <!-- notes -->

<div class="notes">
<span class="notes">Developers Developers Developers Developers:</span>
<ul>
<li>Diese Seite kann gerne als iframe in eigene Infoscreens o.ä. eingebunden werden.
	Für eine kleine Ansicht (z.B. iframe in einer normalen Website) bitte das
	"App"-Frontend verwenden (und vorerst den Parameter <span style="font-family: monospace;">force_mobile=1</span>
	hinzufügen, das ist bald aber nicht mehr nötig). Für eine große Ansicht
	(z.B. als alleinstehender Infoscreen) gibt es das "Infoscreen"-Frontend.</li>
<li>Die Parameter <span style="font-family: monospace;">mode=json&amp;version=3</span>
	bieten ein JSON-Interface. Die route-Elemente können zusätzlich
	die Felder "isAdditional" oder "isCancelled" enthalten, der Rest sollte
	selbsterklärend sein. Dieses Interface nutzt ausschließlich das IRIS-Backend.</li>
<li>Dieser Dienst ist Open Source-Software (Links siehe unten) und kann auch
	auf eigenen Servern installiert werden. Automatisierte Crawler, die mehrere
	Dutzend Stationen pro Minute abfragen, bitte nur auf eigenen Instanzen
	betreiben.</li>
</ul>
</div> <!-- notes -->

</div> <!-- container -->

<div class="container">
<div class="about">
<a href="https://finalrewind.org/projects/db-fakedisplay/">db-infoscreen</a>
v<%= stash('version') // '???' %><br/>
Backends:<br/>
<!--<a href="https://finalrewind.org/projects/Travel-Status-DE-DBWagenreihung/">-->Travel::Status::DE::DBWagenreihung<!--</a>-->
v<%= $Travel::Status::DE::DBWagenreihung::VERSION %><br/>
<a href="https://finalrewind.org/projects/Travel-Status-DE-DeutscheBahn/">Travel::Status::DE::HAFAS</a>
v<%= $Travel::Status::DE::HAFAS::VERSION %><br/>
<a href="https://finalrewind.org/projects/Travel-Status-DE-IRIS/">Travel::Status::DE::IRIS</a>
v<%= $Travel::Status::DE::IRIS::VERSION %><br/>
<a href="http://data.deutschebahn.com/dataset/data-haltestellen">Haltestellendaten</a>
© DB Station&amp;Service AG,
Europaplatz 1,
10557 Berlin, lizensiert unter CC-BY 4.0<br/>
<a href="_datenschutz" rel="nofollow">Datenschutzerklärung</a><br/>
<a href="_impressum" rel="nofollow">Impressum</a><br/>
</div> <!-- about -->
</div> <!-- container -->
% }

</body>
</html>