--- loncom/interface/statistics/lonproblemanalysis.pm 2004/12/02 21:53:33 1.106 +++ loncom/interface/statistics/lonproblemanalysis.pm 2004/12/23 19:57:35 1.109 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonproblemanalysis.pm,v 1.106 2004/12/02 21:53:33 matthew Exp $ +# $Id: lonproblemanalysis.pm,v 1.109 2004/12/23 19:57:35 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -86,8 +86,8 @@ sub BuildProblemAnalysisPage { # # Support for numerical and radio response isn't complete enough to # include in 1.2 release. - # my $problem_types = '(option|radiobutton|numerical)'; - my $problem_types = '.';#(option)'; + my $problem_types = '(option|radiobutton|numerical)'; + # my $problem_types = '.';#(option)'; if (exists($ENV{'form.problemchoice'}) && ! exists($ENV{'form.SelectAnother'})) { foreach my $button (@SubmitButtons) { @@ -456,19 +456,14 @@ sub numerical_classify_responses { my ($sname,$sdom) = split(':',$subm{'student'}); # Note that $subm{'unit'} is modified by the following call # We do not use it again but you should be aware just in case. -# my ($myunit,$mysub) = ($subm{'unit'},$subm{'submission'}); -# $myunit = 'm'; -# # &Apache::lonnet::logthis($myunit); -# my $result = -# &capa::caparesponse_get_real_response($myunit, -# $mysub, -# \$scaled); -# # &Apache::lonnet::logthis(' '.$myunit.':'.$subm{'unit'}. -# # ' '.$mysub.':'.$subm{'submission'}.'; '.$result); -# next if (! defined($scaled)); -# next if ($result ne '6'); -# my $submission = $scaled; - my $submission = $subm{'submission'}; + my ($myunit,$mysub) = ($subm{'unit'},$subm{'submission'}); + my $result = + &capa::caparesponse_get_real_response($myunit, + $mysub, + \$scaled); + next if (! defined($scaled)); + next if ($result ne '6'); + my $submission = $scaled; $students{$subm{'student'}}++; if (&numerical_submission_is_correct($subm{'award'})) { &Apache::lonnet::logthis('correct:'.$submission.':'.$subm{'correct'}); @@ -1176,6 +1171,9 @@ sub OR_tries_analysis { my $mintries = 1; my $maxtries = $ENV{'form.NumPlots'}; my ($table,$Foils,$Concepts) = &build_foil_index($ORdata); + if (! defined($Concepts)) { + $Concepts = []; + } my %response_data = &OR_analyze_by_tries($r,$PerformanceData, $mintries,$maxtries); my $analysis = ''; @@ -1775,6 +1773,7 @@ sub OR_build_response_data_worksheet { my ($foilid,$correct) = split('=',$Foilgrades[$j]); my (undef,$submission) = split('=',$Foilsubs[$j]); $submission = &Apache::lonnet::unescape($submission); + $foilid = &Apache::lonnet::unescape($foilid); $response_data{$foilid.' submission'}=$submission; $response_data{$foilid.' award'}=$correct; }