Diff for /loncom/xml/lonxml.pm between versions 1.219 and 1.221.2.3

version 1.219, 2002/12/06 19:29:02 version 1.221.2.3, 2003/03/19 21:57:59
Line 352  sub printtokenheader { Line 352  sub printtokenheader {
     if ($target eq 'web') {      if ($target eq 'web') {
         my %idhash=&Apache::lonnet::idrget($tudom,($tuname));          my %idhash=&Apache::lonnet::idrget($tudom,($tuname));
  return    return 
  '<img align="right" src="/cgi-bin/barcode.gif?encode='.$token.'" />'.   '<img align="right" src="/cgi-bin/barcode.png?encode='.$token.'" />'.
                'Checked out for '.$plainname.                 'Checked out for '.$plainname.
                '<br />User: '.$tuname.' at '.$tudom.                 '<br />User: '.$tuname.' at '.$tudom.
        '<br />ID: '.$idhash{$tuname}.         '<br />ID: '.$idhash{$tuname}.
Line 693  sub inner_xmlparse { Line 693  sub inner_xmlparse {
  if ($metamode<1) {   if ($metamode<1) {
     my $text=$token->[1];      my $text=$token->[1];
     if ($token->[0] eq 'C' && $target eq 'tex') {      if ($token->[0] eq 'C' && $target eq 'tex') {
  $text = '%'.$text."\n";   $text = '';
   # $text = '%'.$text."\n";
     }      }
     $result.=$text;      $result.=$text;
  }   }
Line 771  sub inner_xmlparse { Line 772  sub inner_xmlparse {
       if ($token->[0] eq 'E') {         if ($token->[0] eq 'E') { 
  &end_tag($stack,$parstack,$token);   &end_tag($stack,$parstack,$token);
       }        }
     }      }
     if ($#$pars > -1) {      if ($#$pars > -1) {
  pop @$pars;   pop @$pars;
  pop @Apache::lonxml::pwd;   pop @Apache::lonxml::pwd;
Line 813  sub callsub { Line 814  sub callsub {
     }      }
     if (!$deleted) {      if (!$deleted) {
       if ($space) {        if ($space) {
  &Apache::lonxml::debug("Calling sub $sub in $space $metamode");   #&Apache::lonxml::debug("Calling sub $sub in $space $metamode");
  $sub1="$space\:\:$sub";   $sub1="$space\:\:$sub";
  ($currentstring,$nodefault) = &$sub1($target,$token,$tagstack,   ($currentstring,$nodefault) = &$sub1($target,$token,$tagstack,
      $parstack,$parser,$safeeval,       $parstack,$parser,$safeeval,
      $style);       $style);
       } else {        } else {
  &Apache::lonxml::debug("NOT Calling sub $sub in $space $metamode");   #&Apache::lonxml::debug("NOT Calling sub $sub in $space $metamode");
  if ($metamode <1) {   if ($metamode <1) {
   if (defined($token->[4]) && ($metamode < 1)) {    if (defined($token->[4]) && ($metamode < 1)) {
     $currentstring = $token->[4];      $currentstring = $token->[4];
Line 831  sub callsub { Line 832  sub callsub {
       #    &Apache::lonxml::debug("nodefalt:$nodefault:");        #    &Apache::lonxml::debug("nodefalt:$nodefault:");
       if ($currentstring eq '' && $nodefault eq '') {        if ($currentstring eq '' && $nodefault eq '') {
  if ($target eq 'edit') {   if ($target eq 'edit') {
   &Apache::lonxml::debug("doing default edit for $token->[1]");    #&Apache::lonxml::debug("doing default edit for $token->[1]");
   if ($token->[0] eq 'S') {    if ($token->[0] eq 'S') {
     $currentstring = &Apache::edit::tag_start($target,$token);      $currentstring = &Apache::edit::tag_start($target,$token);
   } elsif ($token->[0] eq 'E') {    } elsif ($token->[0] eq 'E') {
Line 1113  sub store_counter { Line 1114  sub store_counter {
 sub get_all_text {  sub get_all_text {
  my($tag,$pars)= @_;   my($tag,$pars)= @_;
  &Apache::lonxml::debug("Got a ".ref($pars));   &Apache::lonxml::debug("Got a ".ref($pars));
    my $gotfullstack=1;
  if (ref($pars) ne 'ARRAY') {   if (ref($pars) ne 'ARRAY') {
        $gotfullstack=0;
      $pars=[$pars];       $pars=[$pars];
  }   }
  my $depth=0;   my $depth=0;
Line 1122  sub get_all_text { Line 1125  sub get_all_text {
  if ( $tag =~ m:^/: ) {    if ( $tag =~ m:^/: ) { 
    my $tag=substr($tag,1);      my $tag=substr($tag,1); 
    #&Apache::lonxml::debug("have:$tag:");     #&Apache::lonxml::debug("have:$tag:");
    while (($depth >=0) && ($#$pars > -1)) {     my $top_empty=0;
      while (($depth >=0) && ($#$pars > -1) && (!$top_empty)) {
      while (($depth >=0) && ($token = $$pars[-1]->get_token)) {       while (($depth >=0) && ($token = $$pars[-1]->get_token)) {
        #&Apache::lonxml::debug("e token:$token->[0]:$depth:$token->[1]:".$#$pars.":".$#Apache::lonxml::pwd);         #&Apache::lonxml::debug("e token:$token->[0]:$depth:$token->[1]:".$#$pars.":".$#Apache::lonxml::pwd);
        if (($token->[0] eq 'T')||($token->[0] eq 'C')||($token->[0] eq 'D')) {         if (($token->[0] eq 'T')||($token->[0] eq 'C')||($token->[0] eq 'D')) {
Line 1144  sub get_all_text { Line 1148  sub get_all_text {
        pop(@$pars);         pop(@$pars);
        pop(@Apache::lonxml::pwd);         pop(@Apache::lonxml::pwd);
      }       }
        if (($depth >=0) && ($#$pars == 0) ) {        &debug("here4");$top_empty=1; }
      }
      if ($top_empty && $depth >= 0) {
          #never found the end tag ran out of text, throw error send back blank
          &error('Never found end tag for &lt;'.$tag.'&gt;');
          if ($gotfullstack) {
      my $newstring='</'.$tag.'>'.$result;
      &Apache::lonxml::newparser($pars,\$newstring);
          }
          $result='';
    }     }
  } else {   } else {
      while ($#$pars > -1) {       while ($#$pars > -1) {

Removed from v.1.219  
changed lines
  Added in v.1.221.2.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>