--- loncom/homework/grades.pm 2002/07/03 21:05:33 1.35 +++ loncom/homework/grades.pm 2002/07/07 20:08:45 1.36 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.35 2002/07/03 21:05:33 ng Exp $ +# $Id: grades.pm,v 1.36 2002/07/07 20:08:45 ng Exp $ # # Copyright Michigan State University Board of Trustees # @@ -351,7 +351,7 @@ sub submission { my ($request,$counter,$total) = @_; if ($counter == 0) { - $request->print(<print(< function updateRadio(radioButton,formtextbox,formsel,wgt) { var pts = formtextbox.value; @@ -400,30 +400,220 @@ sub submission { function keywords(keyform) { var keywds = keyform.value; - var nret = prompt("Keywords list, separate by a space or comma. Add/delete to list if desired.",keywds); + var nret = prompt("Keywords list, separated by a space. Add/delete to list if desired.",keywds); if (nret==null) return; keyform.value = nret; return; } - function addmsg(msgform) { - var msg = msgform.value; - var nret = prompt("Enter the message you wish to send to the student.",msg); +//===================== Script to add keyword(s) ================== + function getSel() { + if (document.getSelection) txt = document.getSelection(); + else if (document.selection) txt = document.selection.createRange().text; + else return; + var cleantxt = txt.replace(new RegExp('([\\f\\n\\r\\t\\v ])+', 'g')," "); + if (cleantxt=="") { + alert("Select a word or group of words from document and then click this link."); + return; + } + var nret = prompt("Add selection to keyword list?",cleantxt); if (nret==null) return; - msgform.value = nret; + var curlist = document.SCORE.keywords.value; + document.SCORE.keywords.value = curlist+" "+nret; return; } - function savedmsg(msgform) { - var Nmsg = msgform.value; - var nret = prompt("Number of saved messages = ",Nmsg); - if (nret==null) return; - msgform.value = nret; +//====================== Script for composing message ============== + function msgCenter(msgform,usrctr,fullname) { + var Nmsg = msgform.savemsgN.value; + savedMsgHeader(Nmsg,usrctr,fullname); + var subject = msgform.msgsub.value; + displaySubject(subject); + for (var i=1; i<=Nmsg; i++) { + var message = eval("document.SCORE.savemsg"+i+".value"); + displaySavedMsg(i,message); + } + newmsg = eval("document.SCORE.newmsg"+usrctr+".value"); + newMsg(newmsg); + msgTail(); return; } +function savedMsgHeader(Nmsg,usrctr,fullname) { + var height = 30*Nmsg+250; + var scrollbar = "no"; + if (height > 600) { + height = 600; + scrollbar = "yes"; + } + pWin = window.open('', 'MessageCenter', 'toolbar=no,location=no,scrollbars='+scrollbar+',width=600,height='+height); + pWin.document.write(""); + pWin.document.write("Message Central"); + + pWin.document.write(" -JAVASCRIPT +SUBJAVASCRIPT } (my $url=$ENV{'form.url'})=~s-^http://($ENV{'SERVER_NAME'}|$ENV{'HTTP_HOST'})--; if ($ENV{'form.student'} eq '') { &moreinfo($request,'Need student login id'); return ''; } @@ -436,7 +626,8 @@ JAVASCRIPT # # header info if ($counter == 0) { - $request->print('

Submission Record

'); + $request->print('

 Submission Record

'. + ' Resource: '.$url.''); } # @@ -473,20 +664,25 @@ JAVASCRIPT ''."\n". ''."\n". ''."\n". - ''."\n". - ''."\n". - ''."\n". - ''."\n". - ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". ''."\n"); if ($ENV{'form.handgrade'} eq 'yes') { $request->print(<Grading Options -Keywords list    -Add a message    -Saved messages

Keyword Options  +Keyword List    +Paste Selection to Keyword list (requires N4+ and IE5+)    +Keyword Highlight Attribute

KEYWORDS } } @@ -494,9 +690,10 @@ KEYWORDS # # Student info $request->print(($counter == 0 ? '' : '


')); + my $fullname = ($ENV{'form.fullname'} ne '' ? $ENV{'form.fullname'} : &get_fullname($uname,$udom)); my $result.=''; if ($ENV{'form.handgrade'} eq 'yes') { my $subonly = &get_last_submission($symb,$uname,$udom,$ENV{'request.course.id'}); @@ -517,7 +714,7 @@ KEYWORDS '" value="'.(join ':',@collaborators).'" />'."\n"; } } - $result.='
Username: '.$uname. - 'Fullname: '. - ($ENV{'form.fullname'} ne '' ? $ENV{'form.fullname'} : &get_fullname($uname,$udom)). + 'Fullname: '.$fullname. +# ($ENV{'form.fullname'} ne '' ? $ENV{'form.fullname'} : &get_fullname($uname,$udom)). 'Domain: '.$udom.'
Resource: '.$url.'
'."\n"; + $result.=''."\n"; $request->print($result); # # print student answer @@ -536,6 +733,8 @@ KEYWORDS # display grading options $result=''. ''."\n"; + $result.=''."\n". + $result.=''."\n". $result.='\n"; + $result.="  \n"; + $result.='Compose Message'."\n"; } } $result.='
Points'; my $ctr = 0; @@ -570,7 +769,9 @@ KEYWORDS ''."\n"; $optsel =~ s/
'; @@ -639,14 +840,26 @@ sub processHandGrade { my $ngrade = $ENV{'form.NCT'}; my $ntstu = $ENV{'form.NTSTU'}; my $keywords= $ENV{'form.keywords'}; - my $addmsg = $ENV{'form.addmsg'}; - print "addmsg=$addmsg
"; - if ($keywords ne '') { + my $newmsg0 = $ENV{'form.newmsg0'}; + print "newmsg0=$newmsg0
"; + my $newmsg1 = $ENV{'form.newmsg1'}; + print "newmsg1=$newmsg1
"; + my $oldmsg1 = $ENV{'form.savemsg1'}; + print "oldmsg1=$oldmsg1
"; + my $oldmsg2 = $ENV{'form.savemsg2'}; + print "oldmsg1=$oldmsg2
"; + my $oldmsg3 = $ENV{'form.savemsg3'}; + print "oldmsg1=$oldmsg3
"; + my $oldmsg4 = $ENV{'form.savemsg4'}; + print "oldmsg1=$oldmsg4
"; + my $messages = $ENV{'form.includemsg0'}; + print "messages=$messages
"; + if ($keywords ne '') { my $crsname = $ENV{'course.'.$ENV{'request.course.id'}.'.num'}; my $crsdom = $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}; - my $putresult = &Apache::lonnet::put - ('nohist_handgrade',{$symb.'_keywords' => $keywords}, - $crsdom,$crsname); +# my $putresult = &Apache::lonnet::put +# ('nohist_handgrade',{$symb.'_keywords' => $keywords}, +# $crsdom,$crsname); } my (@parts) = sort(&getpartlist($url));