From 8e94fcea5ff99023c108da0f58abb421f16454e8 Mon Sep 17 00:00:00 2001
From: Daniel Friesel <derf@finalrewind.org>
Date: Sun, 22 Jan 2023 12:33:02 +0100
Subject: move token type to ID map from Travelynx.pm to Model/Users

---
 lib/Travelynx.pm                | 11 -----------
 lib/Travelynx/Controller/Api.pm |  2 +-
 lib/Travelynx/Model/Users.pm    | 12 ++++++++++++
 3 files changed, 13 insertions(+), 12 deletions(-)

(limited to 'lib')

diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm
index 9bd6ebe..6aea580 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 6f788b5..7164b5b 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 0287ca2..46ffbdd 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};
-- 
cgit v1.2.3