--- loncom/xml/scripttag.pm 2000/11/14 22:24:38 1.23 +++ loncom/xml/scripttag.pm 2000/11/22 00:00:54 1.24 @@ -10,10 +10,9 @@ use Apache::lonnet; sub BEGIN { &Apache::lonxml::register('Apache::scripttag',('script','scriptlib', 'parserlib','import', - 'footnote')); + 'footnote','display')); } -$Apache::scripttag::SCRIPT_RESULT=''; sub start_script { my ($target,$token,$parstack,$parser,$safeeval)=@_; my $args =''; @@ -21,10 +20,9 @@ sub start_script { $args=$$parstack[$#$parstack]; } my $type = &Apache::run::run("{$args;".'return $type}',$safeeval); + my $result=''; #&Apache::lonxml::debug("found type of $type"); - $Apache::scripttag::SCRIPT_RESULT=''; if ($type eq "loncapa/perl") { - $safeeval->share('$SCRIPT_RESULT'); my $bodytext=&Apache::lonxml::get_all_text("/script",$$parser[$#$parser]); if ( $target eq "modified" ) { @@ -32,19 +30,42 @@ sub start_script { &Apache::run::run($bodytext,$safeeval); if ($target eq "edit" ) { - $Apache::scripttag::SCRIPT_RESULT = - "
<$token->[1]> output:
$bodytext
Source:
"; - $Apache::scripttag::SCRIPT_RESULT.=&editfield($token->[1],$bodytext); + $result="
<$token->[1]> output:
$bodytext
Source:
"; + $result.=&editfield($token->[1],$bodytext); } } else { - $Apache::scripttag::SCRIPT_RESULT = $token->[4]; + $result = $token->[4]; } - return $Apache::scripttag::SCRIPT_RESULT; + return $result; } sub end_script { my ($target,$token,$parstack,$parser,$safeeval)=@_; - return $token->[2]; + return ''; + #return $token->[2]; +} + +sub start_display { + my ($target,$token,$parstack,$parser,$safeeval)=@_; + my $args =''; + if ( $#$parstack > -1 ) { + $args=$$parstack[$#$parstack]; + } + my $bodytext=&Apache::lonxml::get_all_text("/display",$$parser[$#$parser]); + + if ( $target eq "modified" ) { + } + my $result=&Apache::run::run($bodytext,$safeeval); + + if ($target eq "edit" ) { + $result = + "
<$token->[1]> output:
$bodytext
Source:
"; + $result.=&editfield($token->[1],$bodytext); + } + return $result; +} + +sub end_display { } sub start_scriptlib {