--- loncom/homework/grades.pm 2007/10/29 09:46:28 1.470 +++ loncom/homework/grades.pm 2007/11/02 23:41:39 1.476 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.470 2007/10/29 09:46:28 foxr Exp $ +# $Id: grades.pm,v 1.476 2007/11/02 23:41:39 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -865,7 +865,7 @@ LISTJAVASCRIPT my $saveStatus = $stu_status eq '' ? 'Active' : $stu_status; $env{'form.Status'} = $saveStatus; $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="all" /> all details</label><br />'."\n". ' <b>Grading Increments:</b> <select name="increment">'. @@ -902,27 +902,27 @@ LISTJAVASCRIPT $gradeTable.=&check_buttons(); $gradeTable.='<label><input type="checkbox" name="checkPlag" checked="checked" />Check For Plagiarism</label>'; my ($classlist, undef, $fullname) = &getclasslist($getsec,'1',$getgroup); - $gradeTable.='<table border="0"><tr><td bgcolor="#777777">'. - '<table border="0"><tr bgcolor="#e6ffff">'; + $gradeTable.= &Apache::loncommon::start_data_table(). + &Apache::loncommon::start_data_table_header_row(); my $loop = 0; while ($loop < 2) { - $gradeTable.='<td><b> No.</b> </td><td><b> Select </b></td>'. - '<td>'.&nameUserString('header').' Section/Group</td>'; + $gradeTable.='<th>No.</th><th>Select</th>'. + '<th>'.&nameUserString('header').' '.'Section/Group</th>'; if ($env{'form.showgrading'} eq 'yes' && $submitonly ne 'queued' && $submitonly ne 'all') { foreach (sort(@$partlist)) { my $display_part=&get_display_part((split(/_/))[0],$symb); - $gradeTable.='<td><b> Part: '.$display_part. - ' Status </b></td>'; + $gradeTable.='<th>Part: '.$display_part. + ' Status</h>'; } } elsif ($submitonly eq 'queued') { - $gradeTable.='<td><b> '.&mt('Queue Status').' </b></td>'; + $gradeTable.='<th>'.&mt('Queue Status').' </th>'; } $loop++; # $gradeTable.='<td></td>' if ($loop%2 ==1); } - $gradeTable.='</tr>'."\n"; + $gradeTable.=&Apache::loncommon::end_data_table_header_row()."\n"; my $ctr = 0; foreach my $student (sort @@ -978,13 +978,15 @@ LISTJAVASCRIPT my $section = $classlist->{$student}->[&Apache::loncoursedata::CL_SECTION()]; my $group = $classlist->{$student}->[&Apache::loncoursedata::CL_GROUP()]; 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>'. '<td align="center"><label><input type=checkbox name="stuinfo" value="'. $student.':'.$$fullname{$student}.':::SECTION'.$section. ') " /> </label></td>'."\n".'<td>'. &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') { foreach (sort keys(%status)) { @@ -993,7 +995,9 @@ LISTJAVASCRIPT } } # $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) { @@ -1007,10 +1011,10 @@ LISTJAVASCRIPT } elsif ($submitonly eq 'queued') { $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" '. 'onClick="javascript:checkSelect(this.form.stuinfo);" '. 'value="Next->" /></form>'."\n"; @@ -1028,7 +1032,7 @@ LISTJAVASCRIPT ' students checked for '.$submissions.')</span><br />'; } } elsif ($ctr == 1) { - $gradeTable =~ s/type=checkbox/type=checkbox checked/; + $gradeTable =~ s/type="checkbox"/type="checkbox" checked="checked"/; } $gradeTable.=&show_grading_menu_form($symb); $request->print($gradeTable); @@ -1969,7 +1973,7 @@ KEYWORDS $mode='answer'; } &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); @@ -3169,14 +3173,12 @@ sub viewgrades { $sectionClass=&mt('Students in Section(s) [_1]',$section_display).'</h3>'; } $result.='<h3>'.&mt('Assign Common Grade To [_1]',$sectionClass); - $result.= '<table border=0><tr><td bgcolor="#777777">'."\n". - '<table border=0><tr bgcolor="#ffffdd"><td>'; + $result.= &Apache::loncommon::start_data_table(); #radio buttons/text box for assigning points for a section or class. #handles different parts of a problem my ($partlist,$handgrade,$responseType) = &response_type($symb); my %weight = (); my $ctsparts = 0; - $result.='<table border="0">'; my %seen = (); my @part_response_id = &flatten_responseType($responseType); foreach my $part_response_id (@part_response_id) { @@ -3188,12 +3190,14 @@ sub viewgrades { my $wgt = &Apache::lonnet::EXT('resource.'.$partid.'.weight',$symb); $weight{$partid} = $wgt eq '' ? '1' : $wgt; + $result.=&Apache::loncommon::start_data_table_row().'<td>'; $result.='<input type="hidden" name="partid_'. $ctsparts.'" value="'.$partid.'" />'."\n"; $result.='<input type="hidden" name="weight_'. $partid.'" value="'.$weight{$partid}.'" />'."\n"; 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>'; my $ctr = 0; while ($ctr<=$weight{$partid}) { # display radio buttons in a nice table 10 across @@ -3208,26 +3212,27 @@ sub viewgrades { $partid.'" size="4" '.'onChange="javascript:writePoint(\''. $partid.'\','.$weight{$partid}.',\'textval\')" /> /'. $weight{$partid}.' (problem weight)</td>'."\n"; - $result.= '</td><td><select name="SELVAL_'.$partid.'"'. + $result.= '<td><select name="SELVAL_'.$partid.'"'. 'onChange="javascript:writeRadText(\''.$partid.'\','. $weight{$partid}.')"> '. '<option selected="selected"> </option>'. '<option>excused</option>'. '<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++; } - $result.='</table>'.'</td></tr></table>'.'</td></tr></table>'."\n". + $result.=&Apache::loncommon::end_data_table()."\n". '<input type="hidden" name="totalparts" value="'.$ctsparts.'" />'; $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 #header of table $result.= '<h3>Assign Grade to Specific Students in '.$sectionClass; - $result.= '<table border=0><tr><td bgcolor="#777777">'."\n". - '<table border=0><tr bgcolor="#deffff"><td> <b>No.</b> </td>'. - '<td>'.&nameUserString('header')."</td>\n"; + $result.= &Apache::loncommon::start_data_table(). + &Apache::loncommon::start_data_table_header_row(). + '<th>No.</th>'. + '<th>'.&nameUserString('header')."</th>\n"; my (@parts) = sort(&getpartlist($symb)); my (undef,undef,$url)=&Apache::lonnet::decode_symb($symb); my @partids = (); @@ -3239,16 +3244,16 @@ sub viewgrades { push(@partids, $partid); my $display_part=&get_display_part($partid,$symb); if ($display =~ /^Partial Credit Factor/) { - $result.='<td><b>Score Part:</b> '.$display_part. - ' <br /><b>(weight = '.$weight{$partid}.')</b></td>'."\n"; + $result.='<th>Score Part: '.$display_part. + ' <br />(weight = '.$weight{$partid}.')</th>'."\n"; next; } else { $display =~s/\[Part: \Q$partid\E\]/Part:<\/b> $display_part/; } $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 = &get_last_resets($symb,$env{'request.course.id'},\@partids); @@ -3268,7 +3273,7 @@ sub viewgrades { $result.=&viewstudentgrade($symb,$env{'request.course.id'}, $_,$$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="button" value="Save" '. 'onClick="javascript:submit();" target="_self" /></form>'."\n"; @@ -3291,7 +3296,7 @@ sub viewstudentgrade { my ($uname,$udom) = split(/:/,$student); my %record=&Apache::lonnet::restore($symb,$courseid,$udom,$uname); 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.'" />'. "\n".$ctr.' </td><td> '. '<a href="javascript:viewOneStudent(\''.$uname.'\',\''.$udom. @@ -3346,7 +3351,7 @@ sub viewstudentgrade { 'value="'.$score.'" size="4" /></td>'."\n"; } } - $result.='</tr>'; + $result.=&Apache::loncommon::end_data_table_row(); return $result; } @@ -5316,19 +5321,15 @@ sub scantron_parse_scanline { } elsif (!defined($currentquest) || (&occurence_count($currentquest, $$scantron_config{'Qoff'}) == length($currentquest)) || (&occurence_count($currentquest, "[A-Z]") == 0)) { - &Apache::lonnet::logthis("Missing if, $questnum, $ansnum"); for (my $ans = 0; $ans < $answers_needed; $ans++ ) { $record{"scantron.$ansnum.answer"}=''; $ansnum++; } if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) { - &Apache::lonnet::logthis("Parsed missing: $questnum"); push(@{$record{"scantron.missingerror"}},$questnum); # $ansnum += $answers_needed; } - &Apache::lonnet::logthis("Residual scanline: '$questions'"); - } else { for (my $ans = 0; $ans < $answers_needed; $ans++) { $record{"scantron.$ansnum.answer"} = substr($currentquest, $ans, 1); @@ -6487,7 +6488,6 @@ ENDSCRIPT foreach my $question (@{$arg}) { my $selected = &get_response_bubbles($scan_record, $question); 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); } } else { @@ -6529,7 +6529,6 @@ sub scantron_bubble_selector { my $total_lines = $lines*2; my @alphabet=('A'..'Z'); - &Apache::lonnet::logthis("Putting in question number $quest"); $r->print("<table border='1'><tr><td rowspan='".$total_lines."'>$quest</td>"); for (my $l = 0; $l < $lines; $l++) { @@ -6885,7 +6884,6 @@ sub scantron_validate_missingbubbles { foreach my $missing (@{$$scan_record{'scantron.missingerror'}}) { if ($missing > $max_bubble) { next; } - &Apache::lonnet::logthis("Marking $missing for missing bubble check"); push(@to_correct,$missing); } if (@to_correct) { @@ -7286,7 +7284,7 @@ sub grading_menu { $Str .= '<input type="hidden" name="command" value="" />'. '<input type="hidden" name="symb" value="'.&Apache::lonenc::check_encrypt($symb).'" />'."\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="gradingMenu" value="1" />'."\n". '<input type="hidden" name="showgrading" value="yes" />'."\n"; @@ -7310,7 +7308,6 @@ sub grading_menu { $Str .= ' '.(' 'x8).$menudata->{'short_description'}. "\n"; } - $Str .="</dl>\n"; $Str .="</form>\n"; $request->print(<<GRADINGMENUJS); <script type="text/javascript" language="javascript"> @@ -7397,9 +7394,8 @@ sub submit_options { </script> GRADINGMENUJS &commonJSfunctions($request); - my $result='<h3> <span class="LC_info">Manual Grading/View Submission</span></h3>'; my ($table,undef,$hdgrade) = &showResourceInfo($symb,$probTitle); - $result.=$table; + my $result; my (undef,$sections) = &getclasslist('all','0'); my $savedState = &savedState(); my $saveCmd = ($$savedState{'saveCmd'} eq '' ? 'submission' : $$savedState{'saveCmd'}); @@ -7416,102 +7412,104 @@ GRADINGMENUJS '<input type="hidden" name="gradingMenu" value="1" />'."\n". '<input type="hidden" name="showgrading" value="yes" />'."\n"; - $result.='<table border="0"><tr><td bgcolor=#777777>'."\n". - '<table width="100%" border="0"><tr bgcolor="#e6ffff"><td>'."\n". - ' <b>Select a Grading/Viewing Option</b></td></tr>'."\n". - '<tr bgcolor="#ffffe6" valign="top"><td>'."\n"; - - $result.='<table width="100%" border="0">'; - $result.='<tr bgcolor="#ffffe6" valign="top">'."\n"; - $result.='<td><b>'.&mt('Sections').'</b></td>'; - $result.='<td><b>'.&mt('Groups').'</b></td>'; - $result.='<td><b>'.&mt('Access Status').'</td>'."\n"; - $result.='<td><b>'.&mt('Submission Status').'</td>'."\n"; - $result.='</tr>'; - $result.='<tr bgcolor="#ffffe6" valign="top"><td>'."\n". - ' <select name="section" multiple="multiple" size="3">'."\n"; + $result.=' + <div class="LC_grade_select_mode"> + <div class="LC_grade_select_mode_current"> + <h2> + '.&mt('Grade Current Resource').' + </h2> + <div class="LC_grade_select_mode_body"> + <div class="LC_grades_resource_info"> + '.$table.' + </div> + <div class="LC_grade_select_mode_selector"> + <div class="LC_grade_select_mode_selector_header"> + '.&mt('Sections').' + </div> + <div class="LC_grade_select_mode_selector_body"> + <select name="section" multiple="multiple" size="5">'."\n"; if (ref($sections)) { - foreach (sort (@$sections)) { - $result.='<option value="'.$_.'" '. - ($saveSec eq $_ ? 'selected="selected"':'').'>'.$_.'</option>'."\n"; + foreach my $section (sort (@$sections)) { + $result.='<option value="'.$section.'" '. + ($saveSec eq $section ? 'selected="selected"':'').'>'.$section.'</option>'."\n"; } } $result.= '<option value="all" '.($saveSec eq 'all' ? 'selected="selected"' : ''). '>all</option></select> '; - $result.= '</td><td>'."\n"; - $result.= &Apache::lonstatistics::GroupSelect('group','multiple',3); - $result.='</td><td>'."\n"; - $result.=&Apache::lonhtmlcommon::StatusOptions($saveStatus,undef,3,undef,'mult'); - - $result.='</td>'; - $result.='<td><select name="submitonly" size="3">'. - '<option value="yes" '. - ($saveSub eq 'yes' ? 'selected="selected"' : '').'>'.&mt('with submissions').'</option>'. - '<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>'. - '<option value="incorrect" '. - ($saveSub eq 'incorrect' ? 'selected="selected"' : '').'>'.&mt('with incorrect submissions').'</option>'. - '<option value="all" '. - ($saveSub eq 'all' ? 'selected="selected"' : '').'>'.&mt('with any status').'</option></select></td></tr>'; - - $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="3"><label>'. - '<input type="radio" name="radioChoice" value="submission" '. - ($saveCmd eq 'submission' ? 'checked="checked"' : '').' /> '.'<b>'.&mt('Current Resource').':</b> '.&mt('For one or more students'). - '</label> </td></tr>'."\n"; - - $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="3">'. - '<label><input type="radio" name="radioChoice" value="viewgrades" '. - ($saveCmd eq 'viewgrades' ? 'checked="checked"' : '').' /> '. - '<b>Current Resource:</b> For all students in selected section or course</label></td></tr>'."\n"; - - $result.='<tr bgcolor="#ffffe6"><td colspan="3"><br />'. - '<input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="Next->" />'. - '</td></tr>'."\n"; - - - $result.='<tr bgcolor="#ffffe6" valign="top"><td colspan="3">'. - '<br /><label><input type="radio" name="radioChoice" value="pickStudentPage" '. - ($saveCmd eq 'pickStudentPage' ? 'checked="checked"' : '').' /> '. - 'The <b>complete</b> set/page/sequence/folder: For one student</label></td></tr>'."\n"; - - $result.='<tr bgcolor="#ffffe6"><td colspan="3"><br />'. - '<input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="Next->" />'. - '</td></tr></table>'."\n"; - - $result.='</td>'; #<td valign="top">'; - -# $result.='<table width="100%" border="0">'; -# $result.='<tr bgcolor="#ffffe6"><td>'. -# '<input type="button" onClick="javascript:checkChoice(this.form,\'3\',\'csvform\');" value="'.&mt('Upload').'" />'. -# ' '.&mt('scores from file').' </td></tr>'."\n"; -# -# $result.='<tr bgcolor="#ffffe6"><td>'. -# '<input type="button" onClick="javascript:checkChoice(this.form,\'6\',\'processclicker\');" value="'.&mt('Process').'" />'. -# ' '.&mt('clicker file').' </td></tr>'."\n"; -# -# $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="2">'. -# '<input type="button" onClick="javascript:checkChoice(this.form,\'4\',\'scantron_selectphase\');'. -# '" value="'.&mt('Grade').'" /> scantron forms</td></tr>'."\n"; -# -# if ((&Apache::lonnet::allowed('mgr',$env{'request.course.id'})) && ($symb)) { -# $result.='<tr bgcolor="#ffffe6"valign="top"><td>'. -# '<input type="button" onClick="javascript:checkChoice(this.form,\'5\',\'verify\');" value="'.&mt('Verify').'" />'. -# ' '.&mt('receipt').': '. -# &Apache::lonnet::recprefix($env{'request.course.id'}). -# '-<input type="text" name="receipt" size="4" onChange="javascript:checkReceiptNo(this.form,\'OK\')" />'. -# '</td></tr>'."\n"; -# } -# $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="2">'. -# '<input type="button" onClick="javascript:this.form.action=\'/adm/helper/resettimes.helper\';this.form.submit();'. -# '" value="'.&mt('Manage').'" /> access times.</td></tr>'."\n"; -# $result.='<tr bgcolor="#ffffe6"valign="top"><td colspan="2">'. -# '<input type="button" onClick="javascript:this.form.command.value=\'codelist\';this.form.action=\'/adm/pickcode\';this.form.submit();'. -# '" value="'.&mt('View').'" /> saved CODEs.</td></tr>'."\n"; -# -# $result.='</table>'."\n".'</td>'; - $result.= '</tr></table>'."\n". - '</td></tr></table></form>'."\n"; + $result.=' + </div> + </div> + <div class="LC_grade_select_mode_selector"> + <div class="LC_grade_select_mode_selector_header"> + '.&mt('Groups').' + </div> + <div class="LC_grade_select_mode_selector_body"> + '.&Apache::lonstatistics::GroupSelect('group','multiple',5).' + </div> + </div> + <div class="LC_grade_select_mode_selector"> + <div class="LC_grade_select_mode_selector_header"> + '.&mt('Access Status').' + </div> + <div class="LC_grade_select_mode_selector_body"> + '.&Apache::lonhtmlcommon::StatusOptions($saveStatus,undef,5,undef,'mult').' + </div> + </div> + <div class="LC_grade_select_mode_selector"> + <div class="LC_grade_select_mode_selector_header"> + '.&mt('Submission Status').' + </div> + <div class="LC_grade_select_mode_selector_body"> + <select name="submitonly" size="5"> + <option value="yes" '. ($saveSub eq 'yes' ? 'selected="selected"' : '').'>'.&mt('with submissions').'</option> + <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> + <option value="incorrect" '.($saveSub eq 'incorrect' ? 'selected="selected"' : '').'>'.&mt('with incorrect submissions').'</option> + <option value="all" '. ($saveSub eq 'all' ? 'selected="selected"' : '').'>'.&mt('with any status').'</option> + </select> + </div> + </div> + <div class="LC_grade_select_mode_type_body"> + <div class="LC_grade_select_mode_type"> + <label> + <input type="radio" name="radioChoice" value="submission" '. + ($saveCmd eq 'submission' ? 'checked="checked"' : '').' /> '. + &mt('Select individual students to grade and view submissions.').' + </label> + </div> + <div class="LC_grade_select_mode_type"> + <label> + <input type="radio" name="radioChoice" value="viewgrades" '. + ($saveCmd eq 'viewgrades' ? 'checked="checked"' : '').' /> '. + &mt('Grade all selected students in a grading table.').' + </label> + </div> + <div class="LC_grade_select_mode_type"> + <input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="'.&mt('Next->').'" /> + </div> + </div> + </div> + </div> + <div class="LC_grade_select_mode_page"> + <h2> + '.&mt('Grade Complete Folder for One Student').' + </h2> + <div class="LC_grades_select_mode_body"> + <div class="LC_grade_select_mode_type_body"> + <div class="LC_grade_select_mode_type"> + <label> + <input type="radio" name="radioChoice" value="pickStudentPage" '. + ($saveCmd eq 'pickStudentPage' ? 'checked="checked"' : '').' /> '. + &mt('The <b>complete</b> page/sequence/folder: For one student').' + </label> + </div> + <div class="LC_grade_select_mode_type"> + <input type="button" onClick="javascript:checkChoice(this.form,\'2\');" value="'.&mt('Next->').'" /> + </div> + </div> + </div> + </div> + </div> + </form>'; return $result; }