[LON-CAPA-cvs] cvs: loncom /homework grades.pm /interface loncommon.pm /interface/statistics loncorrectproblemplot.pm lonproblemanalysis.pm lonproblemstatistics.pm lonstathelpers.pm lonstudentsubmissions.pm lonsurveyreports.pm
raeburn
raeburn at source.lon-capa.org
Wed Dec 24 09:44:25 EST 2025
raeburn Wed Dec 24 14:44:25 2025 EDT
Modified files:
/loncom/interface/statistics loncorrectproblemplot.pm
lonproblemanalysis.pm
lonproblemstatistics.pm
lonstathelpers.pm
lonstudentsubmissions.pm
lonsurveyreports.pm
/loncom/interface loncommon.pm
/loncom/homework grades.pm
Log:
- WCAG 2 compliance
- Headings descend sequentially
- Include labels for form elements
-------------- next part --------------
Index: loncom/interface/statistics/loncorrectproblemplot.pm
diff -u loncom/interface/statistics/loncorrectproblemplot.pm:1.28 loncom/interface/statistics/loncorrectproblemplot.pm:1.29
--- loncom/interface/statistics/loncorrectproblemplot.pm:1.28 Mon May 7 10:12:42 2012
+++ loncom/interface/statistics/loncorrectproblemplot.pm Wed Dec 24 14:44:23 2025
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: loncorrectproblemplot.pm,v 1.28 2012/05/07 10:12:42 goltermann Exp $
+# $Id: loncorrectproblemplot.pm,v 1.29 2025/12/24 14:44:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -77,7 +77,7 @@
my @Students = @Apache::lonstatistics::Students;
#
if (@Students < 1) {
- $r->print('<h2>'.
+ $r->print('<h2 class="LC_heading_2">'.
&mt('There are no students in the sections/groups selected').
'</h2>');
}
@@ -299,31 +299,31 @@
##
## Environment variable initialization
my $Str;
- $Str .= '<p>';
+ $Str .= '<div>';
#
$Str .= &Apache::loncommon::start_data_table();
$Str .= &Apache::loncommon::start_data_table_header_row();
- $Str .= '<th>'.&mt('Sections').'</th>';
- $Str .= '<th>'.&mt('Groups').'</th>';
- $Str .= '<th>'.&mt('Access Status').'</th>';
- $Str .= '<th>'.&mt('Sequences and Folders').'</th>';
+ $Str .= '<th><label for="Section">'.&mt('Sections').'</label></th>';
+ $Str .= '<th><label for="Group">'.&mt('Groups').'</label></th>';
+ $Str .= '<th><label for="Status">'.&mt('Access Status').'</label></th>';
+ $Str .= '<th><label for="Maps">'.&mt('Sequences and Folders').'</label></th>';
$Str .= '<th>'.&mt('Time Period').'</th>';
$Str .= &Apache::loncommon::end_data_table_header_row();
#
$Str .= &Apache::loncommon::start_data_table_row();
$Str .= '<td align="center" valign="top">'."\n";
- $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);
+ $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5,'Section');
$Str .= '</td>';
#
$Str .= '<td align="center" valign="top">'."\n";
- $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5);
+ $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5,'Group');
$Str .= '</td>';
$Str .= '<td align="center" valign="top">';
- $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);
+ $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5,'','','Status');
$Str .= '</td>'."\n";
#
$Str .= '<td align="center" valign="top">'."\n";
- $Str .= &Apache::lonstatistics::map_select('Maps','multiple,all',5);
+ $Str .= &Apache::lonstatistics::map_select('Maps','multiple,all',5,'Maps');
$Str .= '</td>';
#
$Str .= '<td align="center" valign="top">'."\n";
@@ -332,6 +332,7 @@
#
$Str .= &Apache::loncommon::end_data_table_row();
$Str .= &Apache::loncommon::end_data_table();
+ $Str .= '</div>';
##
return $Str;
}
Index: loncom/interface/statistics/lonproblemanalysis.pm
diff -u loncom/interface/statistics/lonproblemanalysis.pm:1.148 loncom/interface/statistics/lonproblemanalysis.pm:1.149
--- loncom/interface/statistics/lonproblemanalysis.pm:1.148 Wed Dec 24 05:55:08 2025
+++ loncom/interface/statistics/lonproblemanalysis.pm Wed Dec 24 14:44:23 2025
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonproblemanalysis.pm,v 1.148 2025/12/24 05:55:08 raeburn Exp $
+# $Id: lonproblemanalysis.pm,v 1.149 2025/12/24 14:44:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -132,8 +132,8 @@
$r->print('resource is undefined');
} else {
my $resource = $current_problem->{'resource'};
- $r->print('<h1>'.$resource->compTitle.'</h1>');
- $r->print('<h3>'.$resource->src.'</h3>');
+ $r->print('<h1 class="LC_heading_1">'.$resource->compTitle.'</h1>');
+ $r->print('<h2 class="LC_heading_2">'.$resource->src.'</h2>');
$r->print('<p>'.&Apache::lonstatistics::section_and_enrollment_description().'</p>');
if ($env{'form.show_prob'} eq 'true') {
$r->print('<hr />'
@@ -175,7 +175,7 @@
&mt('Analyze Problem').'" />';
$r->print($submit_button);
$r->print(' 'x5);
- $r->print('<h3>'.&mt('Please select a problem to analyze').'</h3>');
+ $r->print('<h2 class="LC_heading_2">'.&mt('Please select a problem to analyze').'</h2>');
$r->print(&Apache::lonstathelpers::problem_selector($problem_types,
$submit_button));
}
@@ -1922,27 +1922,27 @@
##
## Build the menu
my $Str = '';
- $Str .= '<p>';
+ $Str .= '<div>';
$Str .= &Apache::loncommon::start_data_table();
$Str .= &Apache::loncommon::start_data_table_header_row();
- $Str .= '<th>'.&mt('Sections').'</th>';
- $Str .= '<th>'.&mt('Groups').'</th>';
- $Str .= '<th>'.&mt('Access Status').'</th>';
+ $Str .= '<th><label for="Section">'.&mt('Sections').'</label></th>';
+ $Str .= '<th><label for="Group">'.&mt('Groups').'</label></th>';
+ $Str .= '<th><label for="Status">'.&mt('Access Status').'</label></th>';
$Str .= '<th>'.&mt('Options').'</th>';
$Str .= &Apache::loncommon::end_data_table_header_row();
##
##
$Str .= &Apache::loncommon::start_data_table_row();
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);
+ $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5,'Section');
$Str .= '</td>';
#
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5);
+ $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5,'Group');
$Str .= '</td>';
#
$Str .= '<td align="center">';
- $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);
+ $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5,'','','Status');
$Str .= '</td>';
#
##
@@ -1997,7 +1997,7 @@
##
$Str .= &Apache::loncommon::end_data_table_row();
$Str .= &Apache::loncommon::end_data_table();
- $Str .= '</p>';
+ $Str .= '</div>';
return $Str;
}
Index: loncom/interface/statistics/lonproblemstatistics.pm
diff -u loncom/interface/statistics/lonproblemstatistics.pm:1.128 loncom/interface/statistics/lonproblemstatistics.pm:1.129
--- loncom/interface/statistics/lonproblemstatistics.pm:1.128 Wed Mar 7 12:24:27 2018
+++ loncom/interface/statistics/lonproblemstatistics.pm Wed Dec 24 14:44:23 2025
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonproblemstatistics.pm,v 1.128 2018/03/07 12:24:27 raeburn Exp $
+# $Id: lonproblemstatistics.pm,v 1.129 2025/12/24 14:44:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -586,7 +586,7 @@
}
sub field_selection_input {
- my $Str = '<select name="fieldselections" multiple="multiple" size="5">'."\n";
+ my $Str = '<select name="fieldselections" multiple="multiple" size="5" id="fieldselections">'."\n";
$Str .= '<option value="all">'.&mt('all').'</option>'."\n";
foreach my $field (@Fields) {
next if ($field->{'selectable'} ne 'yes');
@@ -621,25 +621,25 @@
my $Str = '';
$Str .= &Apache::loncommon::start_data_table();
$Str .= &Apache::loncommon::start_data_table_header_row();
- $Str .= '<th>'.&mt('Sections').'</th>';
- $Str .= '<th>'.&mt('Groups').'</th>';
- $Str .= '<th>'.&mt('Access Status').'</th>';
- $Str .= '<th>'.&mt('Sequences and Folders').'</th>';
- $Str .= '<th>'.&mt('Statistics').'</th>';
+ $Str .= '<th><label for="Section">'.&mt('Sections').'</label></th>';
+ $Str .= '<th><label for="Group">'.&mt('Groups').'</label></th>';
+ $Str .= '<th><label for="Status">'.&mt('Access Status').'</label></th>';
+ $Str .= '<th><label for="Maps">'.&mt('Sequences and Folders').'</label></th>';
+ $Str .= '<th><label for="fieldselections">'.&mt('Statistics').'</label></th>';
$Str .= '<th>'.&mt('Plot Graph').'</th>';
$Str .= '<th>'.&mt('Time Period').'</th>';
$Str .= &Apache::loncommon::end_data_table_header_row();
#
$Str .= &Apache::loncommon::start_data_table_row();
$Str .= '<td align="center" valign="top">'."\n";
- $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);
+ $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5,'Section');
$Str .= '</td><td align="center" valign="top">';
- $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5);
+ $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5,'Group');
$Str .= '</td><td align="center" valign="top">';
- $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);
+ $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5,'','','Status');
$Str .= '</td><td align="center" valign="top">';
#
- $Str .= &Apache::lonstatistics::map_select('Maps','multiple,all',5);
+ $Str .= &Apache::lonstatistics::map_select('Maps','multiple,all',5,'Maps');
$Str .= '</td><td align="center" valign="top">';
$Str .= &field_selection_input();
$Str .= '</td><td align="center" valign="top">';
@@ -742,7 +742,7 @@
&Apache::lonstatistics::selected_sequences_with_assessments();
if (! ref($navmap)) {
$r->print('<div class="LC_error">'.&mt('A course-wide error occurred.').'</div>'.
- '<h3>'.$navmap.'</h3>');
+ '<h3 class="LC_heading_3">'.$navmap.'</h3>');
&clean_up();
return;
}
@@ -799,7 +799,7 @@
sub output_sequence_statistics {
my ($r) = @_;
my $c=$r->connection();
- $r->print('<h2>'.&mt('Sequence Statistics').
+ $r->print('<h2 class="LC_heading_2">'.&mt('Sequence Statistics').
&Apache::loncommon::help_open_topic('Statistics_Sequence').
'</h2>');
$r->print(&Apache::loncommon::start_data_table());
@@ -829,7 +829,7 @@
#
foreach my $seq (@sequences) {
last if ($c->aborted);
- $r->print("<h3>".$seq->compTitle."</h3>".
+ $r->print("<h3 class=\"LC_heading_3\">".$seq->compTitle."</h3>".
&Apache::loncommon::start_data_table().
&Apache::loncommon::start_data_table_header_row().
&statistics_table_header('no container').
@@ -871,7 +871,7 @@
sub html_preamble {
my $Str='';
- $Str .= "<h2>".
+ $Str .= "<h2 class=\"LC_heading_2\">".
$env{'course.'.$env{'request.course.id'}.'.description'}.
"</h2>\n";
my ($starttime,$endtime) = &Apache::lonstathelpers::get_time_limits();
@@ -1274,7 +1274,8 @@
name => 'tries statistics',
title => 'Tries Statistics' });
#
- my $Str= "\n".'<select name="plot" size="1">';
+ my $labeltext = &mt('Data for Y axis in plot');
+ my $Str= "\n".'<select name="plot" size="1" aria-label="'.$labeltext.'">';
$Str .= '<option name="none"></option>'."\n";
$Str .= '<option name="none2">'.&mt('none').'</option>'."\n";
foreach my $field (@Additional_Plots, at Fields) {
@@ -1303,7 +1304,7 @@
###############################################
sub Excel_output {
my ($r) = @_;
- $r->print('<h2>'.&mt('Preparing Excel Spreadsheet').'</h2>');
+ $r->print('<h2 class="LC_heading_2">'.&mt('Preparing Excel Spreadsheet').'</h2>');
##
## Compute the statistics
&compute_all_statistics($r);
Index: loncom/interface/statistics/lonstathelpers.pm
diff -u loncom/interface/statistics/lonstathelpers.pm:1.81 loncom/interface/statistics/lonstathelpers.pm:1.82
--- loncom/interface/statistics/lonstathelpers.pm:1.81 Wed Jul 12 15:09:41 2023
+++ loncom/interface/statistics/lonstathelpers.pm Wed Dec 24 14:44:23 2025
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstathelpers.pm,v 1.81 2023/07/12 15:09:41 raeburn Exp $
+# $Id: lonstathelpers.pm,v 1.82 2025/12/24 14:44:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -91,7 +91,7 @@
$rendered_problem =~ s/<\s*form\s*/<nop /g;
$rendered_problem =~ s|(<\s*/form\s*>)|<\/nop>|g;
return '<div class="LC_Box">'.
- '<h4 class="LC_hcell">'.&mt('Problem').'</h4>'.
+ '<h3 class="LC_hcell LC_heading_3">'.&mt('Problem').'</h3>'.
'<base href="'.$base.'" />'.$rendered_problem.
'</div>';
}
@@ -253,7 +253,7 @@
$jsadd.
' /></td>'
:qq{<td><input type="radio" id="$rb_count" name="problemchoice" value="$value"$checked /></td>}).
- '<td><label for="'.$prefix.$rb_count.'">'.$resptype.'</label></td>'.
+ '<td>'.$resptype.'</td>'.
'<td><label for="'.$prefix.$rb_count.'">'.$title.'</label>';
if (scalar(@response_ids) > 1) {
$seq_str .= &mt('response').' '.$respid;
@@ -298,6 +298,9 @@
} else {
$Str = '<p class="LC_info">'.&mt('No analyzable problems found').'</p>';
}
+ } else {
+ $Str = '<fieldset class="LC_borderless"><legend class="LC_visually_hidden">'.
+ &mt('Select a problem to analyze').'</legend>'.$Str.'</fieldset>';
}
return $Str;
}
Index: loncom/interface/statistics/lonstudentsubmissions.pm
diff -u loncom/interface/statistics/lonstudentsubmissions.pm:1.71 loncom/interface/statistics/lonstudentsubmissions.pm:1.72
--- loncom/interface/statistics/lonstudentsubmissions.pm:1.71 Fri Mar 28 15:07:01 2014
+++ loncom/interface/statistics/lonstudentsubmissions.pm Wed Dec 24 14:44:23 2025
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstudentsubmissions.pm,v 1.71 2014/03/28 15:07:01 bisitz Exp $
+# $Id: lonstudentsubmissions.pm,v 1.72 2025/12/24 14:44:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1275,7 +1275,7 @@
sub CreateInterface {
##
## Output Selection
- my $output_selector = $/.'<select name="output">'.$/;
+ my $output_selector = $/.'<select name="output" id="output">'.$/;
foreach ('HTML','Excel','CSV') {
$output_selector .= ' <option value="'.lc($_).'"';
if ($env{'form.output'} eq lc($_)) {
@@ -1290,29 +1290,29 @@
$Str .= '<br />';
$Str .= &Apache::loncommon::start_data_table();
$Str .= &Apache::loncommon::start_data_table_header_row();
- $Str .= '<th>'.&mt('Sections').'</th>';
- $Str .= '<th>'.&mt('Groups').'</th>';
- $Str .= '<th>'.&mt('Student Data').&Apache::loncommon::help_open_topic("Chart_Student_Data").'</th>';
- $Str .= '<th>'.&mt('Access Status').'</th>';
+ $Str .= '<th><label for="Section">'.&mt('Sections').'</label></th>';
+ $Str .= '<th><label for="Group">'.&mt('Groups').'</label></th>';
+ $Str .= '<th><label for="StudentData">'.&mt('Student Data').&Apache::loncommon::help_open_topic("Chart_Student_Data").'</label></th>';
+ $Str .= '<th><label for="Status">'.&mt('Access Status').'</label></th>';
$Str .= '<th>'.&mt('Options').'</th>';
- $Str .= '<th>'.&mt('Output Format').'</th>';
+ $Str .= '<th><label for="output">'.&mt('Output Format').'</label></th>';
$Str .= &Apache::loncommon::end_data_table_header_row();
#
$Str .= &Apache::loncommon::start_data_table_row();
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);
+ $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5,'Section');
$Str .= '</td>';
#
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5);
+ $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5,'Group');
$Str .= '</td>';
#
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::StudentDataSelect('StudentData','multiple', 5,undef);
+ $Str .= &Apache::lonstatistics::StudentDataSelect('StudentData','multiple', 5,'StudentData');
$Str .= '</td>';
#
$Str .= '<td align="center">';
- $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);
+ $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5,'','','Status');
$Str .= '</td>';
#
# Render problem checkbox
Index: loncom/interface/statistics/lonsurveyreports.pm
diff -u loncom/interface/statistics/lonsurveyreports.pm:1.26 loncom/interface/statistics/lonsurveyreports.pm:1.27
--- loncom/interface/statistics/lonsurveyreports.pm:1.26 Wed Dec 21 21:25:51 2011
+++ loncom/interface/statistics/lonsurveyreports.pm Wed Dec 24 14:44:23 2025
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonsurveyreports.pm,v 1.26 2011/12/21 21:25:51 www Exp $
+# $Id: lonsurveyreports.pm,v 1.27 2025/12/24 14:44:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -160,7 +160,7 @@
$r->print('<input type="submit" name="Generate" value="'.
&mt('Generate Survey Report').'" />');
$r->print(' 'x5);
- $r->print('<h3>'.&mt('Please select a Survey to analyze').'</h3>');
+ $r->print('<h2 class="LC_heading_2">'.&mt('Please select a Survey to analyze').'</h2>');
$r->print(&SurveyProblemSelector());
}
}
@@ -611,7 +611,7 @@
##
## Environment variable initialization
my $Str = '';
- my $output_selector = '<select name="output" size="5">'.$/;
+ my $output_selector = '<select name="output" size="5" id="output">'.$/;
if (! exists($env{'form.output'})) {
$env{'form.output'} = 'HTML';
}
@@ -626,27 +626,27 @@
$output_selector.= '>'.$output_format->{'text'}.'</option>'.$/;
}
$output_selector .= '</select>'.$/;
- $Str .= '<p>';
+ $Str .= '<div>';
$Str .= &Apache::loncommon::start_data_table();
$Str .= &Apache::loncommon::start_data_table_header_row();
- $Str .= '<th>'.&mt('Sections').'</th>';
- $Str .= '<th>'.&mt('Groups').'</th>';
- $Str .= '<th>'.&mt('Access Status').'</th>';
- $Str .= '<th>'.&mt('Output Format').'</th>';
+ $Str .= '<th><label for="Section">'.&mt('Sections').'</label></th>';
+ $Str .= '<th><label for="Group">'.&mt('Groups').'</label></th>';
+ $Str .= '<th><label for="Status">'.&mt('Access Status').'</label></th>';
+ $Str .= '<th><label for="output">'.&mt('Output Format').'</label></th>';
$Str .= '<th>'.&mt('Options').'</th>';
$Str .= &Apache::loncommon::end_data_table_header_row();
#
$Str .= &Apache::loncommon::start_data_table_row();
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5);
+ $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5,'Section');
$Str .= '</td>';
#
$Str .= '<td align="center">'."\n";
- $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5);
+ $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5,'Group');
$Str .= '</td>';
#
$Str .= '<td align="center">';
- $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5);
+ $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5,'','','Status');
$Str .= '</td>';
#
$Str .= '<td align="center">'.$output_selector.'</td>';
@@ -667,7 +667,7 @@
$Str .= &Apache::loncommon::end_data_table_row();
$Str .= &Apache::loncommon::end_data_table();
#
- $Str .= '</p>';
+ $Str .= '</div>';
##
return $Str;
}
Index: loncom/interface/loncommon.pm
diff -u loncom/interface/loncommon.pm:1.1491 loncom/interface/loncommon.pm:1.1492
--- loncom/interface/loncommon.pm:1.1491 Mon Dec 22 20:50:27 2025
+++ loncom/interface/loncommon.pm Wed Dec 24 14:44:24 2025
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.1491 2025/12/22 20:50:27 raeburn Exp $
+# $Id: loncommon.pm,v 1.1492 2025/12/24 14:44:24 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -7556,6 +7556,10 @@
opacity: 1;
}
+.LC_heading_1 {
+ font-size: 1.5em;
+}
+
.LC_heading_2 {
font-size: 1.17em;
}
Index: loncom/homework/grades.pm
diff -u loncom/homework/grades.pm:1.829 loncom/homework/grades.pm:1.830
--- loncom/homework/grades.pm:1.829 Sat Dec 13 13:33:33 2025
+++ loncom/homework/grades.pm Wed Dec 24 14:44:25 2025
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# The LON-CAPA Grading handler
#
-# $Id: grades.pm,v 1.829 2025/12/13 13:33:33 raeburn Exp $
+# $Id: grades.pm,v 1.830 2025/12/24 14:44:25 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -13349,6 +13349,7 @@
my ($r)=@_;
$r->print('<h3>'.&mt('Select the problem or one of the problems you want to grade').'</h3><form action="/adm/grades">');
$r->print(&Apache::lonstathelpers::problem_selector('.',undef,1,undef,undef,1,1));
+ $r->print('<div style="padding:0;clear:both;margin:0;border:0"></div>');
$r->print('<input type="hidden" name="command" value="gradingmenu" />');
$r->print('<input type="submit" value="'.&mt('Next').' →" /></form>');
}
More information about the LON-CAPA-cvs
mailing list