--- loncom/interface/lonstatistics.pm 2002/05/13 13:50:45 1.15
+++ loncom/interface/lonstatistics.pm 2002/05/13 16:41:46 1.17
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# (Publication Handler
#
-# $Id: lonstatistics.pm,v 1.15 2002/05/13 13:50:45 minaeibi Exp $
+# $Id: lonstatistics.pm,v 1.17 2002/05/13 16:41:46 minaeibi Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -83,7 +83,6 @@ my %ConceptData;
my %Header = (0,"Homework Sets Order",1,"#Stdnts",2,"Tries",3,"Mod",
4,"Mean",5,"#YES",6,"#yes",7,"%Wrng",8,"DoDiff",
9,"S.D.",10,"Skew.",11,"D.F.1st",12,"D.F.2nd");
-my %Answer = ();
my @shown;
sub InitAnalysis {
@@ -101,7 +100,7 @@ sub InitAnalysis {
# my $Answ=&Apache::lonnet::ssi($URI,('grade_target' => 'analyze'));
(my $garbage,$Answ)=split(/_HASH_REF__/,$Answ,2);
- %Answer=();
+ my %Answer=();
%Answer=&Apache::lonnet::str2hash($Answ);
my $parts='';
@@ -122,12 +121,11 @@ sub InitAnalysis {
}
chop($show);
@shown=split(/\@/,$show);
-# $r->print("
shown:".$show);
-# $r->rflush();
-
+# $r->print("
shown:".$show);# $r->rflush();
foreach my $concept (@{$Answer{"$parts.concepts"}}) {
foreach my $foil (@{$Answer{"$parts.concept.$concept"}}) {
$foil_to_concept{$foil} = $concept;
+ $ConceptData{$foil} = $Answer{"$parts.foil.value.$foil"};
}
}
return $symb;
@@ -135,13 +133,12 @@ sub InitAnalysis {
sub Interval {
- my $symb=shift;
+ my ($rid,$part,$symb)=@_;
my $Int=$ConceptData{"Interval"};
- my $due = &Apache::lonnet::EXT('resource.0.duedate',$symb)+1;
- my $opn = &Apache::lonnet::EXT('resource.0.opendate',$symb);
+ my $due = &Apache::lonnet::EXT('resource.$part.duedate',$symb)+1;
+ my $opn = &Apache::lonnet::EXT('resource.$part.opendate',$symb);
my $add=int(($due-$opn)/$Int);
-# $r->print("
$opn, to $due add=$add int=$Int");
- #$r->rflush();
+#$r->print("
$opn, to $due add=$add int=$Int");#$r->rflush();
$ConceptData{"Int.0"}=$opn;
for (my $i=1;$i<$Int;$i++) {
$ConceptData{"Int.$i"}=$opn+$i*$add;
@@ -176,11 +173,10 @@ sub ShowOpGraph {
ENDPOP
- &Create_PrgWin();
- &Update_PrgWin("Starting to analyze problem");
- my $rid=substr($InpStr,8);
+ my ($rid,$part)=split(/\:/,substr($InpStr,8));
$ConceptData{"Interval"}=$Int_No;
- &Interval(&InitAnalysis($rid,$students[0]));
+ my $symb=&InitAnalysis($rid,$students[0]);
+ &Interval($rid,$part,$symb);
my $URI = $hash{'src_'.$rid};
my $Src = $hash{'title_'.$rid};
$Src =~ s/\ /"_"/eg;
@@ -190,24 +186,24 @@ ENDPOP
$tmp =~ s/" less than "/eg;
$r->print("
Concept $n:$tmp");
}
-
$r->rflush();
+ &Create_PrgWin();
+ &Update_PrgWin("Starting to analyze problem");
for (my $index=0;$index<=$#students;$index++) {
&Update_PrgWin($index);
&OpStatus($rid,$students[$index]);
}
&Close_PrgWin();
-#$Apache::lonxml::debug=1;
-#&Apache::lonhomework::showhash(%ConceptData);
-#$Apache::lonxml::debug=0;
-
for (my $k=0; $k<$Int_No; $k++ ) {
my $data1='';
my $data2='';
&DrawGraph(&AdjustData($k).'+'.$Src.'+'.($k+1));
}
+#$Apache::lonxml::debug=1;
+#&Apache::lonhomework::showhash(%ConceptData);
+#$Apache::lonxml::debug=0;
my $Answ=&Apache::lonnet::ssi($URI);
$r->print("
Here you can see the Problem:
$Answ");
}
@@ -223,6 +219,8 @@ sub AdjustData {
$data2[$n]=$ConceptData{"$tmp.$k.false"};
my $Sum=$data1[$n]+$data2[$n];
if ( $Max<$Sum ) {$Max=$Sum;}
+ $ConceptData{"$tmp.true"}+=$data1[$n];
+ $ConceptData{"$tmp.false"}+=$data2[$n];
}
for (my $n=0; $n<=$#Concepts; $n++ ) {
if ($data1[$n]+$data2[$n]<$Max) {
@@ -253,7 +251,6 @@ sub DrawGraph {
"\n"."