Ignore:
Timestamp:
03/28/17 13:06:50 (7 years ago)
Author:
nanardon
Message:

Fix various authentification issues

  • Fix redirection when login occurs at first visit
  • Don't display SSL auth button if mmultiple user have same mail
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts-Web/lib/LATMOS/Accounts/Web/Controller/Login.pm

    r1632 r1976  
    2929 
    3030    my $sslid = $c->config->{ssl}->{SSL_ID} || 'HTTP_SSL_CLIENT_S_DN_EMAIL'; 
    31     $c->stash->{sslid} = $ENV{$sslid}; 
     31    for ($sslid) { 
     32        $_ or last; 
     33 
     34        /^NULL$/ and last; 
     35 
     36        my @id = $c->model('Accounts')->db->search_objects('user', "mail=$sslid"); 
     37 
     38        scalar(@id) == 1 or last; 
     39 
     40        $c->stash->{sslid} = $ENV{$sslid}; 
     41    } 
    3242 
    3343    if ($c->req->param('username')) { 
     
    3747                ssl      => $c->req->param('use_ssl')  || '', 
    3848        })) { 
    39             my $redirurl = $c->session->{redirurl}; 
     49            my $redirurl = $c->session->{redirurl} || $c->uri_for('/'); 
    4050            $redirurl->query_form(%{ $c->session->{redirparam} || {}}); 
    4151            $c->session->{redirurl} = undef; 
    4252            $c->session->{redirparam} = undef; 
    43             $c->res->redirect($redirurl || $c->uri_for('/'), ); 
     53            $c->res->redirect($redirurl); 
    4454        } else { 
    4555            # invalid login... 
Note: See TracChangeset for help on using the changeset viewer.