--- loncom/interface/statistics/lonproblemstatistics.pm 2003/03/27 19:26:33 1.47 +++ loncom/interface/statistics/lonproblemstatistics.pm 2003/03/28 15:20:59 1.48 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonproblemstatistics.pm,v 1.47 2003/03/27 19:26:33 matthew Exp $ +# $Id: lonproblemstatistics.pm,v 1.48 2003/03/28 15:20:59 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -340,9 +340,7 @@ sub output_html_grouped_by_sequence { foreach my $part (@{$resource->{'parts'}}) { $problem_num++; my ($num,$tries,$mod,$mean,$Solved,$solved,$DegOfDiff,$STD, - $SKEW) = &Apache::loncoursedata::get_problem_statistics - (undef,$resource->{'symb'},$part, - $ENV{'request.course.id'}); + $SKEW) = &get_statistics($resource->{'symb'},$part); # $part = ' ' if ($part == 0); # @@ -425,9 +423,7 @@ sub output_html_ungrouped { foreach my $part (@{$resource->{'parts'}}) { $problem_num++; my ($num,$tries,$mod,$mean,$Solved,$solved,$DegOfDiff,$STD, - $SKEW) = &Apache::loncoursedata::get_problem_statistics - (undef,$resource->{'symb'},$part, - $ENV{'request.course.id'}); + $SKEW) = &get_statistics($resource->{'symb'},$part); # $show_part = 1 if ($part ne '0'); $part = ' ' if ($part == 0); @@ -636,9 +632,7 @@ sub output_excel { foreach my $part (@{$resource->{'parts'}}) { $cols_output=0; my ($num,$tries,$mod,$mean,$Solved,$solved,$DegOfDiff,$STD, - $SKEW) = &Apache::loncoursedata::get_problem_statistics - (undef,$resource->{'symb'},$part, - $ENV{'request.course.id'}); + $SKEW) = &get_statistics($resource->{'symb'},$part); # if (!defined($part) || $part eq '') { $part = ' '; @@ -750,9 +744,7 @@ sub plot_statistics { foreach my $resource (@{$sequence->{'contents'}}) { next if ($resource->{'type'} ne 'assessment'); foreach my $part (@{$resource->{'parts'}}) { - my @Results = &Apache::loncoursedata::get_problem_statistics - (undef,$resource->{'symb'},$part, - $ENV{'request.course.id'}); + my @Results= &get_statistics($resource->{'symb'},$part); my ($num,$Solved,$solved) = @Results[0,4,5]; my $wrongpercent = 0; if (defined($num) && $num > 0) { @@ -847,6 +839,20 @@ sub DrawGraph { (join('&', @GData)).'" border="1" />'; } +sub get_statistics { + my ($symb,$part) = @_; + # + my $courseid = $ENV{'request.course.id'}; + # + my $students = \@Apache::lonstatistics::Students; + if ($Apache::lonstatistics::SelectedSections[0] eq 'all') { + $students = undef; + } + my @Results = &Apache::loncoursedata::get_problem_statistics + ($students,$symb,$part,$courseid); + return @Results; +} + ############################################### ###############################################