--- loncom/homework/grades.pm 2005/10/04 17:02:41 1.292
+++ loncom/homework/grades.pm 2005/11/22 20:21:02 1.298
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# The LON-CAPA Grading handler
#
-# $Id: grades.pm,v 1.292 2005/10/04 17:02:41 albertel Exp $
+# $Id: grades.pm,v 1.298 2005/11/22 20:21:02 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -545,7 +545,13 @@ sub verifyreceipt {
if ($env{"course.$courseid.receiptalg"} eq 'receipt2') { $receiptparts=1; }
my $parts=['0'];
if ($receiptparts) { ($parts)=&response_type($url,$symb); }
- foreach (sort {lc($$fullname{$a}) cmp lc($$fullname{$b}) } keys %$fullname) {
+ foreach (sort
+ {
+ if (lc($$fullname{$a}) ne lc($$fullname{$b})) {
+ return (lc($$fullname{$a}) cmp lc($$fullname{$b}));
+ }
+ return $a cmp $b;
+ } (keys(%$fullname))) {
my ($uname,$udom)=split(/\:/);
foreach my $part (@$parts) {
if ($receipt eq &Apache::lonnet::ireceipt($uname,$udom,$courseid,$symb,$part)) {
@@ -711,7 +717,14 @@ LISTJAVASCRIPT
$gradeTable.=''."\n";
my $ctr = 0;
- foreach my $student (sort {lc($$fullname{$a}) cmp lc($$fullname{$b}) } keys %$fullname) {
+ foreach my $student (sort
+ {
+ if (lc($$fullname{$a}) ne lc($$fullname{$b})) {
+ return (lc($$fullname{$a}) cmp lc($$fullname{$b}));
+ }
+ return $a cmp $b;
+ }
+ (keys(%$fullname))) {
my ($uname,$udom) = split(/:/,$student);
my %status = ();
if ($env{'form.showgrading'} eq 'yes' && $submitonly ne 'all') {
@@ -1831,13 +1844,22 @@ KEYWORDS
''."\n";
$result.=' '.
- 'Compose Message to student'.(scalar(@col_fullnames) >= 1 ? 's' : '').' '.
+ &mt('Compose message to student').(scalar(@col_fullnames) >= 1 ? 's' : '').' ('.
+ &mt('incl. grades').' )'.
''."\n".
- '
(Message will be sent when you click on Save & Next below.)'."\n"
- if ($env{'form.handgrade'} eq 'yes');
+ '
('.
+ &mt('Message will be sent when you click on Save & Next below.').")\n";
$request->print($result);
}
+ if (&Apache::lonnet::allowed('vgr',$env{'request.course.id'})) {
+ $request->print('
'.
+ &Apache::loncommon::track_student_link(&mt('View recent activity'),$uname,$udom,'check'));
+ }
+ if (&Apache::lonnet::allowed('opa',$env{'request.course.id'})) {
+ $request->print('
'.
+ &Apache::loncommon::pprmlink(&mt('Set/Change parameters'),$uname,$udom,$symb,'check'));
+ }
my %seen = ();
my @partlist;
@@ -1953,18 +1975,24 @@ sub processHandGrade {
my $includemsg = $env{'form.includemsg'.$ctr};
my ($subject,$message,$msgstatus) = ('','','');
if ($includemsg =~ /savemsg|newmsg\Q$ctr\E/) {
- $subject = $env{'form.msgsub'} if ($includemsg =~ /^msgsub/);
+ $subject = $env{'form.msgsub'} if ($includemsg =~ /msgsub/);
+ unless ($subject=~/\w/) { $subject=&mt('Grading Feedback'); }
my (@msgnum) = split(/,/,$includemsg);
foreach (@msgnum) {
$message.=$env{'form.'.$_} if ($_ =~ /savemsg|newmsg/ && $_ ne '');
}
$message =&Apache::lonfeedback::clear_out_html($message);
- $message.="\n\nPoint".($pts > 1 ? 's':'').' awarded = '.$pts.' out of '.$wgt;
- $message.=" for 1 ? 's':'').' awarded = '.$pts.' out of '.$wgt;
+ $message.=" for $env{'form.probTitle'}";
+ }
$msgstatus = &Apache::lonmsg::user_normal_msg ($uname,$udom,
- $env{'form.msgsub'},$message);
+ $subject.' ['.
+ &Apache::lonnet::declutter($url).']',$message);
+ $request->print('
'.&mt('Sending message to [_1]@[_2]',$uname,$udom).': '.
+ $msgstatus);
}
if ($env{'form.collaborator'.$ctr}) {
my @collabstrs=&Apache::loncommon::get_env_multiple("form.collaborator$ctr");
@@ -2073,7 +2101,13 @@ sub processHandGrade {
my (@parsedlist,@nextlist);
my ($nextflg) = 0;
- foreach (sort {lc($$fullname{$a}) cmp lc($$fullname{$b}) } keys %$fullname) {
+ foreach (sort
+ {
+ if (lc($$fullname{$a}) ne lc($$fullname{$b})) {
+ return (lc($$fullname{$a}) cmp lc($$fullname{$b}));
+ }
+ return $a cmp $b;
+ } (keys(%$fullname))) {
if ($nextflg == 1 && $button =~ /Next$/) {
push @parsedlist,$_;
}
@@ -2651,7 +2685,13 @@ sub viewgrades {
#list all the students - with points and grade status
my (undef,undef,$fullname) = &getclasslist($env{'form.section'},'1');
my $ctr = 0;
- foreach (sort {lc($$fullname{$a}) cmp lc($$fullname{$b}) } keys %$fullname) {
+ foreach (sort
+ {
+ if (lc($$fullname{$a}) ne lc($$fullname{$b})) {
+ return (lc($$fullname{$a}) cmp lc($$fullname{$b}));
+ }
+ return $a cmp $b;
+ } (keys(%$fullname))) {
$ctr++;
$result.=&viewstudentgrade($url,$symb,$env{'request.course.id'},
$_,$$fullname{$_},\@parts,\%weight,$ctr,\%last_resets);
@@ -3409,7 +3449,13 @@ LISTJAVASCRIPT
my (undef,undef,$fullname) = &getclasslist($getsec,'1');
my $ptr = 1;
- foreach my $student (sort {lc($$fullname{$a}) cmp lc($$fullname{$b}) } keys %$fullname) {
+ foreach my $student (sort
+ {
+ if (lc($$fullname{$a}) ne lc($$fullname{$b})) {
+ return (lc($$fullname{$a}) cmp lc($$fullname{$b}));
+ }
+ return $a cmp $b;
+ } (keys(%$fullname))) {
my ($uname,$udom) = split(/:/,$student);
$studentTable.=($ptr%2 == 1 ? '