diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm index 9bd6ebe484cee0a952259fa2bc6f46d2aa5f0ee2..6aea58077ac507a4c00b1d02650b804c799da90b 100755 --- a/lib/Travelynx.pm +++ b/lib/Travelynx.pm @@ -159,17 +159,6 @@ sub startup { } ); - $self->attr( - token_type => sub { - return { - status => 1, - history => 2, - travel => 3, - import => 4, - }; - } - ); - $self->attr( account_public_mask => sub { return { diff --git a/lib/Travelynx/Controller/Api.pm b/lib/Travelynx/Controller/Api.pm index 6f788b5b95ebfd3301d57c3b08d9a0a2952fc1d6..7164b5bd5ee901717f1d10665e9fb09db5c37587 100755 --- a/lib/Travelynx/Controller/Api.pm +++ b/lib/Travelynx/Controller/Api.pm @@ -571,7 +571,7 @@ sub set_token { return; } my $token = make_token(); - my $token_id = $self->app->token_type->{ $self->param('token') }; + my $token_id = $self->users->get_token_id( $self->param('token') ); if ( not $token_id ) { $self->redirect_to('account'); diff --git a/lib/Travelynx/Model/Users.pm b/lib/Travelynx/Model/Users.pm index 0287ca2dff9d574dbab9447d2bbd955cb37601f0..46ffbdda9dba98240ab788fc2f2358a2ec9db2d9 100644 --- a/lib/Travelynx/Model/Users.pm +++ b/lib/Travelynx/Model/Users.pm @@ -19,6 +19,12 @@ my @sb_templates = ( [ 'bahn.expert/regional', 'https://bahn.expert/regional/{name}#{id}' ], ); +my %token_id = ( + status => 1, + history => 2, + travel => 3, + import => 4, +); my @token_types = (qw(status history travel import)); sub new { @@ -27,6 +33,12 @@ sub new { return bless( \%opt, $class ); } +sub get_token_id { + my ( $self, $type ) = @_; + + return $token_id{$type}; +} + sub mark_seen { my ( $self, %opt ) = @_; my $uid = $opt{uid};