--- loncom/interface/statistics/lonsubmissiontimeanalysis.pm 2008/10/23 09:07:51 1.29
+++ loncom/interface/statistics/lonsubmissiontimeanalysis.pm 2020/11/18 15:31:40 1.38
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonsubmissiontimeanalysis.pm,v 1.29 2008/10/23 09:07:51 bisitz Exp $
+# $Id: lonsubmissiontimeanalysis.pm,v 1.38 2020/11/18 15:31:40 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -31,6 +31,7 @@ use strict;
use Apache::lonnet;
use Apache::loncommon();
use Apache::lonhtmlcommon();
+use Apache::lonquickgrades();
use Apache::loncoursedata();
use Apache::lonstatistics;
use Apache::lonstathelpers;
@@ -66,12 +67,17 @@ sub BuildSubmissionTimePage {
#
&Apache::lonstatistics::PrepareClasslist();
#
+ $r->print(&Apache::lonhtmlcommon::breadcrumbs('Submission Time Plots'));
+ &Apache::lonquickgrades::startGradeScreen($r,'statistics');
$r->print(&CreateInterface());
#
my @Students = @Apache::lonstatistics::Students;
#
if (@Students < 1) {
- $r->print('
There are no students in the sections selected
');
+ $r->print('
'
+ .&mt('There are no students in the sections selected.')
+ .'
'
+ );
}
#
my @CacheButtonHTML =
@@ -81,7 +87,8 @@ sub BuildSubmissionTimePage {
if (! exists($env{'form.problemchoice'}) ||
exists($env{'form.SelectAnother'})) {
my $submit_button = '';
+# &mt('Graph Problem Submission Times').'" />';
+ &mt('Generate Graph').'" />';
$r->print($submit_button.' 'x5);
$r->print('
'.&mt('Please select a problem to analyze').'
');
$r->print(&Apache::lonstathelpers::problem_selector('.',
@@ -98,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'} =
@@ -124,13 +120,16 @@ sub BuildSubmissionTimePage {
#
my $resource = $current_problem->{'resource'};
if (! defined($resource)) {
- $r->print('resource is undefined');
+ $r->print('
There is no submission data for this problem at all
';
+ $html.= '
'
+ .&mt('There is no submission data for this problem at all.')
+ .'
';
return $html;
}
my $NumSub = scalar(@{$SubData});
if (! @{$SubData}) {
- $html.= '
There is no submission data for this problem
';
+ $html.= '
'
+ .&mt('There is no submission data for this problem.')
+ .'
';
return $html;
}
# Process the data
@@ -205,7 +225,7 @@ sub analyze_times {
my @Ydata=(0); # number of submissions
my @AnsData=(0); # number of correct submissions
my @Xlabel=($WeekDay[$wday]); # Labels of itmes
- my @BinEnd; # The end time of each bin
+ my @BinEnd=($endtime); # The end time of each bin
my $cumulative_answers = 0; # The sum of @AnsData
my %students; # which students have attempted the problem?
#
@@ -217,7 +237,7 @@ sub analyze_times {
$Ydata[$bincount] = 0;
$AnsData[$bincount] = 0;
$endtime += $binsize;
- push(@BinEnd,$endtime);
+ $BinEnd[$bincount] = $endtime;
if ($bincount % (86400/$binsize) == 0) {
$wday++;
$wday %= 7;
@@ -239,7 +259,7 @@ sub analyze_times {
$Ydata[$bincount]=0;
$AnsData[$bincount]=0;
$endtime += $binsize;
- push(@BinEnd,$endtime);
+ $BinEnd[$bincount]=$endtime;
if ($bincount % (86400/$binsize) == 0) {
$wday ++;
$wday %= 7;
@@ -262,25 +282,19 @@ sub analyze_times {
}
#
# Build the data table
- $htmltable = '
';
+ $htmltable .= ''.&Apache::loncommon::end_data_table().'';
#
# Build the plot
my $title = '';#'Number of Submissions and Number Correct';
@@ -398,17 +407,17 @@ sub CreateInterface {
##
## Build the menu
my $Str = '';
- $Str .= &Apache::lonhtmlcommon::breadcrumbs('Submission Time Plots');
$Str .= '