--- loncom/interface/lonhelper.pm 2003/04/11 18:16:04 1.8 +++ loncom/interface/lonhelper.pm 2003/04/11 19:07:48 1.10 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # .helper XML handler to implement the LON-CAPA helper # -# $Id: lonhelper.pm,v 1.8 2003/04/11 18:16:04 bowersj2 Exp $ +# $Id: lonhelper.pm,v 1.10 2003/04/11 19:07:48 bowersj2 Exp $ # # Copyright Michigan State University Board of Trustees # @@ -283,6 +283,10 @@ sub new { $self->{STATES} = {}; $self->{DONE} = 0; + # Used by various helpers for various things; see lonparm.helper + # for an example. + $self->{DATA} = {}; + bless($self, $class); return $self; } @@ -676,7 +680,7 @@ use strict; BEGIN { &Apache::lonhelper::register('Apache::lonhelper::message', - ('message', 'message_text')); + ('message')); } sub new { @@ -686,31 +690,30 @@ sub new { # CONSTRUCTION: Construct the message element from the XML sub start_message { - return ''; -} - -sub end_message { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; if ($target ne 'helper') { return ''; } - Apache::lonhelper::message->new(); + + $paramHash->{MESSAGE_TEXT} = &Apache::lonxml::get_all_text('/message', + $parser); + + if (defined($token->[2]{'nextstate'})) { + $paramHash->{NEXTSTATE} = $token->[2]{'nextstate'}; + } return ''; } -sub start_message_text { +sub end_message { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; if ($target ne 'helper') { return ''; } - - $paramHash->{MESSAGE_TEXT} = &Apache::lonxml::get_all_text('/message_text', - $parser); + Apache::lonhelper::message->new(); + return ''; } - -sub end_message_text { return 1; } sub render { my $self = shift;