--- loncom/interface/Attic/londropadd.pm 2002/09/25 16:16:19 1.53 +++ loncom/interface/Attic/londropadd.pm 2002/09/26 14:04:34 1.55 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to drop and add students in courses # -# $Id: londropadd.pm,v 1.53 2002/09/25 16:16:19 matthew Exp $ +# $Id: londropadd.pm,v 1.55 2002/09/26 14:04:34 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -558,7 +558,7 @@ sub print_upload_manager_form { sub enroll_single_student { my $r=shift; $r->print('
Enrolling '.$ENV{'form.cuname'}." in domain ". + $r->print('
Enrolling '.$ENV{'form.cuname'}." \@ ". $ENV{'form.lcdomain'}.'
'); if (($ENV{'form.cuname'})&&($ENV{'form.cuname'}!~/\W/)&& ($ENV{'form.lcdomain'})&&($ENV{'form.lcdomain'}!~/\W/)) { @@ -594,17 +594,25 @@ sub enroll_single_student { my $home = &Apache::lonnet::homeserver($ENV{'form.cuname'}, $ENV{'form.lcdomain'}); if ((($amode) && ($genpwd)) || ($home ne 'no_host')) { + # Clean out any old roles the student has in this class. &modifystudent($ENV{'form.lcdomain'},$ENV{'form.cuname'}, $ENV{'request.course.id'},$ENV{'form.csec'}, $desiredhost); - $r->print(&Apache::lonnet::modifystudent( - $ENV{'form.lcdomain'},$ENV{'form.cuname'}, - $ENV{'form.cstid'},$amode,$genpwd, - $ENV{'form.cfirst'},$ENV{'form.cmiddle'}, - $ENV{'form.clast'},$ENV{'form.cgen'}, - $ENV{'form.csec'},$ENV{'form.enddate'}, - $ENV{'form.startdate'},$ENV{'form.forceid'}, - $desiredhost)); + my $login_result = &Apache::lonnet::modifystudent + ($ENV{'form.lcdomain'},$ENV{'form.cuname'}, + $ENV{'form.cstid'},$amode,$genpwd, + $ENV{'form.cfirst'},$ENV{'form.cmiddle'}, + $ENV{'form.clast'},$ENV{'form.cgen'}, + $ENV{'form.csec'},$ENV{'form.enddate'}, + $ENV{'form.startdate'},$ENV{'form.forceid'}, + $desiredhost); + if ($login_result =~ /^ok/) { + $r->print($login_result); + $r->print("If active, the new role will be available ". + "when the student next logs in to LON-CAPA.
"); + } else { + $r->print("unable to enroll: ".$login_result); + } } else { $r->print('ERROR '.
'Invalid login mode or password. '.
@@ -790,7 +798,8 @@ sub print_csv_classlist {
if (! scalar(@$student_array)) {
$r->print("There are no students currently enrolled.\n");
} else {
- &show_class_list($r,'csv','nolink','any',$student_array,$student_data);
+ &show_class_list($r,'csv','nolink','csv',
+ 'any',$student_array,$student_data);
}
}
@@ -1131,8 +1140,16 @@ sub get_enrollment_data {
sub show_drop_list {
my ($students,$s_data,$r)=@_;
my $cid=$ENV{'request.course.id'};
- $r->print(<<'END');
-
+ &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
+ ['sortby']);
+ my $sortby = $ENV{'form.sortby'};
+ if ($sortby !~ /^(username|domain|section|fullname|id)$/) {
+ $sortby = 'username';
+ }
+ my $action = "drop";
+ $r->print(<