diff --git a/lib/AccountManager/WebRequest.pm b/lib/AccountManager/WebRequest.pm index 1a140dbd5dd59a7f03c8834441fcc0f927459f8d..fe0587b9e6e9299aa26b0d02718541355ca79811 100644 --- a/lib/AccountManager/WebRequest.pm +++ b/lib/AccountManager/WebRequest.pm @@ -72,6 +72,25 @@ sub new { sub run { my ($self) = @_; + # initialize output parameters + $self->{out} = { + env => { + REMOTE_HOST => $ENV{REMOTE_HOST}, + REMOTE_ADDR => $ENV{REMOTE_ADDR}, + SCRIPT_NAME => $ENV{SCRIPT_NAME} + }, + conf => { + accounts_validity_period => $self->{configuration}->{service}->{account_validity_period}, + app_name => $self->{configuration}->{app}->{name}, + app_url => $self->{configuration}->{app}->{url}, + idp_scope => $self->{configuration}->{idp}->{scope}, + idp_displayname => $self->{configuration}->{idp}->{displayname}, + support_email => $self->{configuration}->{app}->{support_email}, + version => $self->{configuration}->{app}->{version}, + }, + title => $self->{configuration}->{app}->{name} + }; + # process input parameters my %parameters = $self->{cgi}->Vars(); @@ -108,29 +127,9 @@ sub run { }; } - my $action = $parameters{action} || 'home'; - - # initialize output parameters - $self->{out} = { - env => { - REMOTE_HOST => $ENV{REMOTE_HOST}, - REMOTE_ADDR => $ENV{REMOTE_ADDR}, - SCRIPT_NAME => $ENV{SCRIPT_NAME} - }, - conf => { - accounts_validity_period => $self->{configuration}->{service}->{account_validity_period}, - app_name => $self->{configuration}->{app}->{name}, - app_url => $self->{configuration}->{app}->{url}, - idp_scope => $self->{configuration}->{idp}->{scope}, - idp_displayname => $self->{configuration}->{idp}->{displayname}, - support_email => $self->{configuration}->{app}->{support_email}, - version => $self->{configuration}->{app}->{version}, - }, - action => $action, - title => $self->{configuration}->{app}->{name} - }; - # process requested action + my $action = $parameters{action} || 'home'; + $self->{out}->{action} = $action; if ($actions{$action}) { my $method = $actions{$action}; $self->$method();