--- loncom/interface/statistics/lonsubmissiontimeanalysis.pm 2004/06/04 21:42:19 1.15 +++ loncom/interface/statistics/lonsubmissiontimeanalysis.pm 2004/06/25 18:23:02 1.16 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonsubmissiontimeanalysis.pm,v 1.15 2004/06/04 21:42:19 matthew Exp $ +# $Id: lonsubmissiontimeanalysis.pm,v 1.16 2004/06/25 18:23:02 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -159,6 +159,7 @@ sub get_week_start { sub analyze_times { my ($r,$resource,$students,$part) = @_; + my $htmltable; # # Convenience arrays my @FullWeekDay = (qw/Sunday Monday Tuesday Wednesday Thursday Friday @@ -196,6 +197,7 @@ sub analyze_times { my @Ydata=(0); my @AnsData=(0); my @Xlabel=($WeekDay[$wday]); + my @BinEnd; my $cumulative_answers = 0; # foreach my $row (@$SubData) { @@ -206,6 +208,7 @@ sub analyze_times { $Ydata[$bincount]=0; $AnsData[$bincount]=$AnsData[$bincount-1]; $endtime += $binsize; + push(@BinEnd,$endtime); if ($bincount % (86400/$binsize) == 0) { $wday++; $wday %= 7; @@ -242,9 +245,42 @@ sub analyze_times { } } my $numstudents = scalar(@$students); + $htmltable = '

'. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''; for (my $i=0;$i<=$#AnsData;$i++) { $AnsData[$i] = int(100*($AnsData[$i]/$numstudents)); + if ($Ydata[$i] != 0) { + next if (! defined($BinEnd[$i]) || $BinEnd[$i] == 0); + $htmltable .= + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''. + ''.$/; + } } + $htmltable .= '
'.&mt('Begin Date').''.(' 'x3).''.&mt('End Date').''.&mt('Submissions').''.(' 'x3).''.&mt('Correct
Submissions').'
'.(' 'x3).''.&mt('Percent
Correct').'
'. + &Apache::lonlocal::locallocaltime($BinEnd[$i]-$binsize). + ' '. + &Apache::lonlocal::locallocaltime($BinEnd[$i]).''.$Ydata[$i].(' 'x3).' '.($i>0?$AnsData[$i]-$AnsData[$i-1]:$AnsData[$i]).(' 'x3).'

'; my $title = 'Number of Submissions and Number Correct'; my $xlabel; (undef,undef,undef,$mday,$month,$year,$wday) = localtime($day_start); @@ -276,7 +312,7 @@ sub analyze_times { 'data.2.label'=>'Percent correct', ) ); - $html .= '
'; + $html .= '
'.$htmltable; return $html; } @@ -332,18 +368,19 @@ sub CreateInterface { $Str .= '

'; $Str .= ''."\n"; $Str .= ''; - $Str .= ''; - $Str .= ''; + $Str .= ''; + $Str .= ''; $Str .= ''."\n"; ## ## $Str .= ''; # $Str .= ''; + # $Str .= ''."\n"; $Str .= '
'.&mt('Sections').''.&mt('Enrollment Status').''.&mt('Sections').''.&mt('Enrollment Status').'
'."\n"; - $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5); + $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',4); $Str .= ''; - $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,5); + $Str .= &Apache::lonhtmlcommon::StatusOptions(undef,undef,4); $Str .= '
'."\n"; #