--- loncom/homework/grades.pm 2003/10/14 00:05:16 1.130.2.1.2.9 +++ loncom/homework/grades.pm 2003/09/18 17:20:05 1.138 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.130.2.1.2.9 2003/10/14 00:05:16 albertel Exp $ +# $Id: grades.pm,v 1.138 2003/09/18 17:20:05 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -218,7 +218,8 @@ sub commonJSfunctions { } } } else { - if (selectOne.selected) return selectOne.value; + // only one value it must be the selected one + return selectOne.value; } } @@ -517,8 +518,8 @@ LISTJAVASCRIPT my $saveStatus = $ENV{'form.Status'} eq '' ? 'Active' : $ENV{'form.Status'}; $ENV{'form.Status'} = $saveStatus; - $gradeTable.=' last sub only'."\n". - ' last sub & parts info'."\n". + $gradeTable.=' last submission only'."\n". + ' last submission & parts info'."\n". ' by dates and submissions'."\n". ' all details'."\n". ''."\n". @@ -544,7 +545,7 @@ LISTJAVASCRIPT $gradeTable.='" />'."\n"; - + $gradeTable.='Check For Plagiarism'; my (undef, undef, $fullname) = &getclasslist($getsec,'1'); $gradeTable.='
'.
'
Wha!!! ".scalar(@array). + '-'.$currentquest.'-'.$questnum.' '); + } if (length($array[0]) eq $$scantron_config{'Qlength'}) { $record{"scantron.$questnum.answer"}=''; - if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) { - push(@{$record{"scantron.missingerror"}},$questnum); - } } else { $record{"scantron.$questnum.answer"}=$alphabet[length($array[0])]; } - if (scalar(@array) gt 2) { - Apache->request->print("snippet is $currentquest"); - push(@{$record{'scantron.doubleerror'}},$questnum); - my @ans=@array; - my $i=length($ans[0]);shift(@ans); - while ($#ans) { - $i+=length($ans[0])+1; - $record{"scantron.$questnum.answer"}.=$alphabet[$i]; - shift(@ans); - } - } } $record{'scantron.maxquest'}=$questnum; return \%record; } sub scantron_add_delay { - my ($delayqueue,$scanline,$errormessage,$errorcode)=@_; - Apache->request->print('add_delay_error '.$_[2] ); - push(@$delayqueue, - {'line' => $scanline, 'emsg' => $errormessage, - 'ecode' => $errorcode } - ); } sub scantron_find_student { - my ($scantron_record,$scan_data,$idmap,$line)=@_; + my ($scantron_record,$idmap)=@_; my $scanID=$$scantron_record{'scantron.ID'}; - if ($scanID =~ /^\s*$/) { - return &scan_data($scan_data,"$line.user"); - } foreach my $id (keys(%$idmap)) { - #Apache->request->print(' checking studnet -'.$id.'- againt -'.$scanID.'-'); - if (lc($id) eq lc($scanID)) { - #Apache->request->print('success'); - return $$idmap{$id}; - } + Apache->request->print(' checking studnet -'.$id.'- againt -'.$scanID.'-'); + if (lc($id) eq lc($scanID)) { Apache->request->print('success');return $$idmap{$id}; } } return undef; } @@ -3410,406 +3322,22 @@ sub scantron_filter { return 0; } -sub scantron_process_corrections { - my ($r) = @_; - my %scantron_config=&get_scantron_config($ENV{'form.scantron_format'}); - my ($scanlines,$scan_data)=&scantron_getfile(); - my $classlist=&Apache::loncoursedata::get_classlist(); - my $which=$ENV{'form.scantron_line'}; - my $line=&scantron_get_line($scanlines,$which); - my ($skip,$err,$errmsg); - if ($ENV{'form.scantron_skip_record'}) { - $skip=1; - } elsif ($ENV{'form.scantron_corrections'} =~ /^(duplicate|incorrect)ID$/) { - my $newstudent=$ENV{'form.scantron_username'}.':'. - $ENV{'form.scantron_domain'}; - my $newid=$classlist->{$newstudent}->[&Apache::loncoursedata::CL_ID]; - ($line,$err,$errmsg)= - &scantron_fixup_scanline(\%scantron_config,$scan_data,$line,$which, - 'ID',{'newid'=>$newid, - 'username'=>$ENV{'form.scantron_username'}, - 'domain'=>$ENV{'form.scantron_domain'}}); - } elsif ($ENV{'form.scantron_corrections'} =~ /^(missing|double)bubble$/) { - foreach my $question (split(',',$ENV{'form.scantron_questions'})) { - ($line,$err,$errmsg)= - &scantron_fixup_scanline(\%scantron_config,$scan_data,$line, - $which,'answer', - { 'question'=>$question, - 'response'=>$ENV{"form.scantron_correct_Q_$question"}}); - if ($err) { last; } - } - } - if ($err) { - $r->print("Unable to accept last correction, an error occurred :$errmsg:"); - } else { - &scantron_put_line($scanlines,$which,$line,$skip); - &scantron_putfile($scanlines,$scan_data); - } -} - - -sub scantron_validate_file { - my ($r) = @_; - my ($symb,$url)=&get_symb_and_url($r); - if (!$symb) {return '';} - my $default_form_data=&defaultFormData($symb,$url); - - if ($ENV{'form.scantron_corrections'}) { - &scantron_process_corrections($r); - } - #get the student pick code ready - $r->print(&Apache::loncommon::studentbrowser_javascript()); - my $result= < Validating ".$validate_phases[$currentphase]." "); - $r->rflush(); - my $which="scantron_validate_".$validate_phases[$currentphase]; - { - no strict 'refs'; - ($stop,$currentphase)=&$which($r,$currentphase); - } - } - if (!$stop) { - $r->print("Validation process complete, click 'Submit' to start proccssing"); - $r->print(''); - } else { - $r->print(''); - $r->print(""); - } - $r->print(' |