--- loncom/interface/statistics/lonsubmissiontimeanalysis.pm 2011/12/21 21:25:51 1.33
+++ loncom/interface/statistics/lonsubmissiontimeanalysis.pm 2020/11/10 19:28:32 1.37
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonsubmissiontimeanalysis.pm,v 1.33 2011/12/21 21:25:51 www Exp $
+# $Id: lonsubmissiontimeanalysis.pm,v 1.37 2020/11/10 19:28:32 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -75,8 +75,8 @@ sub BuildSubmissionTimePage {
#
if (@Students < 1) {
$r->print('
'
- .&mt('There are no students in the sections selected.'
- .'
')
+ .&mt('There are no students in the sections selected.')
+ .''
);
}
#
@@ -105,20 +105,9 @@ sub BuildSubmissionTimePage {
$r->rflush();
#
# Determine which problem we are to analyze
- my $current_problem = &Apache::lonstathelpers::get_target_from_id
- ($env{'form.problemchoice'});
- #
- my ($navmap,$prev,$curr,$next) =
- &Apache::lonstathelpers::get_prev_curr_next($current_problem,
- '.',
- 'part');
- if (exists($env{'form.PrevProblemAnalysis'}) && defined($prev)) {
- $current_problem = $prev;
- } elsif (exists($env{'form.NextProblemAnalysis'}) && defined($next)) {
- $current_problem = $next;
- } else {
- $current_problem = $curr;
- }
+ my ($navmap,$current_problem) = &get_current_problem(); # need to retrieve $navmap
+ # to support $resource->* calls
+ # for src and compTitle (below)
#
# Store the current problem choice and send it out in the form
$env{'form.problemchoice'} =
@@ -138,13 +127,12 @@ sub BuildSubmissionTimePage {
} else {
$r->print(''.$resource->compTitle.'
');
$r->print(''.$resource->src.'
');
- $r->print(''.
+ $r->print('
'.
&Apache::lonstatistics::section_and_enrollment_description().
- '');
+ '
');
$r->rflush();
- $r->print('
');
$r->print(&Apache::lonstathelpers::render_resource($resource));
- $r->print('
');
+ $r->print('
');
$r->rflush();
if (@Students) {
$r->print(&analyze_times($r,$resource->symb,\@Students,
@@ -155,6 +143,23 @@ sub BuildSubmissionTimePage {
}
}
+sub get_current_problem {
+ my $current_problem = &Apache::lonstathelpers::get_target_from_id
+ ($env{'form.problemchoice'});
+ my ($navmap,$prev,$curr,$next) =
+ &Apache::lonstathelpers::get_prev_curr_next($current_problem,
+ '.',
+ 'part');
+ if (exists($env{'form.PrevProblemAnalysis'}) && defined($prev)) {
+ $current_problem = $prev;
+ } elsif (exists($env{'form.NextProblemAnalysis'}) && defined($next)) {
+ $current_problem = $next;
+ } else {
+ $current_problem = $curr;
+ }
+ return ($navmap,$current_problem);
+}
+
#########################################################
#########################################################
##
@@ -277,25 +282,19 @@ sub analyze_times {
}
#
# Build the data table
- $htmltable = ''.
- '
'.
- ''.
- ''.
+ $htmltable = '
'.&mt('Student submission data').'
'.
+ &Apache::loncommon::start_data_table().
+ &Apache::loncommon::start_data_table_header_row().
+ &Apache::loncommon::start_data_table_row().
'
'.&mt('Begin').' | '.
- ''.(' 'x3).' | '.
''.&mt('End').' | '.
''.&mt('Submissions (plotted)').' | '.
- ''.(' 'x3).' | '.
''.&mt('Correct Submissions (not plotted)').' | '.
- ''.(' 'x3).' | '.
''.&mt('Cumulative Correct of those attempting the problem (not plotted)').' | '.
- ''.(' 'x3).' | '.
''.&mt('Cumulative Percent Correct of those attempting the problem (not plotted)').' | '.
- ''.(' 'x3).' | '.
''.&mt('Cumulative Percent Correct of selected students (plotted)').' | '.
- '
'.
- ''.
+ &Apache::loncommon::end_data_table_row().
+ &Apache::loncommon::end_data_table_header_row().
'';
my @CumulativeCorrect=(0);
my @corr_as_percent_of_selected;
@@ -308,28 +307,23 @@ sub analyze_times {
sprintf('%3.1f',100*$CumulativeCorrect[$i]/scalar(@$students));
if ($Ydata[$i] != 0) {
next if (! defined($BinEnd[$i]) || $BinEnd[$i] == 0);
- $htmltable .=
- ''.
+ $htmltable .=
+ &Apache::loncommon::start_data_table_row().
''.
&Apache::lonlocal::locallocaltime($BinEnd[$i]-$binsize).
' | '.
- ' | '.
''.
&Apache::lonlocal::locallocaltime($BinEnd[$i]).' | '.
''.
''.$Ydata[$i].(' 'x3).' | '.
- ' | '.
''.$AnsData[$i].(' 'x3).' | '.
- ' | '.
''.$CumulativeCorrect[$i].' | '.
- ' | '.
''.$corr_as_percent_of_answering[$i].' | '.
- ' | '.
''.$corr_as_percent_of_selected[$i].' | '.
- '
'.$/;
+ &Apache::loncommon::end_data_table_row().$/;
}
}
- $htmltable .= '
';
+ $htmltable .= ''.&Apache::loncommon::end_data_table().'';
#
# Build the plot
my $title = '';#'Number of Submissions and Number Correct';