--- loncom/homework/grades.pm 2003/04/01 05:21:48 1.82 +++ loncom/homework/grades.pm 2003/04/11 17:57:37 1.84 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.82 2003/04/01 05:21:48 albertel Exp $ +# $Id: grades.pm,v 1.84 2003/04/11 17:57:37 ng Exp $ # # Copyright Michigan State University Board of Trustees # @@ -717,7 +717,7 @@ sub sub_page_kw_js { height = 600; scrollbar = "yes"; } -// if (window.pWin) window.pWin.close(); +// if (window.pWin) {window.pWin.close(); window.pWin=null} pWin = window.open('', 'MessageCenter', 'toolbar=no,location=no,scrollbars='+scrollbar+',screenx=70,screeny=75,width=600,height='+height); pWin.focus(); pDoc = pWin.document; @@ -752,11 +752,7 @@ sub sub_page_kw_js { pDoc.write(" includemsg = 1;"); pDoc.write(" }"); pDoc.write(" imgformname = eval(\\"opener.document.SCORE.mailicon\\"+usrctr);"); - pDoc.write(" if (includemsg) {"); - pDoc.write(" imgformname.src = \\"$iconpath/mailto.gif\\";"); - pDoc.write(" } else {"); - pDoc.write(" imgformname.src = \\"$iconpath/mailbkgrd.gif\\";"); - pDoc.write(" }"); + pDoc.write(" imgformname.src = \\"$iconpath/\\"+((includemsg) ? \\"mailto.gif\\" : \\"mailbkgrd.gif\\");"); pDoc.write(" var includemsg = eval(\\"opener.document.SCORE.includemsg\\"+usrctr);"); pDoc.write(" includemsg.value = msgchk;"); @@ -1250,6 +1246,7 @@ KEYWORDS my $lastone = pop @col_fullnames; $msgfor .= ', '.(join ', ',@col_fullnames).' and '.$lastone.'.'; } + $msgfor =~ s/\'/\\'/g; $result.='
".scalar(@array). + '-'.$currentquest.'-'.$questnum.'
checking studnet -'.$id.'- againt -'.$scanID.'-'); + if (lc($id) eq lc($scanID)) { Apache->request->print('success');return $$idmap{$id}; } + } + return undef; +} + +sub scantron_filter { + my ($curres)=@_; + if (ref($curres) && $curres->is_problem() && !$curres->randomout) { + return 1; + } + return 0; } sub scantron_process_students { @@ -2978,6 +2984,10 @@ sub scantron_process_students { my $scanlines=Apache::File->new($Apache::lonnet::perlvar{'lonScansDir'}."/$ENV{'form.scantron_selectfile'}"); my $classlist=&Apache::loncoursedata::get_classlist(); my %idmap=&username_to_idmap($classlist); + my $navmap=Apache::lonnavmaps::navmap->new($ENV{'request.course.fn'}.'.db',$ENV{'request.course.fn'}.'_parms.db',1, 1); + my $map=$navmap->getResourceByUrl($sequence); + my @resources=$navmap->retrieveResources($map,\&scantron_filter,1,0); + $r->print("geto ".scalar(@resources)."
doing studnet'.$uname.''); ($uname,$udom)=split(/:/,$uname); + &Apache::lonnet::delenv('form\.counter$'); #') stupid emacs + &Apache::lonnet::appenv(%$scan_record); + $Apache::lonxml::debug=1; + &Apache::lonhomework::showhash(%ENV); + $Apache::lonxml::debug=0; + + foreach my $resource (@resources) { + my $result=&Apache::lonnet::ssi($resource->src(), + ('submitted' =>'scantron', + 'grade_target' =>'grade', + 'grade_username'=>$uname, + 'grade_domain' =>$udom, + 'grade_courseid'=>$ENV{'request.course.id'}, + 'grade_symb' =>$resource->symb())); + $r->print('
'. + $resource->symb().'-'. + $resource->src().'-'.'result is'.$result); + last; + } + &Apache::lonnet::delenv('form\.counter$'); #') stupid emacs + &Apache::lonnet::delenv('scantron\.'); + last; #FIXME #get iterator for $sequence #foreach question 'submit' the students answer to the server