--- loncom/auth/migrateuser.pm 2005/10/25 19:14:32 1.2 +++ loncom/auth/migrateuser.pm 2005/12/28 19:26:02 1.4 @@ -1,7 +1,7 @@ # The LearningOnline Network # Starts a user off based of an existing token. # -# $Id: migrateuser.pm,v 1.2 2005/10/25 19:14:32 albertel Exp $ +# $Id: migrateuser.pm,v 1.4 2005/12/28 19:26:02 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -60,7 +60,12 @@ sub handler { my ($r) = @_; &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'}) || !defined($data{'domain'}) ) { @@ -71,12 +76,12 @@ sub handler { my $home=&Apache::lonnet::homeserver($data{'username'},$data{'domain'}); 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'}, $home,'/adm/roles'); return OK; } - + my $cookie=&Apache::lonauth::success($r,$data{'username'},$data{'domain'}, $home,'noredirect'); $r->header_out('Set-cookie',"lonID=$cookie; path=/");