--- loncom/interface/Attic/londropadd.pm 2002/09/24 18:24:43 1.52
+++ loncom/interface/Attic/londropadd.pm 2002/09/25 16:16:19 1.53
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to drop and add students in courses
#
-# $Id: londropadd.pm,v 1.52 2002/09/24 18:24:43 matthew Exp $
+# $Id: londropadd.pm,v 1.53 2002/09/25 16:16:19 matthew Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -773,9 +773,11 @@ END
} else {
# Print out the available choices
if ($ENV{'form.action'} eq 'modifystudent') {
- &show_class_list($r,'view','modify','any',$student_array,$student_data);
+ &show_class_list($r,'view','modify','modifystudent',
+ 'any',$student_array,$student_data);
} else {
- &show_class_list($r,'view','aboutme','any',$student_array,$student_data);
+ &show_class_list($r,'view','aboutme','classlist',
+ 'any',$student_array,$student_data);
}
}
}
@@ -794,8 +796,14 @@ sub print_csv_classlist {
# =================================================== Show student list to drop
sub show_class_list {
- my ($r,$mode,$linkto,$statusmode,$students,$student_data)=@_;
+ my ($r,$mode,$linkto,$action,$statusmode,$students,$s_data)=@_;
my $cid=$ENV{'request.course.id'};
+ &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
+ ['sortby']);
+ my $sortby = $ENV{'form.sortby'};
+ if ($sortby !~ /^(username|domain|section|fullname|id)$/) {
+ $sortby = 'username';
+ }
# Print out header
if ($mode eq 'view') {
if ($linkto eq 'aboutme') {
@@ -804,19 +812,37 @@ sub show_class_list {
$r->print('Select a user name to modify the students information');
}
$r->print(<
username | domain | ID | -student name | section | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+ username + | + domain + | + ID + | + student name + | + section + | +||||||||||||||||||||||
'. @@ -826,12 +852,12 @@ END ', '.$error.' | ||||||||||||||||||||||||||
\n "); @@ -844,7 +870,8 @@ END } elsif ($linkto eq 'modify') { $r->print(''.$username."\n"); + '&sdom='.$domain.'&sortby='.$sortby.'">'. + $username."\n"); } $r->print(<<"END"); | @@ -876,10 +903,10 @@ END sub print_modify_student_form { my $r = shift(); &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, - ['sdom','sname']); - - my $sname = $ENV{'form.sname'}; - my $sdom = $ENV{'form.sdom'}; + ['sdom','sname','sortby']); + my $sname = $ENV{'form.sname'}; + my $sdom = $ENV{'form.sdom'}; + my $sortby = $ENV{'form.sortby'}; # determine the students name information my %info=&Apache::lonnet::get('environment', ['firstname','middlename', @@ -914,7 +941,8 @@ Only domain coordinators can change a us - + +
First name | $firstname | |
Middle name | $middlename | |
Last name | $lastname | |
Generation | $generation |
Field | +Old Value | +New Value | +
---|---|---|
First name | +$old{'firstname'} | +$firstname | +
Middle name | +$old{'middlename'} | +$middlename | +
Last name | +$old{'lastname'} | +$lastname | +
Generation | +$old{'generation'} | +$generation | +
ID | +$old{'id'} | +$sid | +
END
+ #
# Send request(s) to modify data
- # The '1' in the call to modifystudent is to force the students
- # id to be changed.
my $roleresults = &Apache::lonnet::modifystudent
- ($sdom,$sname,$sid,undef,undef,$firstname,$middlename,$lastname,
- $generation,$section,$endtime,$starttime,1);
- if ($roleresults =~/refused/) {
+ ($sdom,$slogin,$sid,undef,undef,$firstname,$middlename,$lastname,
+ $generation,$section,$endtime,$starttime,$ENV{'form.forceid'});
+ if ($roleresults eq 'refused' ) {
$r->print("Your request to change the role information for this ".
- "student was refused.");
+ "student was refused. You do not appear to have ".
+ "sufficient authority to change student information.");
} elsif ($roleresults !~ /ok/) {
$r->print("An error occurred during the attempt to change the role".
" information for this student.
".
"The error reported was ".
$roleresults);
+ &Apache::lonnet::logthis("londropadd:failed attempt to modify student".
+ " data for ".$slogin." \@ ".$sdom." by ".
+ $ENV{'user.name'}." \@ ".$ENV{'user.domain'}.
+ ":".$roleresults);
} else { # everything is okay!
$r->print("Student information updated successfully.
".
"The student must log out and log in again to see ".
@@ -1003,7 +1088,7 @@ END
}
$r->print(<