[LON-CAPA-cvs] cvs: loncom /interface loncoursedata.pm
matthew
lon-capa-cvs@mail.lon-capa.org
Tue, 25 Feb 2003 15:55:15 -0000
matthew Tue Feb 25 10:55:15 2003 EDT
Modified files:
/loncom/interface loncoursedata.pm
Log:
Fixed bugs in &get_sequence_assessment_data() which caused it to report the
data for the first item in a sequence instead of the sequence itself.
Fixed related bug which caused it to not report an assessment which appeared
as the first item in a sequence.
Minor indention change.
Some POD additions/subtractions/mangling occured as well.
Index: loncom/interface/loncoursedata.pm
diff -u loncom/interface/loncoursedata.pm:1.49 loncom/interface/loncoursedata.pm:1.50
--- loncom/interface/loncoursedata.pm:1.49 Thu Feb 20 09:28:25 2003
+++ loncom/interface/loncoursedata.pm Tue Feb 25 10:55:15 2003
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# (Publication Handler
#
-# $Id: loncoursedata.pm,v 1.49 2003/02/20 14:28:25 matthew Exp $
+# $Id: loncoursedata.pm,v 1.50 2003/02/25 15:55:15 matthew Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -120,9 +120,10 @@
my ($courseDomain,$courseNumber)=split(/\_/,$courseID);
my %classlist;
- my $modifiedTime = &Apache::lonnet::GetFileTimestamp($courseDomain, $courseNumber,
+ my $modifiedTime = &Apache::lonnet::GetFileTimestamp($courseDomain,
+ $courseNumber,
'classlist.db',
- $Apache::lonnet::perlvar{'lonUsersDir'});
+ $Apache::lonnet::perlvar{'lonUsersDir'});
# Always download the information if lastDownloadTime is set to
# Not downloaded, otherwise it is only downloaded if the file
@@ -261,7 +262,8 @@
# ----- PROCESSING FUNCTIONS ---------------------------------------
-
+####################################################
+####################################################
=pod
@@ -278,22 +280,25 @@
symb => 'symb',
source => '/s/o/u/r/c/e',
type => (container|assessment),
+ num_assess => 2, # only for container
contents => [ {},{},{},{} ], # only for container
parts => [11,13,15], # only for assessment
- response_ids => [12,14,16] # only for assessment
+ response_ids => [12,14,16], # only for assessment
+ contents => [........] # only for container
}
-Also returned are array references to the symbs and assessments contained
-in the sequence.
-
$hash->{'contents'} is a reference to an array of hashes of the same structure.
+Also returned are array references to the sequences and assessments contained
+in the course.
+
+
=cut
+####################################################
+####################################################
sub get_sequence_assessment_data {
- return undef;
my $fn=$ENV{'request.course.fn'};
- &Apache::lonnet::logthis('filename = '.$fn);
##
## use navmaps
my $navmap = Apache::lonnavmaps::navmap->new($fn.".db",$fn."_parms.db",
@@ -328,15 +333,16 @@
#
# We need to keep track of which sequences contain homework problems
#
+ my $previous = $top;
while (scalar(@Nested_Sequences)) {
+ $previous = $curRes;
$curRes = $iterator->next();
my $currentmap = $Nested_Sequences[-1]; # Last one on the stack
if ($curRes == $iterator->BEGIN_MAP()) {
# get the map itself, instead of BEGIN_MAP
- $curRes = $iterator->next();
- $title = $curRes->title();
- $symb = $curRes->symb();
- $src = $curRes->src();
+ $title = $previous->title();#$curRes->title();
+ $symb = $previous->symb;#curRes->symb();
+ $src = $previous->src();#$curRes->src();
my $newmap = { title => $title,
src => $src,
symb => $symb,
@@ -354,7 +360,7 @@
next;
}
next if (! ref($curRes));
- next if (! $curRes->is_problem() && !$curRes->randomout);
+ next if (! $curRes->is_problem());# && !$curRes->randomout);
# Okay, from here on out we only deal with assessments
$title = $curRes->title();
$symb = $curRes->symb();
@@ -371,6 +377,9 @@
}
return ($top,\@Sequences,\@Assessments);
}
+
+#################################################
+#################################################
=pod