version 1.2, 2005/10/25 19:14:32
|
version 1.4, 2005/12/28 19:26:02
|
Line 60 sub handler {
|
Line 60 sub handler {
|
my ($r) = @_; |
my ($r) = @_; |
|
|
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['token']); |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['token']); |
my %data = &Apache::lonnet::tmpget($env{'form.token'}); |
my %data = &Apache::lonnet::tmpget($env{'form.token'}); |
|
my $delete = &Apache::lonnet::tmpdel($env{'form.token'}); |
|
|
|
if ($delete ne 'ok') { |
|
return &goto_login($r); |
|
} |
|
|
if ($data{'ip'} ne $ENV{'REMOTE_ADDR'} || !defined($data{'username'}) || |
if ($data{'ip'} ne $ENV{'REMOTE_ADDR'} || !defined($data{'username'}) || |
!defined($data{'domain'}) ) { |
!defined($data{'domain'}) ) { |
Line 71 sub handler {
|
Line 76 sub handler {
|
my $home=&Apache::lonnet::homeserver($data{'username'},$data{'domain'}); |
my $home=&Apache::lonnet::homeserver($data{'username'},$data{'domain'}); |
if ($home =~ /(con_lost|no_such_host)/) { return &goto_login($r); } |
if ($home =~ /(con_lost|no_such_host)/) { return &goto_login($r); } |
|
|
if (!defined($data{'role'})) { |
if (!$data{'role'}) { |
&Apache::lonauth::success($r,$data{'username'},$data{'domain'}, |
&Apache::lonauth::success($r,$data{'username'},$data{'domain'}, |
$home,'/adm/roles'); |
$home,'/adm/roles'); |
return OK; |
return OK; |
} |
} |
|
|
my $cookie=&Apache::lonauth::success($r,$data{'username'},$data{'domain'}, |
my $cookie=&Apache::lonauth::success($r,$data{'username'},$data{'domain'}, |
$home,'noredirect'); |
$home,'noredirect'); |
$r->header_out('Set-cookie',"lonID=$cookie; path=/"); |
$r->header_out('Set-cookie',"lonID=$cookie; path=/"); |