summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpanfile.snapshot191
-rwxr-xr-xlib/Travelynx.pm1
-rwxr-xr-xlib/Travelynx/Controller/Api.pm2
-rwxr-xr-xlib/Travelynx/Controller/Traveling.pm9
-rwxr-xr-xlib/Travelynx/Model/Journeys.pm23
-rw-r--r--templates/bad_gateway.html.ep21
-rw-r--r--templates/login.html.ep2
-rw-r--r--templates/register.html.ep2
8 files changed, 144 insertions, 107 deletions
diff --git a/cpanfile.snapshot b/cpanfile.snapshot
index dcaa96b..66388e8 100644
--- a/cpanfile.snapshot
+++ b/cpanfile.snapshot
@@ -1614,38 +1614,38 @@ DISTRIBUTIONS
requirements:
ExtUtils::MakeMaker 0
perl 5.006
- MailTools-2.21
- pathname: M/MA/MARKOV/MailTools-2.21.tar.gz
- provides:
- Mail::Address 2.21
- Mail::Cap 2.21
- Mail::Field 2.21
- Mail::Field::AddrList 2.21
- Mail::Field::Date 2.21
- Mail::Field::Generic 2.21
- Mail::Filter 2.21
- Mail::Header 2.21
- Mail::Internet 2.21
- Mail::Mailer 2.21
- Mail::Mailer::qmail 2.21
- Mail::Mailer::rfc822 2.21
- Mail::Mailer::sendmail 2.21
- Mail::Mailer::smtp 2.21
- Mail::Mailer::smtp::pipe 2.21
- Mail::Mailer::smtps 2.21
- Mail::Mailer::smtps::pipe 2.21
- Mail::Mailer::testfile 2.21
- Mail::Mailer::testfile::pipe 2.21
- Mail::Send 2.21
- Mail::Util 2.21
- MailTools 2.21
+ MailTools-2.22
+ pathname: M/MA/MARKOV/MailTools-2.22.tar.gz
+ provides:
+ Mail::Address 2.22
+ Mail::Cap 2.22
+ Mail::Field 2.22
+ Mail::Field::AddrList 2.22
+ Mail::Field::Date 2.22
+ Mail::Field::Generic 2.22
+ Mail::Filter 2.22
+ Mail::Header 2.22
+ Mail::Internet 2.22
+ Mail::Mailer 2.22
+ Mail::Mailer::qmail 2.22
+ Mail::Mailer::rfc822 2.22
+ Mail::Mailer::sendmail 2.22
+ Mail::Mailer::smtp 2.22
+ Mail::Mailer::smtp::pipe 2.22
+ Mail::Mailer::smtps 2.22
+ Mail::Mailer::smtps::pipe 2.22
+ Mail::Mailer::testfile 2.22
+ Mail::Mailer::testfile::pipe 2.22
+ Mail::Send 2.22
+ Mail::Util 2.22
+ MailTools 2.22
requirements:
Date::Format 0
Date::Parse 0
ExtUtils::MakeMaker 0
IO::Handle 0
Net::Domain 1.05
- Net::SMTP 1.03
+ Net::SMTP 1.28
Test::More 0
Math-Polygon-1.10
pathname: M/MA/MARKOV/Math-Polygon-1.10.tar.gz
@@ -1784,8 +1784,8 @@ DISTRIBUTIONS
Mojolicious 8.50
SQL::Abstract::Pg 1.0
perl 5.016
- Mojolicious-9.38
- pathname: S/SR/SRI/Mojolicious-9.38.tar.gz
+ Mojolicious-9.39
+ pathname: S/SR/SRI/Mojolicious-9.39.tar.gz
provides:
Mojo undef
Mojo::Asset undef
@@ -1854,7 +1854,7 @@ DISTRIBUTIONS
Mojo::UserAgent::Transactor undef
Mojo::Util undef
Mojo::WebSocket undef
- Mojolicious 9.38
+ Mojolicious 9.39
Mojolicious::Command undef
Mojolicious::Command::Author::cpanify undef
Mojolicious::Command::Author::generate undef
@@ -2552,19 +2552,19 @@ DISTRIBUTIONS
Test::Pod 0
Travel::Status::DE::IRIS 1.2
perl v5.20.0
- Travel-Status-DE-DeutscheBahn-6.11
- pathname: D/DE/DERF/Travel-Status-DE-DeutscheBahn-6.11.tar.gz
- provides:
- Travel::Status::DE::DeutscheBahn 6.11
- Travel::Status::DE::HAFAS 6.11
- Travel::Status::DE::HAFAS::Journey 6.11
- Travel::Status::DE::HAFAS::Location 6.11
- Travel::Status::DE::HAFAS::Message 6.11
- Travel::Status::DE::HAFAS::Polyline 6.11
- Travel::Status::DE::HAFAS::Product 6.11
- Travel::Status::DE::HAFAS::Services 6.11
- Travel::Status::DE::HAFAS::Stop 6.11
- Travel::Status::DE::HAFAS::StopFinder 6.11
+ Travel-Status-DE-DeutscheBahn-6.12
+ pathname: D/DE/DERF/Travel-Status-DE-DeutscheBahn-6.12.tar.gz
+ provides:
+ Travel::Status::DE::DeutscheBahn 6.12
+ Travel::Status::DE::HAFAS 6.12
+ Travel::Status::DE::HAFAS::Journey 6.12
+ Travel::Status::DE::HAFAS::Location 6.12
+ Travel::Status::DE::HAFAS::Message 6.12
+ Travel::Status::DE::HAFAS::Polyline 6.12
+ Travel::Status::DE::HAFAS::Product 6.12
+ Travel::Status::DE::HAFAS::Services 6.12
+ Travel::Status::DE::HAFAS::Stop 6.12
+ Travel::Status::DE::HAFAS::StopFinder 6.12
requirements:
Carp 0
Class::Accessor 0.16
@@ -2636,57 +2636,62 @@ DISTRIBUTIONS
requirements:
ExtUtils::MakeMaker 0
common::sense 0
- URI-5.29
- pathname: O/OA/OALDERS/URI-5.29.tar.gz
- provides:
- URI 5.29
- URI::Escape 5.29
- URI::Heuristic 5.29
- URI::IRI 5.29
- URI::QueryParam 5.29
- URI::Split 5.29
- URI::URL 5.29
- URI::WithBase 5.29
- URI::data 5.29
- URI::file 5.29
- URI::file::Base 5.29
- URI::file::FAT 5.29
- URI::file::Mac 5.29
- URI::file::OS2 5.29
- URI::file::QNX 5.29
- URI::file::Unix 5.29
- URI::file::Win32 5.29
- URI::ftp 5.29
- URI::geo 5.29
- URI::gopher 5.29
- URI::http 5.29
- URI::https 5.29
- URI::icap 5.29
- URI::icaps 5.29
- URI::ldap 5.29
- URI::ldapi 5.29
- URI::ldaps 5.29
- URI::mailto 5.29
- URI::mms 5.29
- URI::news 5.29
- URI::nntp 5.29
- URI::nntps 5.29
- URI::otpauth 5.29
- URI::pop 5.29
- URI::rlogin 5.29
- URI::rsync 5.29
- URI::rtsp 5.29
- URI::rtspu 5.29
- URI::sftp 5.29
- URI::sip 5.29
- URI::sips 5.29
- URI::snews 5.29
- URI::ssh 5.29
- URI::telnet 5.29
- URI::tn3270 5.29
- URI::urn 5.29
- URI::urn::isbn 5.29
- URI::urn::oid 5.29
+ URI-5.31
+ pathname: O/OA/OALDERS/URI-5.31.tar.gz
+ provides:
+ URI 5.31
+ URI::Escape 5.31
+ URI::Heuristic 5.31
+ URI::IRI 5.31
+ URI::QueryParam 5.31
+ URI::Split 5.31
+ URI::URL 5.31
+ URI::WithBase 5.31
+ URI::data 5.31
+ URI::file 5.31
+ URI::file::Base 5.31
+ URI::file::FAT 5.31
+ URI::file::Mac 5.31
+ URI::file::OS2 5.31
+ URI::file::QNX 5.31
+ URI::file::Unix 5.31
+ URI::file::Win32 5.31
+ URI::ftp 5.31
+ URI::ftpes 5.31
+ URI::ftps 5.31
+ URI::geo 5.31
+ URI::gopher 5.31
+ URI::http 5.31
+ URI::https 5.31
+ URI::icap 5.31
+ URI::icaps 5.31
+ URI::irc 5.31
+ URI::ircs 5.31
+ URI::ldap 5.31
+ URI::ldapi 5.31
+ URI::ldaps 5.31
+ URI::mailto 5.31
+ URI::mms 5.31
+ URI::news 5.31
+ URI::nntp 5.31
+ URI::nntps 5.31
+ URI::otpauth 5.31
+ URI::pop 5.31
+ URI::rlogin 5.31
+ URI::rsync 5.31
+ URI::rtsp 5.31
+ URI::rtspu 5.31
+ URI::scp 5.31
+ URI::sftp 5.31
+ URI::sip 5.31
+ URI::sips 5.31
+ URI::snews 5.31
+ URI::ssh 5.31
+ URI::telnet 5.31
+ URI::tn3270 5.31
+ URI::urn 5.31
+ URI::urn::isbn 5.31
+ URI::urn::oid 5.31
requirements:
Carp 0
Cwd 0
diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm
index e154e8d..c73f96d 100755
--- a/lib/Travelynx.pm
+++ b/lib/Travelynx.pm
@@ -2013,6 +2013,7 @@ sub startup {
$self->log->debug(
"... checked in : $traewelling->{dep_name} $traewelling->{dep_eva} -> $traewelling->{arr_name} $traewelling->{arr_eva}"
);
+ $self->users->mark_seen( uid => $uid );
my $user_status = $self->get_user_status($uid);
if ( $user_status->{checked_in} ) {
$self->log->debug(
diff --git a/lib/Travelynx/Controller/Api.pm b/lib/Travelynx/Controller/Api.pm
index b732810..f31195a 100755
--- a/lib/Travelynx/Controller/Api.pm
+++ b/lib/Travelynx/Controller/Api.pm
@@ -51,6 +51,8 @@ sub documentation {
sub get_v1 {
my ($self) = @_;
+ $self->res->headers->access_control_allow_origin(q{*});
+
my $api_action = $self->stash('user_action');
my $api_token = $self->stash('token');
if ( $api_action !~ qr{ ^ (?: status | history | action ) $ }x ) {
diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm
index bbd85b6..0a94a1e 100755
--- a/lib/Travelynx/Controller/Traveling.pm
+++ b/lib/Travelynx/Controller/Traveling.pm
@@ -1129,11 +1129,18 @@ sub station {
}
)->wait;
}
+ elsif ( $err =~ m{svcRes} ) {
+ $self->render(
+ 'bad_gateway',
+ message => $err,
+ status => 502
+ );
+ }
else {
$self->render(
'exception',
exception => $err,
- status => 502
+ status => 500
);
}
}
diff --git a/lib/Travelynx/Model/Journeys.pm b/lib/Travelynx/Model/Journeys.pm
index 343d680..b80a441 100755
--- a/lib/Travelynx/Model/Journeys.pm
+++ b/lib/Travelynx/Model/Journeys.pm
@@ -1091,32 +1091,33 @@ sub sanity_check {
if ( defined $journey->{sched_duration}
and $journey->{sched_duration} <= 0 )
{
- return
-'Die geplante Dauer dieser Fahrt ist ≤ 0. Teleportation und Zeitreisen werden aktuell nicht unterstützt.';
+ return 'Die geplante Dauer dieser Fahrt ist ≤ 0.'
+ . ' Teleportation und Zeitreisen werden in diesem Universum nicht unterstützt.';
}
if ( defined $journey->{rt_duration}
and $journey->{rt_duration} <= 0 )
{
- return
-'Die Dauer dieser Fahrt ist ≤ 0. Teleportation und Zeitreisen werden aktuell nicht unterstützt.';
+ return 'Die Dauer dieser Fahrt ist ≤ 0.'
+ . ' Teleportation und Zeitreisen werden in diesem Universum nicht unterstützt.';
}
if ( $journey->{sched_duration}
- and $journey->{sched_duration} > 60 * 60 * 24 )
+ and $journey->{sched_duration} > 60 * 60 * 72 )
{
- return 'Die Fahrt ist länger als 24 Stunden.';
+ return 'Die Fahrt ist länger als drei Tage.';
}
if ( $journey->{rt_duration}
- and $journey->{rt_duration} > 60 * 60 * 24 )
+ and $journey->{rt_duration} > 60 * 60 * 72 )
{
- return 'Die Fahrt ist länger als 24 Stunden.';
+ return 'Die Fahrt ist länger als drei Tage.';
}
if ( $journey->{kmh_route} > 500 or $journey->{kmh_beeline} > 500 ) {
- return 'Fahrten mit über 500 km/h? Schön wär\'s.';
+ return 'Die berechnete Geschwindigkeit beträgt über 500 km/h.'
+ . ' Das wirkt unrealistisch.';
}
if ( $journey->{route} and @{ $journey->{route} } > 199 ) {
my $stop_count = @{ $journey->{route} };
- return
-"Die Fahrt hat $stop_count Unterwegshalte. Also ich weiß ja nicht so recht.";
+ return "Die Fahrt hat $stop_count Unterwegshalte. "
+ . ' Stimmt das wirklich?';
}
if ( $journey->{edited} & 0x0010 and not $lax ) {
my @unknown_stations
diff --git a/templates/bad_gateway.html.ep b/templates/bad_gateway.html.ep
new file mode 100644
index 0000000..773cda8
--- /dev/null
+++ b/templates/bad_gateway.html.ep
@@ -0,0 +1,21 @@
+<div class="row">
+ <div class="col s12">
+ <div class="card caution-color">
+ <div class="card-content white-text">
+ <span class="card-title">502 Bad Gateway</span>
+ <p>
+ Das von travelynx genutzte Backend hat einen Fehler zurückgegeben.
+ Oft sind diese temporär – versuche es in ein paar Sekunden bis Minuten noch einmal.
+ </p>
+ </div>
+ </div>
+ </div>
+</div>
+<div class="row">
+ <div class="col s12">
+ <p>Details:</p>
+ <p style="font-family: monospace;">
+ %= $message
+ </p>
+ </div>
+</div>
diff --git a/templates/login.html.ep b/templates/login.html.ep
index e60ed24..3a9cc1f 100644
--- a/templates/login.html.ep
+++ b/templates/login.html.ep
@@ -75,7 +75,7 @@
</div>
<div class="row">
<div class="col s12 m12 l12">
- Mit der Anmeldung stimmst du den <a href="/tos">Nutzungsbedingdungen</a> zu.
+ Mit der Anmeldung stimmst du den <a href="/tos">Nutzungsbedingungen</a> zu.
</div>
</div>
<div class="row">
diff --git a/templates/register.html.ep b/templates/register.html.ep
index cc47aa6..f9a486a 100644
--- a/templates/register.html.ep
+++ b/templates/register.html.ep
@@ -28,7 +28,7 @@
</div>
<div class="row">
<div class="col s12 m12 l12">
- Mit deiner Registrierung stimmst du den <a href="/tos">Nutzungsbedingdungen</a> zu.
+ Mit deiner Registrierung stimmst du den <a href="/tos">Nutzungsbedingungen</a> zu.
</div>
</div>
<div class="row">