version 1.470, 2007/10/29 09:46:28
|
version 1.483, 2007/11/06 11:48:48
|
Line 865 LISTJAVASCRIPT
|
Line 865 LISTJAVASCRIPT
|
my $saveStatus = $stu_status eq '' ? 'Active' : $stu_status; |
my $saveStatus = $stu_status eq '' ? 'Active' : $stu_status; |
$env{'form.Status'} = $saveStatus; |
$env{'form.Status'} = $saveStatus; |
$gradeTable.='<label><input type="radio" name="lastSub" value="lastonly" '.$checklastsub.' /> last submission only </label>'."\n". |
$gradeTable.='<label><input type="radio" name="lastSub" value="lastonly" '.$checklastsub.' /> last submission only </label>'."\n". |
'<label><input type="radio" name="lastSub" value="last" /> last submission & parts info </label>'."\n". |
'<label><input type="radio" name="lastSub" value="last" /> last submission & parts info </label>'."\n". |
'<label><input type="radio" name="lastSub" value="datesub" /> by dates and submissions </label>'."\n". |
'<label><input type="radio" name="lastSub" value="datesub" /> by dates and submissions </label>'."\n". |
'<label><input type="radio" name="lastSub" value="all" /> all details</label><br />'."\n". |
'<label><input type="radio" name="lastSub" value="all" /> all details</label><br />'."\n". |
' <b>Grading Increments:</b> <select name="increment">'. |
' <b>Grading Increments:</b> <select name="increment">'. |
Line 902 LISTJAVASCRIPT
|
Line 902 LISTJAVASCRIPT
|
$gradeTable.=&check_buttons(); |
$gradeTable.=&check_buttons(); |
$gradeTable.='<label><input type="checkbox" name="checkPlag" checked="checked" />Check For Plagiarism</label>'; |
$gradeTable.='<label><input type="checkbox" name="checkPlag" checked="checked" />Check For Plagiarism</label>'; |
my ($classlist, undef, $fullname) = &getclasslist($getsec,'1',$getgroup); |
my ($classlist, undef, $fullname) = &getclasslist($getsec,'1',$getgroup); |
$gradeTable.='<table border="0"><tr><td bgcolor="#777777">'. |
$gradeTable.= &Apache::loncommon::start_data_table(). |
'<table border="0"><tr bgcolor="#e6ffff">'; |
&Apache::loncommon::start_data_table_header_row(); |
my $loop = 0; |
my $loop = 0; |
while ($loop < 2) { |
while ($loop < 2) { |
$gradeTable.='<td><b> No.</b> </td><td><b> Select </b></td>'. |
$gradeTable.='<th>No.</th><th>Select</th>'. |
'<td>'.&nameUserString('header').' Section/Group</td>'; |
'<th>'.&nameUserString('header').' '.'Section/Group</th>'; |
if ($env{'form.showgrading'} eq 'yes' |
if ($env{'form.showgrading'} eq 'yes' |
&& $submitonly ne 'queued' |
&& $submitonly ne 'queued' |
&& $submitonly ne 'all') { |
&& $submitonly ne 'all') { |
foreach (sort(@$partlist)) { |
foreach (sort(@$partlist)) { |
my $display_part=&get_display_part((split(/_/))[0],$symb); |
my $display_part=&get_display_part((split(/_/))[0],$symb); |
$gradeTable.='<td><b> Part: '.$display_part. |
$gradeTable.='<th>Part: '.$display_part. |
' Status </b></td>'; |
' Status</h>'; |
} |
} |
} elsif ($submitonly eq 'queued') { |
} elsif ($submitonly eq 'queued') { |
$gradeTable.='<td><b> '.&mt('Queue Status').' </b></td>'; |
$gradeTable.='<th>'.&mt('Queue Status').' </th>'; |
} |
} |
$loop++; |
$loop++; |
# $gradeTable.='<td></td>' if ($loop%2 ==1); |
# $gradeTable.='<td></td>' if ($loop%2 ==1); |
} |
} |
$gradeTable.='</tr>'."\n"; |
$gradeTable.=&Apache::loncommon::end_data_table_header_row()."\n"; |
|
|
my $ctr = 0; |
my $ctr = 0; |
foreach my $student (sort |
foreach my $student (sort |
Line 978 LISTJAVASCRIPT
|
Line 978 LISTJAVASCRIPT
|
my $section = $classlist->{$student}->[&Apache::loncoursedata::CL_SECTION()]; |
my $section = $classlist->{$student}->[&Apache::loncoursedata::CL_SECTION()]; |
my $group = $classlist->{$student}->[&Apache::loncoursedata::CL_GROUP()]; |
my $group = $classlist->{$student}->[&Apache::loncoursedata::CL_GROUP()]; |
if ( $perm{'vgr'} eq 'F' ) { |
if ( $perm{'vgr'} eq 'F' ) { |
$gradeTable.='<tr bgcolor="#ffffe6">' if ($ctr%2 ==1); |
if ($ctr%2 ==1) { |
|
$gradeTable.= &Apache::loncommon::start_data_table_row(); |
|
} |
$gradeTable.='<td align="right">'.$ctr.' </td>'. |
$gradeTable.='<td align="right">'.$ctr.' </td>'. |
'<td align="center"><label><input type=checkbox name="stuinfo" value="'. |
'<td align="center"><label><input type=checkbox name="stuinfo" value="'. |
$student.':'.$$fullname{$student}.':::SECTION'.$section. |
$student.':'.$$fullname{$student}.':::SECTION'.$section. |
') " /> </label></td>'."\n".'<td>'. |
') " /> </label></td>'."\n".'<td>'. |
&nameUserString(undef,$$fullname{$student},$uname,$udom). |
&nameUserString(undef,$$fullname{$student},$uname,$udom). |
' '.$section.'/'.$group.'</td>'."\n"; |
' '.$section.($group ne '' ?'/'.$group:'').'</td>'."\n"; |
|
|
if ($env{'form.showgrading'} eq 'yes' && $submitonly ne 'all') { |
if ($env{'form.showgrading'} eq 'yes' && $submitonly ne 'all') { |
foreach (sort keys(%status)) { |
foreach (sort keys(%status)) { |
Line 993 LISTJAVASCRIPT
|
Line 995 LISTJAVASCRIPT
|
} |
} |
} |
} |
# $gradeTable.='<td></td>' if ($ctr%2 ==1); |
# $gradeTable.='<td></td>' if ($ctr%2 ==1); |
$gradeTable.='</tr>'."\n" if ($ctr%2 ==0); |
if ($ctr%2 ==0) { |
|
$gradeTable.=&Apache::loncommon::end_data_table_row()."\n"; |
|
} |
} |
} |
} |
} |
if ($ctr%2 ==1) { |
if ($ctr%2 ==1) { |
Line 1007 LISTJAVASCRIPT
|
Line 1011 LISTJAVASCRIPT
|
} elsif ($submitonly eq 'queued') { |
} elsif ($submitonly eq 'queued') { |
$gradeTable.='<td> </td>'; |
$gradeTable.='<td> </td>'; |
} |
} |
$gradeTable.='</tr>'; |
$gradeTable.=&Apache::loncommon::end_data_table_row(); |
} |
} |
|
|
$gradeTable.='</table></td></tr></table>'."\n". |
$gradeTable.=&Apache::loncommon::end_data_table()."\n". |
'<input type="button" '. |
'<input type="button" '. |
'onClick="javascript:checkSelect(this.form.stuinfo);" '. |
'onClick="javascript:checkSelect(this.form.stuinfo);" '. |
'value="Next->" /></form>'."\n"; |
'value="Next->" /></form>'."\n"; |
Line 1028 LISTJAVASCRIPT
|
Line 1032 LISTJAVASCRIPT
|
' students checked for '.$submissions.')</span><br />'; |
' students checked for '.$submissions.')</span><br />'; |
} |
} |
} elsif ($ctr == 1) { |
} elsif ($ctr == 1) { |
$gradeTable =~ s/type=checkbox/type=checkbox checked/; |
$gradeTable =~ s/type="checkbox"/type="checkbox" checked="checked"/; |
} |
} |
$gradeTable.=&show_grading_menu_form($symb); |
$gradeTable.=&show_grading_menu_form($symb); |
$request->print($gradeTable); |
$request->print($gradeTable); |
Line 1969 KEYWORDS
|
Line 1973 KEYWORDS
|
$mode='answer'; |
$mode='answer'; |
} |
} |
&Apache::lonxml::clear_problem_counter(); |
&Apache::lonxml::clear_problem_counter(); |
$request->print(&show_problem($request,$symb,$uname,$udom,1,1,$mode)); |
$request->print(&show_problem($request,$symb,$uname,$udom,1,1,$mode,{'request.prefix' => 'ctr'.$counter})); |
} |
} |
|
|
my %record = &Apache::lonnet::restore($symb,$env{'request.course.id'},$udom,$uname); |
my %record = &Apache::lonnet::restore($symb,$env{'request.course.id'},$udom,$uname); |
Line 3169 sub viewgrades {
|
Line 3173 sub viewgrades {
|
$sectionClass=&mt('Students in Section(s) [_1]',$section_display).'</h3>'; |
$sectionClass=&mt('Students in Section(s) [_1]',$section_display).'</h3>'; |
} |
} |
$result.='<h3>'.&mt('Assign Common Grade To [_1]',$sectionClass); |
$result.='<h3>'.&mt('Assign Common Grade To [_1]',$sectionClass); |
$result.= '<table border=0><tr><td bgcolor="#777777">'."\n". |
$result.= &Apache::loncommon::start_data_table(); |
'<table border=0><tr bgcolor="#ffffdd"><td>'; |
|
#radio buttons/text box for assigning points for a section or class. |
#radio buttons/text box for assigning points for a section or class. |
#handles different parts of a problem |
#handles different parts of a problem |
my ($partlist,$handgrade,$responseType) = &response_type($symb); |
my ($partlist,$handgrade,$responseType) = &response_type($symb); |
my %weight = (); |
my %weight = (); |
my $ctsparts = 0; |
my $ctsparts = 0; |
$result.='<table border="0">'; |
|
my %seen = (); |
my %seen = (); |
my @part_response_id = &flatten_responseType($responseType); |
my @part_response_id = &flatten_responseType($responseType); |
foreach my $part_response_id (@part_response_id) { |
foreach my $part_response_id (@part_response_id) { |
Line 3188 sub viewgrades {
|
Line 3190 sub viewgrades {
|
my $wgt = &Apache::lonnet::EXT('resource.'.$partid.'.weight',$symb); |
my $wgt = &Apache::lonnet::EXT('resource.'.$partid.'.weight',$symb); |
$weight{$partid} = $wgt eq '' ? '1' : $wgt; |
$weight{$partid} = $wgt eq '' ? '1' : $wgt; |
|
|
|
$result.=&Apache::loncommon::start_data_table_row().'<td>'; |
$result.='<input type="hidden" name="partid_'. |
$result.='<input type="hidden" name="partid_'. |
$ctsparts.'" value="'.$partid.'" />'."\n"; |
$ctsparts.'" value="'.$partid.'" />'."\n"; |
$result.='<input type="hidden" name="weight_'. |
$result.='<input type="hidden" name="weight_'. |
$partid.'" value="'.$weight{$partid}.'" />'."\n"; |
$partid.'" value="'.$weight{$partid}.'" />'."\n"; |
my $display_part=&get_display_part($partid,$symb); |
my $display_part=&get_display_part($partid,$symb); |
$result.='<tr><td><b>Part:</b> '.$display_part.' <b>Point:</b> </td><td>'; |
$result.= |
|
'<b>Part:</b> '.$display_part.' <b>Point:</b> </td><td>'; |
$result.='<table border="0"><tr>'; |
$result.='<table border="0"><tr>'; |
my $ctr = 0; |
my $ctr = 0; |
while ($ctr<=$weight{$partid}) { # display radio buttons in a nice table 10 across |
while ($ctr<=$weight{$partid}) { # display radio buttons in a nice table 10 across |
Line 3208 sub viewgrades {
|
Line 3212 sub viewgrades {
|
$partid.'" size="4" '.'onChange="javascript:writePoint(\''. |
$partid.'" size="4" '.'onChange="javascript:writePoint(\''. |
$partid.'\','.$weight{$partid}.',\'textval\')" /> /'. |
$partid.'\','.$weight{$partid}.',\'textval\')" /> /'. |
$weight{$partid}.' (problem weight)</td>'."\n"; |
$weight{$partid}.' (problem weight)</td>'."\n"; |
$result.= '</td><td><select name="SELVAL_'.$partid.'"'. |
$result.= '<td><select name="SELVAL_'.$partid.'"'. |
'onChange="javascript:writeRadText(\''.$partid.'\','. |
'onChange="javascript:writeRadText(\''.$partid.'\','. |
$weight{$partid}.')"> '. |
$weight{$partid}.')"> '. |
'<option selected="selected"> </option>'. |
'<option selected="selected"> </option>'. |
'<option>excused</option>'. |
'<option>excused</option>'. |
'<option>reset status</option></select></td>'. |
'<option>reset status</option></select></td>'. |
'<td><label><input type="checkbox" name="FORCE_'.$partid.'" /> Override "Correct"</label></td></tr>'."\n"; |
'<td><label><input type="checkbox" name="FORCE_'.$partid.'" /> Override "Correct"</label></td>'.&Apache::loncommon::end_data_table_row()."\n"; |
$ctsparts++; |
$ctsparts++; |
} |
} |
$result.='</table>'.'</td></tr></table>'.'</td></tr></table>'."\n". |
$result.=&Apache::loncommon::end_data_table()."\n". |
'<input type="hidden" name="totalparts" value="'.$ctsparts.'" />'; |
'<input type="hidden" name="totalparts" value="'.$ctsparts.'" />'; |
$result.='<input type="button" value="Revert to Default" '. |
$result.='<input type="button" value="Revert to Default" '. |
'onClick="javascript:resetEntry('.$ctsparts.');" target="_self" />'; |
'onClick="javascript:resetEntry('.$ctsparts.');" />'; |
|
|
#table listing all the students in a section/class |
#table listing all the students in a section/class |
#header of table |
#header of table |
$result.= '<h3>Assign Grade to Specific Students in '.$sectionClass; |
$result.= '<h3>Assign Grade to Specific Students in '.$sectionClass; |
$result.= '<table border=0><tr><td bgcolor="#777777">'."\n". |
$result.= &Apache::loncommon::start_data_table(). |
'<table border=0><tr bgcolor="#deffff"><td> <b>No.</b> </td>'. |
&Apache::loncommon::start_data_table_header_row(). |
'<td>'.&nameUserString('header')."</td>\n"; |
'<th>No.</th>'. |
|
'<th>'.&nameUserString('header')."</th>\n"; |
my (@parts) = sort(&getpartlist($symb)); |
my (@parts) = sort(&getpartlist($symb)); |
my (undef,undef,$url)=&Apache::lonnet::decode_symb($symb); |
my (undef,undef,$url)=&Apache::lonnet::decode_symb($symb); |
my @partids = (); |
my @partids = (); |
Line 3239 sub viewgrades {
|
Line 3244 sub viewgrades {
|
push(@partids, $partid); |
push(@partids, $partid); |
my $display_part=&get_display_part($partid,$symb); |
my $display_part=&get_display_part($partid,$symb); |
if ($display =~ /^Partial Credit Factor/) { |
if ($display =~ /^Partial Credit Factor/) { |
$result.='<td><b>Score Part:</b> '.$display_part. |
$result.='<th>Score Part: '.$display_part. |
' <br /><b>(weight = '.$weight{$partid}.')</b></td>'."\n"; |
' <br />(weight = '.$weight{$partid}.')</th>'."\n"; |
next; |
next; |
} else { |
} else { |
$display =~s/\[Part: \Q$partid\E\]/Part:<\/b> $display_part/; |
$display =~s/\[Part: \Q$partid\E\]/Part:<\/b> $display_part/; |
} |
} |
$display =~ s|Problem Status|Grade Status<br />|; |
$display =~ s|Problem Status|Grade Status<br />|; |
$result.='<td><b>'.$display.'</td>'."\n"; |
$result.='<th>'.$display.'</th>'."\n"; |
} |
} |
$result.='</tr>'; |
$result.=&Apache::loncommon::end_data_table_header_row(); |
|
|
my %last_resets = |
my %last_resets = |
&get_last_resets($symb,$env{'request.course.id'},\@partids); |
&get_last_resets($symb,$env{'request.course.id'},\@partids); |
Line 3268 sub viewgrades {
|
Line 3273 sub viewgrades {
|
$result.=&viewstudentgrade($symb,$env{'request.course.id'}, |
$result.=&viewstudentgrade($symb,$env{'request.course.id'}, |
$_,$$fullname{$_},\@parts,\%weight,$ctr,\%last_resets); |
$_,$$fullname{$_},\@parts,\%weight,$ctr,\%last_resets); |
} |
} |
$result.='</table></td></tr></table>'; |
$result.=&Apache::loncommon::end_data_table(); |
$result.='<input type="hidden" name="total" value="'.$ctr.'" />'."\n"; |
$result.='<input type="hidden" name="total" value="'.$ctr.'" />'."\n"; |
$result.='<input type="button" value="Save" '. |
$result.='<input type="button" value="Save" '. |
'onClick="javascript:submit();" target="_self" /></form>'."\n"; |
'onClick="javascript:submit();" target="_self" /></form>'."\n"; |
Line 3291 sub viewstudentgrade {
|
Line 3296 sub viewstudentgrade {
|
my ($uname,$udom) = split(/:/,$student); |
my ($uname,$udom) = split(/:/,$student); |
my %record=&Apache::lonnet::restore($symb,$courseid,$udom,$uname); |
my %record=&Apache::lonnet::restore($symb,$courseid,$udom,$uname); |
my %aggregates = (); |
my %aggregates = (); |
my $result='<tr bgcolor="#ffffdd"><td align="right">'. |
my $result=&Apache::loncommon::start_data_table_row().'<td align="right">'. |
'<input type="hidden" name="ctr'.($ctr-1).'" value="'.$student.'" />'. |
'<input type="hidden" name="ctr'.($ctr-1).'" value="'.$student.'" />'. |
"\n".$ctr.' </td><td> '. |
"\n".$ctr.' </td><td> '. |
'<a href="javascript:viewOneStudent(\''.$uname.'\',\''.$udom. |
'<a href="javascript:viewOneStudent(\''.$uname.'\',\''.$udom. |
Line 3346 sub viewstudentgrade {
|
Line 3351 sub viewstudentgrade {
|
'value="'.$score.'" size="4" /></td>'."\n"; |
'value="'.$score.'" size="4" /></td>'."\n"; |
} |
} |
} |
} |
$result.='</tr>'; |
$result.=&Apache::loncommon::end_data_table_row(); |
return $result; |
return $result; |
} |
} |
|
|
Line 3357 sub editgrades {
|
Line 3362 sub editgrades {
|
|
|
my $symb=&get_symb($request); |
my $symb=&get_symb($request); |
my $section_display = join (", ",&Apache::loncommon::get_env_multiple('form.section')); |
my $section_display = join (", ",&Apache::loncommon::get_env_multiple('form.section')); |
my $title='<h3><span class="LC_info">'.&mt('Current Grade Status').'</span></h3>'; |
my $title='<h2>'.&mt('Current Grade Status').'</h2>'; |
$title.='<h4>'.&mt('<b>Current Resource: </b>[_1]',$env{'form.probTitle'}).'</h4><br />'."\n"; |
$title.='<h4>'.&mt('<b>Current Resource: </b>[_1]',$env{'form.probTitle'}).'</h4>'."\n"; |
$title.='<h4>'.&mt('<b>Section: </b>[_1]',$section_display).'</h4>'."\n"; |
$title.='<h4>'.&mt('<b>Section: </b>[_1]',$section_display).'</h4>'."\n"; |
|
|
my $result= '<table border="0"><tr><td bgcolor="#777777">'."\n"; |
my $result= &Apache::loncommon::start_data_table(). |
$result.= '<table border="0"><tr bgcolor="#deffff">'. |
&Apache::loncommon::start_data_table_header_row(). |
'<td rowspan=2 valign="center"> <b>No.</b> </td>'. |
'<th rowspan="2" valign="middle">'.&mt('No.').'</th>'. |
'<td rowspan=2 valign="center">'.&nameUserString('header')."</td>\n"; |
'<th rowspan="2" valign="middle">'.&nameUserString('header')."</th>\n"; |
|
|
my %scoreptr = ( |
my %scoreptr = ( |
'correct' =>'correct_by_override', |
'correct' =>'correct_by_override', |
'incorrect'=>'incorrect_by_override', |
'incorrect'=>'incorrect_by_override', |
Line 3390 sub editgrades {
|
Line 3394 sub editgrades {
|
} |
} |
my (undef,undef,$url) = &Apache::lonnet::decode_symb($symb); |
my (undef,undef,$url) = &Apache::lonnet::decode_symb($symb); |
foreach my $partid (@partid) { |
foreach my $partid (@partid) { |
$header .= '<td align="center"> <b>Old Score</b> </td>'. |
$header .= '<th align="center">'.&mt('Old Score').'</th>'. |
'<td align="center"> <b>New Score</b> </td>'; |
'<th align="center">'.&mt('New Score').'</th>'; |
$columns{$partid}=2; |
$columns{$partid}=2; |
foreach my $stores (@parts) { |
foreach my $stores (@parts) { |
my ($part,$type) = &split_part_type($stores); |
my ($part,$type) = &split_part_type($stores); |
Line 3400 sub editgrades {
|
Line 3404 sub editgrades {
|
my $display=&Apache::lonnet::metadata($url,$stores.'.display'); |
my $display=&Apache::lonnet::metadata($url,$stores.'.display'); |
$display =~ s/\[Part: (\w)+\]//; |
$display =~ s/\[Part: (\w)+\]//; |
$display =~ s/Number of Attempts/Tries/; |
$display =~ s/Number of Attempts/Tries/; |
$header .= '<td align="center"> <b>Old '.$display.'</b> </td>'. |
$header .= '<th align="center">'.&mt('Old '.$display).'</th>'. |
'<td align="center"> <b>New '.$display.'</b> </td>'; |
'<th align="center">'.&mt('New '.$display).'</th>'; |
$columns{$partid}+=2; |
$columns{$partid}+=2; |
} |
} |
} |
} |
foreach my $partid (@partid) { |
foreach my $partid (@partid) { |
my $display_part=&get_display_part($partid,$symb); |
my $display_part=&get_display_part($partid,$symb); |
$result .= '<td colspan="'.$columns{$partid}. |
$result .= '<th colspan="'.$columns{$partid}.'" align="center">'. |
'" align="center"><b>Part:</b> '.$display_part. |
&mt('Part: [_1] (Weight = [_2])',$display_part,$weight{$partid}). |
' (Weight = '.$weight{$partid}.')</td>'; |
'</th>'; |
|
|
} |
} |
$result .= '</tr><tr bgcolor="#deffff">'; |
$result .= &Apache::loncommon::end_data_table_header_row(). |
$result .= $header; |
&Apache::loncommon::start_data_table_header_row(). |
$result .= '</tr>'."\n"; |
$header. |
my $noupdate; |
&Apache::loncommon::end_data_table_header_row(); |
|
my @noupdate; |
my ($updateCtr,$noupdateCtr) = (1,1); |
my ($updateCtr,$noupdateCtr) = (1,1); |
for ($i=0; $i<$env{'form.total'}; $i++) { |
for ($i=0; $i<$env{'form.total'}; $i++) { |
my $line; |
my $line; |
Line 3427 sub editgrades {
|
Line 3432 sub editgrades {
|
my $usec=$classlist->{"$uname:$udom"}[5]; |
my $usec=$classlist->{"$uname:$udom"}[5]; |
if (!&canmodify($usec)) { |
if (!&canmodify($usec)) { |
my $numcols=scalar(@partid)*4+2; |
my $numcols=scalar(@partid)*4+2; |
$noupdate.=$line."<td colspan=\"$numcols\"><span class=\"LC_warning\">Not allowed to modify student</span></td></tr>"; |
push(@noupdate, |
|
$line."<td colspan=\"$numcols\"><span class=\"LC_warning\">". |
|
&mt('Not allowed to modify student')."</span></td></tr>"); |
next; |
next; |
} |
} |
my %aggregate = (); |
my %aggregate = (); |
Line 3496 sub editgrades {
|
Line 3503 sub editgrades {
|
'<td align="center">'.$awarded.' </td>'; |
'<td align="center">'.$awarded.' </td>'; |
} |
} |
} |
} |
$line.='</tr>'."\n"; |
$line.="\n"; |
|
|
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
Line 3529 sub editgrades {
|
Line 3536 sub editgrades {
|
} |
} |
} |
} |
|
|
$result.='<tr bgcolor="#ffffde"><td align="right"> '.$updateCtr.' </td>'.$line; |
$result.=&Apache::loncommon::start_data_table_row(). |
|
'<td align="right"> '.$updateCtr.' </td>'.$line. |
|
&Apache::loncommon::end_data_table_row(); |
$updateCtr++; |
$updateCtr++; |
} else { |
} else { |
$noupdate.='<tr bgcolor="#ffffde"><td align="right"> '.$noupdateCtr.' </td>'.$line; |
push(@noupdate, |
|
'<td align="right"> '.$noupdateCtr.' </td>'.$line); |
$noupdateCtr++; |
$noupdateCtr++; |
} |
} |
if ($aggregateflag) { |
if ($aggregateflag) { |
Line 3540 sub editgrades {
|
Line 3550 sub editgrades {
|
$cdom,$cnum); |
$cdom,$cnum); |
} |
} |
} |
} |
if ($noupdate) { |
if (@noupdate) { |
# my $numcols=(scalar(@partid)*(scalar(@parts)-1)*2)+3; |
# my $numcols=(scalar(@partid)*(scalar(@parts)-1)*2)+3; |
my $numcols=scalar(@partid)*4+2; |
my $numcols=scalar(@partid)*4+2; |
$result .= '<tr bgcolor="#ffffff"><td align="center" colspan="'.$numcols.'">No Changes Occurred For the Students Below</td></tr><tr bgcolor="#ffffde">'.$noupdate; |
$result .= &Apache::loncommon::start_data_table_row('LC_empty_row'). |
|
'<td align="center" colspan="'.$numcols.'">'. |
|
&mt('No Changes Occurred For the Students Below'). |
|
'</td>'. |
|
&Apache::loncommon::end_data_table_row(); |
|
foreach my $line (@noupdate) { |
|
$result.= |
|
&Apache::loncommon::start_data_table_row(). |
|
$line. |
|
&Apache::loncommon::end_data_table_row(); |
|
} |
} |
} |
$result .= '</table></td></tr></table>'."\n". |
$result .= &Apache::loncommon::end_data_table(). |
&show_grading_menu_form ($symb); |
&show_grading_menu_form($symb); |
my $msg = '<br /><b>Number of records updated = '.$rec_update. |
my $msg = '<p><b>'. |
' for '.$count.' student'.($count <= 1 ? '' : 's').'.</b><br />'. |
&mt('Number of records updated = [_1] for [quant,_2,student].', |
'<b>Total number of students = '.$env{'form.total'}.'</b><br />'; |
$rec_update,$count).'</b><br />'. |
|
'<b>'.&mt('Total number of students = [_1]',$env{'form.total'}). |
|
'</b></p>'; |
return $title.$msg.$result; |
return $title.$msg.$result; |
} |
} |
|
|
Line 5094 sub username_to_idmap {
|
Line 5116 sub username_to_idmap {
|
|
|
sub scantron_fixup_scanline { |
sub scantron_fixup_scanline { |
my ($scantron_config,$scan_data,$line,$whichline,$field,$args)=@_; |
my ($scantron_config,$scan_data,$line,$whichline,$field,$args)=@_; |
|
|
|
|
if ($field eq 'ID') { |
if ($field eq 'ID') { |
if (length($args->{'newid'}) > $$scantron_config{'IDlength'}) { |
if (length($args->{'newid'}) > $$scantron_config{'IDlength'}) { |
return ($line,1,'New value too large'); |
return ($line,1,'New value too large'); |
Line 5125 sub scantron_fixup_scanline {
|
Line 5148 sub scantron_fixup_scanline {
|
$$scantron_config{'CODElength'})=$args->{'CODE'}; |
$$scantron_config{'CODElength'})=$args->{'CODE'}; |
} |
} |
} elsif ($field eq 'answer') { |
} elsif ($field eq 'answer') { |
my $length=$scantron_config->{'Qlength'}; |
&scantron_get_maxbubble(); # Need the bubble counter info. |
|
my $length =$scantron_config->{'Qlength'}; |
my $off=$scantron_config->{'Qoff'}; |
my $off=$scantron_config->{'Qoff'}; |
my $on=$scantron_config->{'Qon'}; |
my $on=$scantron_config->{'Qon'}; |
my $answer=${off}x$length; |
my $question_number = $args->{'question'} -1; |
if ($args->{'response'} eq 'none') { |
my $first_position = $first_bubble_line{$question_number}; |
&scan_data($scan_data, |
my $bubble_count = $bubble_lines_per_response{$question_number}; |
"$whichline.no_bubble.".$args->{'question'},'1'); |
my $bubbles_per_line= $$scantron_config{'Qlength'}; |
} else { |
my $answer=${off}x($bubbles_per_line*$bubble_count); |
if ($on eq 'letter') { |
my $final_answer; |
my @alphabet=('A'..'Z'); |
if ($$scantron_config{'Qon'} eq 'letter' || |
$answer=$alphabet[$args->{'response'}]; |
$$scantron_config{'Qon'} eq 'number') { |
} elsif ($on eq 'number') { |
$bubbles_per_line = 10; |
$answer=$args->{'response'}+1; |
} |
if ($answer == 10) { $answer = '0'; } |
if (defined $args->{'response'}) { |
|
|
|
if ($args->{'response'} eq 'none') { |
|
&scan_data($scan_data, |
|
"$whichline.no_bubble.".$args->{'question'},'1'); |
} else { |
} else { |
substr($answer,$args->{'response'},1)=$on; |
my ($bubble_line, $bubble_number) = split(/:/,$args->{'response'}); |
|
if ($on eq 'letter') { |
|
my @alphabet=('A'..'Z'); |
|
$answer=$alphabet[$bubble_number]; |
|
} elsif ($on eq 'number') { |
|
$answer= $bubble_number+1; |
|
if ($answer == 10) { $answer = '0'; } |
|
} else { |
|
substr($answer,$bubble_number+$bubble_line*$bubbles_per_line,1)=$on; |
|
$final_answer = $answer; |
|
} |
|
&scan_data($scan_data, |
|
"$whichline.no_bubble.".$args->{'question'},undef,'1'); |
|
|
|
# Positional notation already has the right final answer length.. |
|
|
|
if (($on eq 'letter') || ($on eq 'number')) { |
|
for (my $l = 0; $l < $bubble_count; $l++) { |
|
if ($l eq $bubble_line) { |
|
$final_answer .= $answer; |
|
} else { |
|
$final_answer .= ' '; |
|
} |
|
} |
|
} |
} |
} |
&scan_data($scan_data, |
# $where=$length*($args->{'question'}-1)+$scantron_config->{'Qstart'}; |
"$whichline.no_bubble.".$args->{'question'},undef,'1'); |
#substr($line,$where-1,$length)=$answer; |
|
substr($line, |
|
$scantron_config->{'Qstart'}+$first_position-1, |
|
$bubbles_per_line*$length) = $final_answer; |
} |
} |
my $where=$length*($args->{'question'}-1)+$scantron_config->{'Qstart'}; |
|
substr($line,$where-1,$length)=$answer; |
|
} |
} |
return $line; |
return $line; |
} |
} |
Line 5316 sub scantron_parse_scanline {
|
Line 5369 sub scantron_parse_scanline {
|
} elsif (!defined($currentquest) |
} elsif (!defined($currentquest) |
|| (&occurence_count($currentquest, $$scantron_config{'Qoff'}) == length($currentquest)) |
|| (&occurence_count($currentquest, $$scantron_config{'Qoff'}) == length($currentquest)) |
|| (&occurence_count($currentquest, "[A-Z]") == 0)) { |
|| (&occurence_count($currentquest, "[A-Z]") == 0)) { |
&Apache::lonnet::logthis("Missing if, $questnum, $ansnum"); |
|
for (my $ans = 0; $ans < $answers_needed; $ans++ ) { |
for (my $ans = 0; $ans < $answers_needed; $ans++ ) { |
$record{"scantron.$ansnum.answer"}=''; |
$record{"scantron.$ansnum.answer"}=''; |
$ansnum++; |
$ansnum++; |
|
|
} |
} |
if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) { |
if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) { |
&Apache::lonnet::logthis("Parsed missing: $questnum"); |
|
push(@{$record{"scantron.missingerror"}},$questnum); |
push(@{$record{"scantron.missingerror"}},$questnum); |
# $ansnum += $answers_needed; |
# $ansnum += $answers_needed; |
} |
} |
&Apache::lonnet::logthis("Residual scanline: '$questions'"); |
|
|
|
} else { |
} else { |
for (my $ans = 0; $ans < $answers_needed; $ans++) { |
for (my $ans = 0; $ans < $answers_needed; $ans++) { |
$record{"scantron.$ansnum.answer"} = substr($currentquest, $ans, 1); |
$record{"scantron.$ansnum.answer"} = substr($currentquest, $ans, 1); |
Line 5397 sub scantron_parse_scanline {
|
Line 5446 sub scantron_parse_scanline {
|
if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) { |
if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) { |
push(@{$record{"scantron.missingerror"}},$questnum); |
push(@{$record{"scantron.missingerror"}},$questnum); |
} |
} |
} elsif (scalar(@array) lt 2) { |
|
|
# If the bubble is not the last position, there will be |
|
# 2 elements. If it is the last position, there will be 1 element. |
|
|
|
} elsif (scalar(@array) le 2) { |
|
|
my $location = length($array[0]); |
my $location = length($array[0]); |
my $line_num = $location / $$scantron_config{'Qlength'}; |
my $line_num = int($location / $$scantron_config{'Qlength'}); |
my $bubble = $alphabet[$location % $$scantron_config{'Qlength'}]; |
my $bubble = $alphabet[$location % $$scantron_config{'Qlength'}]; |
|
|
|
|
for (my $ans = 0; $ans < $answers_needed; $ans++) { |
for (my $ans = 0; $ans < $answers_needed; $ans++) { |
if ($ans eq $line_num) { |
if ($ans eq $line_num) { |
Line 6487 ENDSCRIPT
|
Line 6541 ENDSCRIPT
|
foreach my $question (@{$arg}) { |
foreach my $question (@{$arg}) { |
my $selected = &get_response_bubbles($scan_record, $question); |
my $selected = &get_response_bubbles($scan_record, $question); |
my @select_array = split(/:/,$selected); # ought to be an array of empties. |
my @select_array = split(/:/,$selected); # ought to be an array of empties. |
&Apache::lonnet::logthis("Calling bubble selector (missing)"); |
|
&scantron_bubble_selector($r,$scan_config,$question, @select_array); |
&scantron_bubble_selector($r,$scan_config,$question, @select_array); |
} |
} |
} else { |
} else { |
Line 6529 sub scantron_bubble_selector {
|
Line 6582 sub scantron_bubble_selector {
|
|
|
my $total_lines = $lines*2; |
my $total_lines = $lines*2; |
my @alphabet=('A'..'Z'); |
my @alphabet=('A'..'Z'); |
&Apache::lonnet::logthis("Putting in question number $quest"); |
|
$r->print("<table border='1'><tr><td rowspan='".$total_lines."'>$quest</td>"); |
$r->print("<table border='1'><tr><td rowspan='".$total_lines."'>$quest</td>"); |
|
|
for (my $l = 0; $l < $lines; $l++) { |
for (my $l = 0; $l < $lines; $l++) { |
Line 6563 sub scantron_bubble_selector {
|
Line 6616 sub scantron_bubble_selector {
|
# multiline questions (different values e.g..). |
# multiline questions (different values e.g..). |
|
|
for (my $i=0;$i<$max;$i++) { |
for (my $i=0;$i<$max;$i++) { |
|
my $value = "$l:$i"; # Relative bubble line #: Bubble in line. |
$r->print("\n". |
$r->print("\n". |
'<td><label><input type="radio" name="scantron_correct_Q_'. |
'<td><label><input type="radio" name="scantron_correct_Q_'. |
$quest.'" value="'.$i.'" />'.$alphabet[$i]."</label></td>"); |
$quest.'" value="'.$value.'" />'.$alphabet[$i]."</label></td>"); |
} |
} |
$r->print('</tr>'); |
$r->print('</tr>'); |
|
|
Line 6885 sub scantron_validate_missingbubbles {
|
Line 6939 sub scantron_validate_missingbubbles {
|
|
|
foreach my $missing (@{$$scan_record{'scantron.missingerror'}}) { |
foreach my $missing (@{$$scan_record{'scantron.missingerror'}}) { |
if ($missing > $max_bubble) { next; } |
if ($missing > $max_bubble) { next; } |
&Apache::lonnet::logthis("Marking $missing for missing bubble check"); |
|
push(@to_correct,$missing); |
push(@to_correct,$missing); |
} |
} |
if (@to_correct) { |
if (@to_correct) { |
Line 7216 sub show_grading_menu_form {
|
Line 7269 sub show_grading_menu_form {
|
'<input type="hidden" name="symb" value="'.&Apache::lonenc::check_encrypt($symb).'" />'."\n". |
'<input type="hidden" name="symb" value="'.&Apache::lonenc::check_encrypt($symb).'" />'."\n". |
'<input type="hidden" name="saveState" value="'.$env{'form.saveState'}.'" />'."\n". |
'<input type="hidden" name="saveState" value="'.$env{'form.saveState'}.'" />'."\n". |
'<input type="hidden" name="command" value="gradingmenu" />'."\n". |
'<input type="hidden" name="command" value="gradingmenu" />'."\n". |
'<input type="submit" name="submit" value="Grading Menu" />'."\n". |
'<input type="submit" name="submit" value="'.&mt('Grading Menu').'" />'."\n". |
'</form>'."\n"; |
'</form>'."\n"; |
return $result; |
return $result; |
} |
} |
Line 7286 sub grading_menu {
|
Line 7339 sub grading_menu {
|
$Str .= '<input type="hidden" name="command" value="" />'. |
$Str .= '<input type="hidden" name="command" value="" />'. |
'<input type="hidden" name="symb" value="'.&Apache::lonenc::check_encrypt($symb).'" />'."\n". |
'<input type="hidden" name="symb" value="'.&Apache::lonenc::check_encrypt($symb).'" />'."\n". |
'<input type="hidden" name="handgrade" value="'.$hdgrade.'" />'."\n". |
'<input type="hidden" name="handgrade" value="'.$hdgrade.'" />'."\n". |
'<input type="hidden" name="probTitle" value="'.$probTitle.'" ue="" />'."\n". |
'<input type="hidden" name="probTitle" value="'.$probTitle.'" />'."\n". |
'<input type="hidden" name="saveState" value="" />'."\n". |
'<input type="hidden" name="saveState" value="" />'."\n". |
'<input type="hidden" name="gradingMenu" value="1" />'."\n". |
'<input type="hidden" name="gradingMenu" value="1" />'."\n". |
'<input type="hidden" name="showgrading" value="yes" />'."\n"; |
'<input type="hidden" name="showgrading" value="yes" />'."\n"; |
Line 7310 sub grading_menu {
|
Line 7363 sub grading_menu {
|
$Str .= ' '.(' 'x8).$menudata->{'short_description'}. |
$Str .= ' '.(' 'x8).$menudata->{'short_description'}. |
"\n"; |
"\n"; |
} |
} |
$Str .="</dl>\n"; |
|
$Str .="</form>\n"; |
$Str .="</form>\n"; |
$request->print(<<GRADINGMENUJS); |
$request->print(<<GRADINGMENUJS); |
<script type="text/javascript" language="javascript"> |
<script type="text/javascript" language="javascript"> |
Line 7397 sub submit_options {
|
Line 7449 sub submit_options {
|
</script> |
</script> |
GRADINGMENUJS |
GRADINGMENUJS |
&commonJSfunctions($request); |
&commonJSfunctions($request); |
my $result='<h3> <span class="LC_info">Manual Grading/View Submission</span></h3>'; |
|
my ($table,undef,$hdgrade) = &showResourceInfo($symb,$probTitle); |
my ($table,undef,$hdgrade) = &showResourceInfo($symb,$probTitle); |
$result.=$table; |
my $result; |
my (undef,$sections) = &getclasslist('all','0'); |
my (undef,$sections) = &getclasslist('all','0'); |
my $savedState = &savedState(); |
my $savedState = &savedState(); |
my $saveCmd = ($$savedState{'saveCmd'} eq '' ? 'submission' : $$savedState{'saveCmd'}); |
my $saveCmd = ($$savedState{'saveCmd'} eq '' ? 'submission' : $$savedState{'saveCmd'}); |
Line 7416 GRADINGMENUJS
|
Line 7467 GRADINGMENUJS
|
'<input type="hidden" name="gradingMenu" value="1" />'."\n". |
'<input type="hidden" name="gradingMenu" value="1" />'."\n". |
'<input type="hidden" name="showgrading" value="yes" />'."\n"; |
'<input type="hidden" name="showgrading" value="yes" />'."\n"; |
|
|
$result.='<table border="0"><tr><td bgcolor=#777777>'."\n". |
$result.=' |
'<table width="100%" border="0"><tr bgcolor="#e6ffff"><td>'."\n". |
<div class="LC_grade_select_mode"> |
' <b>Select a Grading/Viewing Option</b></td></tr>'."\n". |
<div class="LC_grade_select_mode_current"> |
'<tr bgcolor="#ffffe6" valign="top"><td>'."\n"; |
<h2> |
|
'.&mt('Grade Current Resource').' |
$result.='<table width="100%" border="0">'; |
</h2> |
$result.='<tr bgcolor="#ffffe6" valign="top">'."\n"; |
<div class="LC_grade_select_mode_body"> |
$result.='<td><b>'.&mt('Sections').'</b></td>'; |
<div class="LC_grades_resource_info"> |
$result.='<td><b>'.&mt('Groups').'</b></td>'; |
'.$table.' |
$result.='<td><b>'.&mt('Access Status').'</td>'."\n"; |
</div> |
$result.='<td><b>'.&mt('Submission Status').'</td>'."\n"; |
<div class="LC_grade_select_mode_selector"> |
$result.='</tr>'; |
<div class="LC_grade_select_mode_selector_header"> |
$result.='<tr bgcolor="#ffffe6" valign="top"><td>'."\n". |
'.&mt('Sections').' |
' <select name="section" multiple="multiple" size="3">'."\n"; |
</div> |
|
<div class="LC_grade_select_mode_selector_body"> |
|
<select name="section" multiple="multiple" size="5">'."\n"; |
if (ref($sections)) { |
if (ref($sections)) { |
foreach (sort (@$sections)) { |
foreach my $section (sort (@$sections)) { |
$result.='<option value="'.$_.'" '. |
$result.='<option value="'.$section.'" '. |
($saveSec eq $_ ? 'selected="selected"':'').'>'.$_.'</option>'."\n"; |
($saveSec eq $section ? 'selected="selected"':'').'>'.$section.'</option>'."\n"; |
} |
} |
} |
} |
$result.= '<option value="all" '.($saveSec eq 'all' ? 'selected="selected"' : ''). '>all</option></select> '; |
$result.= '<option value="all" '.($saveSec eq 'all' ? 'selected="selected"' : ''). '>all</option></select> '; |
$result.= '</td><td>'."\n"; |
$result.=' |
$result.= &Apache::lonstatistics::GroupSelect('group','multiple',3); |
</div> |
$result.='</td><td>'."\n"; |
</div> |
$result.=&Apache::lonhtmlcommon::StatusOptions($saveStatus,undef,3,undef,'mult'); |
<div class="LC_grade_select_mode_selector"> |
|
<div class="LC_grade_select_mode_selector_header"> |
$result.='</td>'; |
'.&mt('Groups').' |
$result.='<td><select name="submitonly" size="3">'. |
</div> |
'<option value="yes" '. |
<div class="LC_grade_select_mode_selector_body"> |
($saveSub eq 'yes' ? 'selected="selected"' : '').'>'.&mt('with submissions').'</option>'. |
'.&Apache::lonstatistics::GroupSelect('group','multiple',5).' |
'<option value="queued" '. |
</div> |
($saveSub eq 'queued' ? 'selected="selected"' : '').'>'.&mt('in grading queue').'</option>'. |
</div> |
'<option value="graded" '. |
<div class="LC_grade_select_mode_selector"> |
($saveSub eq 'graded' ? 'selected="selected"' : '').'>'.&mt('with ungraded submissions').'</option>'. |
<div class="LC_grade_select_mode_selector_header"> |
'<option value="incorrect" '. |
'.&mt('Access Status').' |
($saveSub eq 'incorrect' ? 'selected="selected"' : '').'>'.&mt('with incorrect submissions').'</option>'. |
</div> |
'<option value="all" '. |
<div class="LC_grade_select_mode_selector_body"> |
($saveSub eq 'all' ? 'selected="selected"' : '').'>'.&mt('with any status').'</option></select></td></tr>'; |
'.&Apache::lonhtmlcommon::StatusOptions($saveStatus,undef,5,undef,'mult').' |
|
</div> |
$result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="3"><label>'. |
</div> |
'<input type="radio" name="radioChoice" value="submission" '. |
<div class="LC_grade_select_mode_selector"> |
($saveCmd eq 'submission' ? 'checked="checked"' : '').' /> '.'<b>'.&mt('Current Resource').':</b> '.&mt('For one or more students'). |
<div class="LC_grade_select_mode_selector_header"> |
'</label> </td></tr>'."\n"; |
'.&mt('Submission Status').' |
|
</div> |
$result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="3">'. |
<div class="LC_grade_select_mode_selector_body"> |
'<label><input type="radio" name="radioChoice" value="viewgrades" '. |
<select name="submitonly" size="5"> |
($saveCmd eq 'viewgrades' ? 'checked="checked"' : '').' /> '. |
<option value="yes" '. ($saveSub eq 'yes' ? 'selected="selected"' : '').'>'.&mt('with submissions').'</option> |
'<b>Current Resource:</b> For all students in selected section or course</label></td></tr>'."\n"; |
<option value="queued" '. ($saveSub eq 'queued' ? 'selected="selected"' : '').'>'.&mt('in grading queue').'</option> |
|
<option value="graded" '. ($saveSub eq 'graded' ? 'selected="selected"' : '').'>'.&mt('with ungraded submissions').'</option> |
$result.='<tr bgcolor="#ffffe6"><td colspan="3"><br />'. |
<option value="incorrect" '.($saveSub eq 'incorrect' ? 'selected="selected"' : '').'>'.&mt('with incorrect submissions').'</option> |
'<input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="Next->" />'. |
<option value="all" '. ($saveSub eq 'all' ? 'selected="selected"' : '').'>'.&mt('with any status').'</option> |
'</td></tr>'."\n"; |
</select> |
|
</div> |
|
</div> |
$result.='<tr bgcolor="#ffffe6" valign="top"><td colspan="3">'. |
<div class="LC_grade_select_mode_type_body"> |
'<br /><label><input type="radio" name="radioChoice" value="pickStudentPage" '. |
<div class="LC_grade_select_mode_type"> |
($saveCmd eq 'pickStudentPage' ? 'checked="checked"' : '').' /> '. |
<label> |
'The <b>complete</b> set/page/sequence/folder: For one student</label></td></tr>'."\n"; |
<input type="radio" name="radioChoice" value="submission" '. |
|
($saveCmd eq 'submission' ? 'checked="checked"' : '').' /> '. |
$result.='<tr bgcolor="#ffffe6"><td colspan="3"><br />'. |
&mt('Select individual students to grade and view submissions.').' |
'<input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="Next->" />'. |
</label> |
'</td></tr></table>'."\n"; |
</div> |
|
<div class="LC_grade_select_mode_type"> |
$result.='</td>'; #<td valign="top">'; |
<label> |
|
<input type="radio" name="radioChoice" value="viewgrades" '. |
# $result.='<table width="100%" border="0">'; |
($saveCmd eq 'viewgrades' ? 'checked="checked"' : '').' /> '. |
# $result.='<tr bgcolor="#ffffe6"><td>'. |
&mt('Grade all selected students in a grading table.').' |
# '<input type="button" onClick="javascript:checkChoice(this.form,\'3\',\'csvform\');" value="'.&mt('Upload').'" />'. |
</label> |
# ' '.&mt('scores from file').' </td></tr>'."\n"; |
</div> |
# |
<div class="LC_grade_select_mode_type"> |
# $result.='<tr bgcolor="#ffffe6"><td>'. |
<input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="'.&mt('Next->').'" /> |
# '<input type="button" onClick="javascript:checkChoice(this.form,\'6\',\'processclicker\');" value="'.&mt('Process').'" />'. |
</div> |
# ' '.&mt('clicker file').' </td></tr>'."\n"; |
</div> |
# |
</div> |
# $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="2">'. |
</div> |
# '<input type="button" onClick="javascript:checkChoice(this.form,\'4\',\'scantron_selectphase\');'. |
<div class="LC_grade_select_mode_page"> |
# '" value="'.&mt('Grade').'" /> scantron forms</td></tr>'."\n"; |
<h2> |
# |
'.&mt('Grade Complete Folder for One Student').' |
# if ((&Apache::lonnet::allowed('mgr',$env{'request.course.id'})) && ($symb)) { |
</h2> |
# $result.='<tr bgcolor="#ffffe6"valign="top"><td>'. |
<div class="LC_grades_select_mode_body"> |
# '<input type="button" onClick="javascript:checkChoice(this.form,\'5\',\'verify\');" value="'.&mt('Verify').'" />'. |
<div class="LC_grade_select_mode_type_body"> |
# ' '.&mt('receipt').': '. |
<div class="LC_grade_select_mode_type"> |
# &Apache::lonnet::recprefix($env{'request.course.id'}). |
<label> |
# '-<input type="text" name="receipt" size="4" onChange="javascript:checkReceiptNo(this.form,\'OK\')" />'. |
<input type="radio" name="radioChoice" value="pickStudentPage" '. |
# '</td></tr>'."\n"; |
($saveCmd eq 'pickStudentPage' ? 'checked="checked"' : '').' /> '. |
# } |
&mt('The <b>complete</b> page/sequence/folder: For one student').' |
# $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="2">'. |
</label> |
# '<input type="button" onClick="javascript:this.form.action=\'/adm/helper/resettimes.helper\';this.form.submit();'. |
</div> |
# '" value="'.&mt('Manage').'" /> access times.</td></tr>'."\n"; |
<div class="LC_grade_select_mode_type"> |
# $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="2">'. |
<input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="'.&mt('Next->').'" /> |
# '<input type="button" onClick="javascript:this.form.command.value=\'codelist\';this.form.action=\'/adm/pickcode\';this.form.submit();'. |
</div> |
# '" value="'.&mt('View').'" /> saved CODEs.</td></tr>'."\n"; |
</div> |
# |
</div> |
# $result.='</table>'."\n".'</td>'; |
</div> |
$result.= '</tr></table>'."\n". |
</div> |
'</td></tr></table></form>'."\n"; |
</form>'; |
return $result; |
return $result; |
} |
} |
|
|