--- loncom/interface/statistics/lonstathelpers.pm 2005/11/12 03:58:55 1.51 +++ loncom/interface/statistics/lonstathelpers.pm 2006/02/14 16:05:46 1.52 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonstathelpers.pm,v 1.51 2005/11/12 03:58:55 albertel Exp $ +# $Id: lonstathelpers.pm,v 1.52 2006/02/14 16:05:46 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -431,7 +431,7 @@ current resource. Inputs: $target (see &Apache::lonstathelpers::get_target_from_id()) $AcceptableResponseTypes, regular expression matching acceptable response types, - $granularity, either 'part', 'response', or 'part_survey' + $granularity, either 'part', 'response', 'part_survey', or 'part_task' Returns: three hash references, $prev, $curr, $next, which refer to the preceeding, current, or following problem parts or responses, depending @@ -467,6 +467,12 @@ sub get_prev_curr_next { part => $part, resource => $res, } ); + } elsif ($res->is_task($part) && ($granularity eq 'part_task')){ + push (@Resource, + { symb => $res->symb, + part => $part, + resource => $res, + } ); } elsif ($granularity eq 'part') { push (@Resource, { symb => $res->symb, @@ -499,7 +505,7 @@ sub get_prev_curr_next { my $curr_idx; for ($curr_idx=0;$curr_idx<$#Resource;$curr_idx++) { my $curr_item = $Resource[$curr_idx]; - if ($granularity eq 'part' || $granularity eq 'part_survey') { + if ($granularity =~ /^(part|part_survey|part_task)$/) { if ($curr_item->{'symb'} eq $target->{'symb'} && $curr_item->{'part'} eq $target->{'part'}) { last; @@ -514,7 +520,7 @@ sub get_prev_curr_next { } } my $curr_item = $Resource[$curr_idx]; - if ($granularity eq 'part' || $granularity eq 'part_survey') { + if ($granularity =~ /^(part|part_survey|part_task)$/) { if ($curr_item->{'symb'} ne $target->{'symb'} || $curr_item->{'part'} ne $target->{'part'}) { # bogus symb - return nothing