version 1.2, 2002/07/30 21:31:48
|
version 1.3, 2002/08/01 20:49:06
|
Line 48 sub BuildProblemAnalysisPage {
|
Line 48 sub BuildProblemAnalysisPage {
|
|
|
my %cache; |
my %cache; |
my $Str = ''; |
my $Str = ''; |
unless(tie(%cache,'GDBM_File',$cacheDB,&GDBM_READER,0640)) { |
unless(tie(%cache,'GDBM_File',$cacheDB,&GDBM_READER(),0640)) { |
$Str .= '<html><body>Unable to tie database.</body></html>'; |
$Str .= '<html><body>Unable to tie database.</body></html>'; |
return $Str; |
return $Str; |
} |
} |
Line 73 sub BuildAnalyzePage {
|
Line 73 sub BuildAnalyzePage {
|
if($c->aborted) { |
if($c->aborted) { |
return $Str; |
return $Str; |
} |
} |
my $courseData = |
my $downloadTime=''; |
&Apache::loncoursedata::DownloadCourseInformation($_, |
if(tie(%cache,'GDBM_File',$cacheDB,&GDBM_READER(),0640)) { |
$courseID); |
$downloadTime = $cache{$_.':lastDownloadTime'}; |
if(tie(%cache,'GDBM_File',$cacheDB,&GDBM_WRCREAT,0640)) { |
|
&Apache::loncoursedata::ProcessStudentData(\%cache, |
|
$courseData, $_); |
|
untie(%cache); |
untie(%cache); |
} else { |
} |
last if($c->aborted()); |
if($downloadTime eq 'Not downloaded') { |
next; |
my $courseData = |
|
&Apache::loncoursedata::DownloadCourseInformation($_, |
|
$courseID); |
|
if(tie(%cache,'GDBM_File',$cacheDB,&GDBM_WRCREAT(),0640)) { |
|
&Apache::loncoursedata::ProcessStudentData(\%cache, |
|
$courseData, $_); |
|
untie(%cache); |
|
} else { |
|
next; |
|
} |
} |
} |
} |
} |
|
|
unless(tie(%cache,'GDBM_File',$cacheDB,&GDBM_READER,0640)) { |
unless(tie(%cache,'GDBM_File',$cacheDB,&GDBM_READER(),0640)) { |
$Str .= '<html><body>Unable to tie database.</body></html>'; |
$Str .= '<html><body>Unable to tie database.</body></html>'; |
return $Str; |
return $Str; |
} |
} |
Line 108 sub BuildAnalyzePage {
|
Line 114 sub BuildAnalyzePage {
|
return $Str; |
return $Str; |
} |
} |
|
|
|
if($c->aborted()) { untie(%cache); return $Str; } |
|
|
#compute the intervals |
#compute the intervals |
&Interval($part, $problem, $interval, $analyzeData->{'concepts'}, |
&Interval($part, $problem, $interval, $analyzeData->{'concepts'}, |
\%ConceptData); |
\%ConceptData); |
|
|
$title =~ s/\ /"_"/eg; |
$title =~ s/\ /"_"/eg; |
$Str .= '<br><b>'.$uri.'</b>'; |
$Str .= '<br><b>'.$uri.'</b>'; |
|
|
|
if($c->aborted()) { untie(%cache); return $Str; } |
|
|
#Java script Progress window |
#Java script Progress window |
# &Create_PrgWin(); |
# &Create_PrgWin(); |
# &Update_PrgWin("Starting-to-analyze-problem"); |
# &Update_PrgWin("Starting-to-analyze-problem"); |
for(my $index=0; $index<(scalar @$students); $index++) { |
for(my $index=0; $index<(scalar @$students); $index++) { |
|
if($c->aborted()) { untie(%cache); return $Str; } |
# &Update_PrgWin($index); |
# &Update_PrgWin($index); |
# &OpStatus($problem, $students->[$index], $courseID, \%ConceptData, |
# &OpStatus($problem, $students->[$index], $courseID, \%ConceptData, |
# $analyzeData->{'foil_to_concept'}, $analyzeData, \%cache); |
# $analyzeData->{'foil_to_concept'}, $analyzeData, \%cache); |
Line 129 sub BuildAnalyzePage {
|
Line 140 sub BuildAnalyzePage {
|
|
|
$Str .= '<br>'; |
$Str .= '<br>'; |
for (my $k=0; $k<$interval; $k++ ) { |
for (my $k=0; $k<$interval; $k++ ) { |
|
if($c->aborted()) { untie(%cache); return $Str; } |
$Str .= &DrawGraph($k, $title, $analyzeData->{'concepts'}, |
$Str .= &DrawGraph($k, $title, $analyzeData->{'concepts'}, |
\%ConceptData); |
\%ConceptData); |
} |
} |
for (my $k=0; $k<$interval; $k++ ) { |
for (my $k=0; $k<$interval; $k++ ) { |
|
if($c->aborted()) { untie(%cache); return $Str; } |
$Str .= &DrawTable($k, $analyzeData->{'concepts'}, \%ConceptData); |
$Str .= &DrawTable($k, $analyzeData->{'concepts'}, \%ConceptData); |
} |
} |
my $Answ=&Apache::lonnet::ssi($uri); |
my $Answ=&Apache::lonnet::ssi($uri); |