--- loncom/interface/lonnavmaps.pm 2002/11/15 17:30:33 1.107 +++ loncom/interface/lonnavmaps.pm 2002/11/15 19:32:09 1.109 @@ -2,7 +2,7 @@ # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.107 2002/11/15 17:30:33 bowersj2 Exp $ +# $Id: lonnavmaps.pm,v 1.109 2002/11/15 19:32:09 bowersj2 Exp $ # # Copyright Michigan State University Board of Trustees # @@ -526,7 +526,6 @@ sub handler { } $r->print(" ${newBranchText}${linkopen}$icon${linkclose}\n"); - #$r->print($curRes->awarded($part)); my $curMarkerBegin = ""; my $curMarkerEnd = ""; @@ -2005,10 +2004,7 @@ sub answerdate { } return $self->parmval("answerdate", $part); } -sub awarded { - (my $self, my $part) = @_; - return $self->parmval("awarded", $part); -} +sub awarded { my $self = shift; return $self->queryRestoreHash('awarded', shift); } sub duedate { (my $self, my $part) = @_; return $self->parmval("duedate", $part); @@ -2033,24 +2029,18 @@ sub tol { (my $self, my $part) = @_; return $self->parmval("tol", $part); } -sub tries { - my $self = shift; - my $part = shift; - $part = '0' if (!defined($part)); - - # Make sure return hash is loaded, should error check - $self->getReturnHash(); - - my $tries = $self->{RETURN_HASH}->{'resource.'.$part.'.tries'}; - if (!defined($tries)) {return '0';} +sub tries { + my $self = shift; + my $tries = $self->queryRestoreHash('tries', shift); + if (!defined($tries)) { return '0';} return $tries; } sub type { (my $self, my $part) = @_; return $self->parmval("type", $part); } -sub weight { - (my $self, my $part) = @_; +sub weight { + my $self = shift; my $part = shift; return $self->parmval("weight", $part); } @@ -2312,14 +2302,9 @@ sub ATTEMPTED { return 16; } sub getCompletionStatus { my $self = shift; - my $part = shift; - $part = "0" if (!defined($part)); return $self->NETWORK_FAILURE if ($self->{NAV_MAP}->{NETWORK_FAILURE}); - # Make sure return hash exists - $self->getReturnHash(); - - my $status = $self->{RETURN_HASH}->{'resource.'.$part.'.solved'}; + my $status = $self->queryRestoreHash('solved', shift); # Left as seperate if statements in case we ever do more with this if ($status eq 'correct_by_student') {return $self->CORRECT;} @@ -2331,6 +2316,18 @@ sub getCompletionStatus { return $self->NOT_ATTEMPTED; } +sub queryRestoreHash { + my $self = shift; + my $hashentry = shift; + my $part = shift; + $part = "0" if (!defined($part)); + return $self->NETWORK_FAILURE if ($self->{NAV_MAP}->{NETWORK_FAILURE}); + + $self->getReturnHash(); + + return $self->{RETURN_HASH}->{'resource.'.$part.'.'.$hashentry}; +} + =pod B