Diff for /loncom/interface/createaccount.pm between versions 1.18 and 1.19

version 1.18, 2008/07/13 00:51:31 version 1.19, 2008/07/13 17:57:58
Line 180  sub handler { Line 180  sub handler {
         $r->print($output);          $r->print($output);
         $r->print(&Apache::loncommon::end_page());          $r->print(&Apache::loncommon::end_page());
         return OK;          return OK;
     }      } elsif ($env{'form.phase'} eq 'username_validation') { 
           (my $result,$output) = 
     &print_header($r,$start_page);              &username_validation($r,$env{'form.uname'},$domain,$domdesc,
     if ($env{'form.create_with_email'}) {                                   $contact_name,$contact_email,$courseid,
                                    $lonhost);
           if ($result eq 'existingaccount') {
               $r->print($output);
               $r->print(&Apache::loncommon::end_page());
               return OK;
           } else {
               &print_header($r,$start_page);
           }
       } elsif ($env{'form.create_with_email'}) {
           &print_header($r,$start_page);
         $output = &process_email_request($env{'form.useremail'},$domain,$domdesc,          $output = &process_email_request($env{'form.useremail'},$domain,$domdesc,
                                          $contact_name,$contact_email,\@cancreate,                                           $contact_name,$contact_email,\@cancreate,
                                          $lonhost,$domconfig{'usercreation'},                                           $lonhost,$domconfig{'usercreation'},
                                          $courseid);                                           $courseid);
     } elsif ($env{'form.phase'} eq 'username_validation') {  
         $output = &username_validation($env{'form.uname'},$domain,$domdesc,  
                                        $contact_name,$contact_email,$courseid,  
                                        $lonhost);  
     } elsif (!$token) {      } elsif (!$token) {
           &print_header($r,$start_page);
         my $now=time;          my $now=time;
         if (grep(/^login$/,@cancreate)) {          if (grep(/^login$/,@cancreate)) {
             my $jsh=Apache::File->new($include."/londes.js");              my $jsh=Apache::File->new($include."/londes.js");
Line 568  sub start_session { Line 575  sub start_session {
     if ($r->dir_config('lonBalancer') eq 'yes') {      if ($r->dir_config('lonBalancer') eq 'yes') {
         &Apache::lonauth::success($r,$form{'uname'},$form{'udom'},          &Apache::lonauth::success($r,$form{'uname'},$form{'udom'},
                                   $lonhost,'noredirect',undef,\%form);                                    $lonhost,'noredirect',undef,\%form);
         my $delete = &Apache::lonnet::tmpdel($token);          if ($token ne '') { 
               my $delete = &Apache::lonnet::tmpdel($token);
           }
         $r->internal_redirect('/adm/switchserver');          $r->internal_redirect('/adm/switchserver');
     } else {      } else {
         &Apache::lonauth::success($r,$form{'uname'},$form{'udom'},          &Apache::lonauth::success($r,$form{'uname'},$form{'udom'},
Line 707  sub create_account { Line 716  sub create_account {
 }  }
   
 sub username_validation {  sub username_validation {
     my ($username,$domain,$domdesc,$contact_name,$contact_email,$courseid,$lonhost) = @_;      my ($r,$username,$domain,$domdesc,$contact_name,$contact_email,$courseid,
           $lonhost) = @_;
     my ($retrieved,$output,$upass);      my ($retrieved,$output,$upass);
   
     $username= &LONCAPA::clean_username($username);      $username= &LONCAPA::clean_username($username);
     $domain = &LONCAPA::clean_domain($domain);      $domain = &LONCAPA::clean_domain($domain);
     my $uhome = &Apache::lonnet::homeserver($username,$domain);      my $uhome = &Apache::lonnet::homeserver($username,$domain);
   
     if ($uhome ne 'no_host') {  
         $output = &invalid_state('existinguser',$domdesc,  
                                  $contact_name,$contact_email);  
         return $output;  
     }  
     ($retrieved,$output,$upass) = &process_credentials($env{'form.logtoken'},      ($retrieved,$output,$upass) = &process_credentials($env{'form.logtoken'},
                                                        $env{'form.serverid'});                                                         $env{'form.serverid'});
     if ($retrieved eq 'ok') {      if ($retrieved ne 'ok') {
           return ('fail',$output);
       }
       if ($uhome ne 'no_host') {
           my $result = &Apache::lonnet::authenticate($username,$upass,$domain);
           if ($result ne 'no_host') { 
               my %form = &start_session($r,$username,$domain,$lonhost,$courseid);
               $output = '<br /><br />'.&mt('A LON-CAPA account already exists for username [_1] at this institution ([_2]).','<tt>'.$username.'</tt>',$domdesc).'<br />'.&mt('The password entered was also correct so you have been logged in.');
               return ('existingaccount',$output);
           } else {
               $output = '<div class="LC_warning">'.
                         &mt('Username and/or password could not be authenticated.').
                         '</div>'.
                         &mt('Please check the username and password.');
           }
       } else {
         my $primlibserv = &Apache::lonnet::domain($domain,'primary');          my $primlibserv = &Apache::lonnet::domain($domain,'primary');
         my $authok;          my $authok;
         my %domdefaults = &Apache::lonnet::get_domain_defaults($domain);          my %domdefaults = &Apache::lonnet::get_domain_defaults($domain);
Line 736  sub username_validation { Line 756  sub username_validation {
             $output = &username_check($username,$domain,$domdesc,$courseid,$lonhost,              $output = &username_check($username,$domain,$domdesc,$courseid,$lonhost,
                                       $contact_email,$contact_name);                                        $contact_email,$contact_name);
         } else {          } else {
             $output = '<div class="LC_warning">'              $output = '<div class="LC_warning">'.
                      .&mt('Username and/or password could not be authenticated.')                        &mt('Username and/or password could not be authenticated.').
                      .'</div>'                        '</div>'.
                      .&mt('Please check the username and password.');                         &mt('Please check the username and password.'); 
         }          }
     }      }
     return $output;      return ('ok',$output);
 }  }
   
 sub username_check {  sub username_check {

Removed from v.1.18  
changed lines
  Added in v.1.19


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>