--- loncom/xml/scripttag.pm 2004/09/28 20:40:05 1.117 +++ loncom/xml/scripttag.pm 2005/06/06 01:29:45 1.128 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Script Vars
"; + $result.= "');newWindow.document.close();newWindow.focus()} +// ]]> +Script Vars
"; } } elsif ($target eq "edit" ) { #&Apache::run::run($bodytext,$safeeval); @@ -162,7 +166,7 @@ sub end_script { sub start_display { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - + @Apache::scripttag::parser_env = @_; my $result; if ( $target eq "modified" ) { @@ -393,7 +397,8 @@ sub end_import { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; pop(@Apache::inputtags::import); my $result; - if ($target eq 'edit' ) { $result=&Apache::edit::end_table(); } + if ($target eq 'edit' ) { $result=&Apache::edit::end_row. + &Apache::edit::end_table(); } return $result; } @@ -436,7 +441,7 @@ sub start_standalone { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; my $result=''; if ($target eq 'web' ) { - if ( $ENV{'request.course.id'} ) { + if ( $env{'request.course.id'} ) { my $inside = &Apache::lonxml::get_all_text("/standalone",$parser); } else { $result='
'; @@ -449,7 +454,7 @@ sub end_standalone { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; my $result=''; if ($target eq 'web' ) { - if ( $ENV{'request.course.id'} ) { + if ( $env{'request.course.id'} ) { } else { $result='
'; } @@ -499,9 +504,77 @@ sub xmlparse { my $result=&Apache::lonxml::inner_xmlparse($target,$tagstack, $parstack,\@parser, $safeeval,$style); - &Apache::lonxml::debug("xmlparse recursion ending with $result"); + &Apache::lonxml::debug("target is $target xmlparse recursion ending with $result"); return $result; } +sub start_num { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; + my $result = ''; + my $inside = &Apache::lonxml::get_all_text_unbalanced("/num",$parser); + if ($target eq 'tex' || $target eq 'web') { + $inside=&Apache::run::evaluate($inside,$safeeval,$$parstack[-1]); + if (!$Apache::lonxml::default_homework_loaded) { + &Apache::lonxml::default_homework_load($safeeval); + } + @Apache::scripttag::parser_env = @_; + my $format=&Apache::lonxml::get_param('format',$parstack,$safeeval); + $result=&Apache::run::run("return &prettyprint(q\0$inside\0,q\0$format\0);",$safeeval); + } + return $result; +} + +sub end_num { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; + my $result = ''; + return $result; +} + +sub start_parse { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; + my $result = ''; + if ( $target eq 'web' || $target eq 'tex' || + $target eq 'grade' || $target eq 'answer' || + $target eq 'analyze') { + my $inside = &Apache::lonxml::get_all_text_unbalanced("/parse",$parser); + $inside=&Apache::run::evaluate($inside,$safeeval,$$parstack[-1]); + if (!$Apache::lonxml::default_homework_loaded) { + &Apache::lonxml::default_homework_load($safeeval); + } + @Apache::scripttag::parser_env = @_; + $result=&Apache::run::run("return &xmlparse(q\0$inside\0);",$safeeval); + } + return $result; +} + +sub end_parse { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; + my $result = ''; + return $result; +} + +sub start_algebra { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; + my $result = ''; + if ( $target eq 'web' || $target eq 'tex' || + $target eq 'grade' || $target eq 'answer' || + $target eq 'analyze') { + my $inside = &Apache::lonxml::get_all_text_unbalanced("/algebra",$parser); + $inside = &Apache::run::evaluate($inside,$safeeval,$$parstack[-1]); + if ($target eq 'web' || $target eq 'tex' || $target eq 'analyze') { + my $style=&Apache::lonxml::get_param('style',$parstack,$safeeval); + $result=&Apache::lontexconvert::algebra($inside,$target,$style); + } + $Apache::lonxml::post_evaluate=0; + } + return $result; +} + +sub end_algebra { + my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style) = @_; + my $result = ''; + return $result; +} + 1; __END__