--- loncom/homework/loncapagrade.pm 2008/11/10 13:43:43 1.5 +++ loncom/homework/loncapagrade.pm 2013/08/23 10:03:53 1.8 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # external style responses # -# $Id: loncapagrade.pm,v 1.5 2008/11/10 13:43:43 jms Exp $ +# $Id: loncapagrade.pm,v 1.8 2013/08/23 10:03:53 kruse Exp $ # # Copyright Michigan State University Board of Trustees # @@ -28,25 +28,6 @@ # 1/26 Guy -=pod - -=head1 NAME - -Apache::loncapagrade - -=head1 SYNOPSIS - -Handler to evaluate externally graded responses. - -This is part of the LearningOnline Network with CAPA project -described at http://www.lon-capa.org. - -=head2 notes - -results of parse end up in here: -undef(%Apache::loncapagrade::results); - -=cut package Apache::loncapagrade; use strict; @@ -66,7 +47,7 @@ sub start_loncapagrade { if ($target eq 'grade') { undef(%Apache::loncapagrade::results); &Apache::lonxml::register('Apache::loncapagrade', - ('awarddetail','message')); + ('awarddetail','message','awarded','handbackurl')); } return $result; } @@ -76,7 +57,7 @@ sub end_loncapagrade { my $result; if ($target eq 'grade') { &Apache::lonxml::deregister('Apache::loncapagrade', - ('loncapagrade','awarddetail','message')); + ('loncapagrade','awarddetail','message','awarded','handbackurl')); } return $result; } @@ -98,6 +79,40 @@ sub end_awarddetail { return $result; } +sub start_awarded { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; + my $result; + if ($target eq 'grade') { &Apache::lonxml::startredirection(); } + return $result; +} + +sub end_awarded { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; + my $result; + if ($target eq 'grade') { + $Apache::loncapagrade::results{'awarded'}= + &Apache::lonxml::endredirection(); + } + return $result; +} + +sub start_handbackurl { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; + my $result; + if ($target eq 'grade') { &Apache::lonxml::startredirection(); } + return $result; +} + +sub end_handbackurl { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; + my $result; + if ($target eq 'grade') { + $Apache::loncapagrade::results{'handbackurl'}= + &Apache::lonxml::endredirection(); + } + return $result; +} + sub start_message { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; my $result; @@ -118,3 +133,42 @@ sub end_message { 1; __END__ +=pod + +=head1 NAME + +Apache::loncapagrade + +=head1 SYNOPSIS + +Handler to evaluate externally graded responses. + +This is part of the LearningOnline Network with CAPA project +described at http://www.lon-capa.org. + +=head1 SUBROUTINES + +=over + +=item start_loncapagrade() + +=item end_loncapagrade() + +=item start_awarddetail() + +=item end_awarddetail() + +=item start_message() + +=item end_message() + +=back + +=head2 notes + +results of parse end up in here: +undef(%Apache::loncapagrade::results); + +=cut + +