--- loncom/homework/randomlabel.pm 2002/10/14 20:37:27 1.37 +++ loncom/homework/randomlabel.pm 2002/11/07 19:48:51 1.39 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # random labelling tool # -# $Id: randomlabel.pm,v 1.37 2002/10/14 20:37:27 albertel Exp $ +# $Id: randomlabel.pm,v 1.39 2002/11/07 19:48:51 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -61,6 +61,7 @@ use Apache::lonnet; use strict; use Apache::edit; use Apache::File(); +use Apache::Constants qw(:common :http); BEGIN { &Apache::lonxml::register('Apache::randomlabel',('randomlabel','labelgroup','location','label')); @@ -81,6 +82,7 @@ sub check_int { sub start_randomlabel { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; my $result=''; + &Apache::lonxml::startredirection(); push (@Apache::lonxml::extlinks, '/res/adm/includes/GLabel.class'); push (@Apache::lonxml::namespace,'randomlabel'); my $bgimg= &Apache::lonxml::get_param('bgimg',$parstack,$safeeval); @@ -92,7 +94,7 @@ sub start_randomlabel { } elsif ($bgimg =~ m:^/home/.*/public_html:) { $bgimg =~ s:^/home/(.*)/public_html:/~$1:; } - $bgimg='http://'.$ENV{'SERVER_NAME'}.$bgimg; +# $bgimg='http://'.$ENV{'SERVER_NAME'}.$bgimg; } my $code = &Apache::lonxml::get_param('code',$parstack,$safeeval); my $codebase = &Apache::lonxml::get_param('codebase',$parstack,$safeeval); @@ -104,8 +106,8 @@ sub start_randomlabel { $Apache::randomlabel::tlabel_cnt=0; $Apache::randomlabel::ilabel_cnt=0; if ($target eq 'web') { - $result.="\n"; - $result.="\n"; + $result.='\n"; } + if( $count != 0) { $result.= "&COUNT=$count"; } $count = $Apache::randomlabel::ilabel_cnt; - if( $count != 0) { $result.= "\n"; } - $result .= "\n
"; + if( $count != 0) { $result.= "&ICOUNT=$count"; } + $result.='" />
'."\n"; } elsif ($target eq 'tex') { - $result='\end{picture}\\\\}'; + $result='\end{picture}\\\\'; @$parstack[-1]=~/\$height\s*=\s*?"(.+)?"/; my $one=$1; @$parstack[-1]=~/\$width\s*=\s*?"(.+)?"/; @@ -187,7 +191,7 @@ sub end_randomlabel { @$parstack[-1]=~/\$texwidth\s*=\s*?"(.+)?"/; my $three=$1; my $howtoskipback = $three*$one/$two; - $result.=' \vskip -'.$howtoskipback.' mm '; + $result.=' \vskip -'.$howtoskipback.' mm }'; } elsif ($target eq 'edit') { $result.=&Apache::edit::end_table; } @@ -279,9 +283,9 @@ sub end_labelgroup { &Apache::lonxml::error('Unknown type of label :'.$type.':'); } if ($target eq 'web') { - $result .= ''; - $result .= ''; - $result .= ''."\n"; + $result .= '&'. $str .'='.$label; + $result .= '&'. $xstr .'='.$x; + $result .= '&'. $ystr .'='.$y; } } } elsif ($target eq 'tex') {