--- loncom/interface/loncreateuser.pm 2017/08/10 21:14:58 1.445 +++ loncom/interface/loncreateuser.pm 2017/11/04 20:59:38 1.448 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Create a user # -# $Id: loncreateuser.pm,v 1.445 2017/08/10 21:14:58 raeburn Exp $ +# $Id: loncreateuser.pm,v 1.448 2017/11/04 20:59:38 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -886,15 +886,15 @@ ENDBLOCK (!(($env{'form.action'} eq 'singleuser') && ($context eq 'domain') && (!&Apache::lonnet::allowed('mau',$env{'request.role.domain'}))))) { my $defdom=$env{'request.role.domain'}; - my ($trustedref,$untrustedref); + my ($trusted,$untrusted); if ($context eq 'course') { - ($trustedref,$untrustedref) = &Apache::lonnet::trusted_domains('enroll',$defdom); + ($trusted,$untrusted) = &Apache::lonnet::trusted_domains('enroll',$defdom); } elsif ($context eq 'author') { - ($trustedref,$untrustedref) = &Apache::lonnet::trusted_domains('othcoau',$defdom); + ($trusted,$untrusted) = &Apache::lonnet::trusted_domains('othcoau',$defdom); } elsif ($context eq 'domain') { - ($trustedref,$untrustedref) = &Apache::lonnet::trusted_domains('domroles',$defdom); + ($trusted,$untrusted) = &Apache::lonnet::trusted_domains('domroles',$defdom); } - my $domform = &Apache::loncommon::select_dom_form($defdom,'srchdomain',undef,undef,undef,$trustedref,$untrustedref); + my $domform = &Apache::loncommon::select_dom_form($defdom,'srchdomain',undef,undef,undef,$trusted,$untrusted); my %lt=&Apache::lonlocal::texthash( 'enro' => 'Enroll one student', 'enrm' => 'Enroll one member', @@ -4750,16 +4750,41 @@ sub handler { if (! exists($env{'form.state'})) { &Apache::lonuserutils::print_first_users_upload_form($r,$context); } elsif ($env{'form.state'} eq 'got_file') { - &Apache::lonuserutils::print_upload_manager_form($r,$context,$permission, - $crstype,$showcredits); + my $result = + &Apache::lonuserutils::print_upload_manager_form($r,$context, + $permission, + $crstype,$showcredits); + if ($result eq 'missingdata') { + delete($env{'form.state'}); + &Apache::lonuserutils::print_first_users_upload_form($r,$context); + } } elsif ($env{'form.state'} eq 'enrolling') { if ($env{'form.datatoken'}) { - &Apache::lonuserutils::upfile_drop_add($r,$context,$permission, - $showcredits); + my $result = &Apache::lonuserutils::upfile_drop_add($r,$context, + $permission, + $showcredits); + if ($result eq 'missingdata') { + delete($env{'form.state'}); + &Apache::lonuserutils::print_first_users_upload_form($r,$context); + } elsif ($result eq 'invalidhome') { + $env{'form.state'} = 'got_file'; + delete($env{'form.lcserver'}); + my $result = + &Apache::lonuserutils::print_upload_manager_form($r,$context,$permission, + $crstype,$showcredits); + if ($result eq 'missingdata') { + delete($env{'form.state'}); + &Apache::lonuserutils::print_first_users_upload_form($r,$context); + } + } + } else { + delete($env{'form.state'}); + &Apache::lonuserutils::print_first_users_upload_form($r,$context); } } else { &Apache::lonuserutils::print_first_users_upload_form($r,$context); } + $r->print(''); } elsif (((($env{'form.action'} eq 'singleuser') || ($env{'form.action'} eq 'singlestudent')) && ($permission->{'cusr'})) || (($env{'form.action'} eq 'singleuser') && ($permission->{'view'})) || @@ -6148,11 +6173,11 @@ ENDSCRIPT } elsif ($curr_types eq '') { $add_domtitle = &mt('Users in other domain:'); } - my ($trustedref,$untrustedref) = &Apache::lonnet::trusted_domains('enroll',$cdom); + my ($trusted,$untrusted) = &Apache::lonnet::trusted_domains('enroll',$cdom); $output .= &Apache::loncommon::start_data_table_row() .''.$add_domtitle.'
' .&Apache::loncommon::select_dom_form('','selfenroll_newdom', - $includeempty,$showdomdesc,'',$trustedref,$untrustedref,$readonly) + $includeempty,$showdomdesc,'',$trusted,$untrusted,$readonly) .'' .''.&Apache::loncommon::end_data_table_row() .&Apache::loncommon::end_data_table();