--- loncom/interface/loncreateuser.pm 2017/04/02 12:40:18 1.406.2.14 +++ loncom/interface/loncreateuser.pm 2017/11/16 17:57:13 1.406.2.14.4.1 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Create a user # -# $Id: loncreateuser.pm,v 1.406.2.14 2017/04/02 12:40:18 raeburn Exp $ +# $Id: loncreateuser.pm,v 1.406.2.14.4.1 2017/11/16 17:57:13 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -4679,16 +4679,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'})) || @@ -5817,12 +5842,13 @@ function validate_types(form) { } function check_types(num,countfail,needaction) { - var typeidx = getIndexByName('selfenroll_types_'+num); + var boxname = 'selfenroll_types_'+num; + var typeidx = getIndexByName(boxname); var count = 0; if (typeidx != -1) { - if (document.$formname.elements[typeidx].length) { - for (var k=0; k