Diff for /loncom/xml/londefdef.pm between versions 1.9 and 1.16

version 1.9, 2000/11/06 14:29:53 version 1.16, 2001/01/12 20:38:05
Line 2 Line 2
 # Tags Default Definition Module   # Tags Default Definition Module 
 #  #
 # last modified 06/26/00 by Alexander Sakharuk  # last modified 06/26/00 by Alexander Sakharuk
   # 11/6,11/30 Gerd Kortemeyer
   
 package Apache::londefdef;   package Apache::londefdef; 
   
Line 9  use strict; Line 10  use strict;
 use Apache::lonxml;  use Apache::lonxml;
   
 sub BEGIN {  sub BEGIN {
     &Apache::lonxml::register('Apache::londefdef',('m','html','head','map','applet','select','option','input','textarea','form','meta','title','body','center','b','strong','table','dt','h1','h2','h3','h4','h5','h6','cite','i','address','dd','dl','dir','ol','ul','menu','dfn','kbd','tt','code','em','q','p','br','big','small','basefont','font','s','sub','strike','sup','hr','a','li','u','output'));  
       &Apache::lonxml::register('Apache::londefdef',('m','html','head','map','applet','select','option','input','textarea','form','meta','title','body','center','b','strong','table','dt','h1','h2','h3','h4','h5','h6','cite','i','address','dd','dl','dir','ol','ul','menu','dfn','kbd','tt','code','em','q','p','br','big','small','basefont','font','s','sub','strike','sup','hr','a','li','u','output','param','applet','img','embed','tr','td'));
   
 }  }
   
 #===================================================================== TAG SUBROUTINES  #===================================================================== TAG SUBROUTINES
 #-- <output>  #-- <output>
         sub start_output {          sub start_output {
      my ($target,$token,$parstack,$parser) = @_;       my ($target,$token) = @_;
             $Apache::lonxml::textredirection = 1;               $Apache::lonxml::textredirection = 1; 
             my $result = '';              my $result = '';
             return $result;              return $result;
  }   }
         sub end_output {          sub end_output {
      my ($target,$token,$parstack,$parser) = @_;       my ($target,$token) = @_;
             $Apache::lonxml::textredirection = 0;                           $Apache::lonxml::textredirection = 0;             
             my $result = '';              my $result = '';
             return $result;              return $result;
Line 212  sub BEGIN { Line 215  sub BEGIN {
             if ($target eq 'web') {              if ($target eq 'web') {
               $currentstring = $token->[4];                     $currentstring = $token->[4];     
     }      }
               if ($target eq 'meta') {
    $currentstring='<title>';
                   &start_output();
               }
    return $currentstring;     return $currentstring;
  }   }
         sub end_title {          sub end_title {
Line 219  sub BEGIN { Line 226  sub BEGIN {
             my $currentstring = '';              my $currentstring = '';
             if ($target eq 'web') {              if ($target eq 'web') {
               $currentstring = $token->[2];                    $currentstring = $token->[2];    
               }
               if ($target eq 'meta') {
                  &end_output();
                  $currentstring='</title>';
             }               } 
    return $currentstring;     return $currentstring;
  }   }
Line 226  sub BEGIN { Line 237  sub BEGIN {
       sub start_meta {        sub start_meta {
     my ($target,$token) = @_;      my ($target,$token) = @_;
             my $currentstring = '';              my $currentstring = '';
       &Apache::lonxml::debug("In meta");
             if ($target eq 'web') {              if ($target eq 'web') {
         &Apache::lonxml::debug("In meta2");
               $currentstring = $token->[4];                     $currentstring = $token->[4];     
     }      }
               if ($target eq 'meta') {
         &Apache::lonxml::debug("In meta3");
    unless ($token->[2]->{'http-equiv'}) {
       my $name=$token->[2]->{'name'};
                       $name=~tr/A-Z/a-z/;
                       $name=~s/\s/\_/g;
                       if ($name) {
                          $currentstring='<'.$name.'>'.
                                            $token->[2]->{'content'}.
                 '</'.$name.'>';
       }
                   }
       }
       &Apache::lonxml::debug("send back $currentstring");
    return $currentstring;     return $currentstring;
  }   }
         sub end_meta {          sub end_meta {
Line 332  sub BEGIN { Line 359  sub BEGIN {
        $currentstring .= $token->[4];         $currentstring .= $token->[4];
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
  $currentstring .= "\\chapter{ ";   $currentstring .= "\\chapter{ ";
     }       } elsif ($target eq 'meta') {
    $currentstring='<subject>';
                   &start_output();
               }
            return $currentstring;             return $currentstring;
  }   }
         sub end_h1 {          sub end_h1 {
Line 342  sub BEGIN { Line 372  sub BEGIN {
        $currentstring .= $token->[2];         $currentstring .= $token->[2];
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
  $currentstring .= "}";   $currentstring .= "}";
     }       } elsif ($target eq 'meta') {
                   &end_output();
    $currentstring='</subject>';
               } 
            return $currentstring;             return $currentstring;
  }   }
 #---------------------------------------------------------------------------- <h2> tag  #---------------------------------------------------------------------------- <h2> tag
Line 604  sub BEGIN { Line 637  sub BEGIN {
             if ($target eq 'web') {              if ($target eq 'web') {
        $currentstring .= $token->[4];         $currentstring .= $token->[4];
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
  $currentstring .= "{ \\emph ";   $currentstring .= "\\emph{";
     }       } 
            return $currentstring;             return $currentstring;
  }   }
Line 723  sub BEGIN { Line 756  sub BEGIN {
  }   }
 #---------------------------------------------------------------------- <basefont> tag  #---------------------------------------------------------------------- <basefont> tag
       sub start_basefont {        sub start_basefont {
     my ($target,$token) = @_;   my ($target,$token) = @_;
             my $currentstring = '';   my $currentstring = '';
             if ($target eq 'web') {   if ($target eq 'web') {
               $currentstring = $token->[4];         $currentstring = $token->[4];     
     }    } 
    return $currentstring;   return $currentstring;
  }        }
         sub end_basefont {
    my ($target,$token) = @_;
    my $currentstring = '';
    if ($target eq 'web') {
     $currentstring = $token->[4];     
    } 
    return $currentstring;
         }
 #-------------------------------------------------------------------------- <font> tag  #-------------------------------------------------------------------------- <font> tag
          sub start_font {           sub start_font {
     my ($target,$token) = @_;      my ($target,$token) = @_;
Line 870  sub BEGIN { Line 911  sub BEGIN {
                 my  $tempor_var = $stackref->[$#$stackref];                  my  $tempor_var = $stackref->[$#$stackref];
  if (index($tempor_var,'name') != -1 ) {   if (index($tempor_var,'name') != -1 ) {
     $tempor_var =~ s/name=([^,]*),/$1/g;      $tempor_var =~ s/name=([^,]*),/$1/g;
         $currentstring .= " \\label{$tempor_var}";  #        $currentstring .= " \\label{$tempor_var}";
         } elsif (index($tempor_var,'href') != -1 ) {          } elsif (index($tempor_var,'href') != -1 ) {
     $tempor_var =~ s/href=([^,]*),/$1/g;      $tempor_var =~ s/href=([^,]*),/$1/g;
         $currentstring .= " \\ref{$tempor_var}";          $currentstring .= " \\ref{$tempor_var}";
Line 885  sub BEGIN { Line 926  sub BEGIN {
             if ($target eq 'web') {              if ($target eq 'web') {
               $currentstring = $token->[4];                     $currentstring = $token->[4];     
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
                 my  $tempor_var = $stackref->[$#$stackref-1];                  my  $tempor_var = $stackref->[$#$stackref];
                 if (index($tempor_var,'circle') != -1 ) {                  if (index($tempor_var,'circle') != -1 ) {
           $currentstring .= " \\item[o] ";            $currentstring .= " \\item[o] ";
         } elsif (index($tempor_var,'square') != -1 ) {          } elsif (index($tempor_var,'square') != -1 ) {
                $currentstring .= " \\item[$\Box$] ";                 $currentstring .= " \\item[$\Box$] ";
         } else {          } elsif ($tempor_var ne '') { 
          $_ = $tempor_var;
                          m/my\s*([^=]*)=/;
          $currentstring .= " \\item[$1] ";
    } else {
     $currentstring .= " \\item ";      $currentstring .= " \\item ";
         }            }  
     }       } 
Line 1075  sub BEGIN { Line 1120  sub BEGIN {
             if ($target eq 'web') {              if ($target eq 'web') {
               $currentstring = $token->[4];                     $currentstring = $token->[4];     
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
               $currentstring = " \\begin{tabular} ";                  $currentstring = "";  
     }       } 
    return $currentstring;     return $currentstring;
  }   }
Line 1085  sub BEGIN { Line 1130  sub BEGIN {
             if ($target eq 'web') {              if ($target eq 'web') {
               $currentstring = $token->[2];                     $currentstring = $token->[2];     
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
               $currentstring = " \\end{tabular}";                  $currentstring = "";  
       } 
      return $currentstring;
    }
   #------------------------------------------------------------------------- <tr> tag
           sub start_tr {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[4];     
       } elsif ($target eq 'tex') {
         $currentstring = '';
       } 
      return $currentstring;
    }
           sub end_tr {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[2];     
       } elsif ($target eq 'tex') {
                 $currentstring = "";  
       } 
      return $currentstring;
    }
   #------------------------------------------------------------------------- <td> tag
           sub start_td {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[4];     
       } elsif ($target eq 'tex') {
         $currentstring = '';
       } 
      return $currentstring;
    }
           sub end_td {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[2];     
       } elsif ($target eq 'tex') {
                 $currentstring = "";  
       } 
      return $currentstring;
    }
   # -------------------------------------------------------------------------- <img> tag
   
           sub start_img {
       my ($target,$token) = @_;
               $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=   
                                           $token->[2]->{'src'};
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[4];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\begin{figure} ";  
       } 
      return $currentstring;
    }
           sub end_img {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[2];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\end{figure}";  
       } 
      return $currentstring;
    }
   # ----------------------------------------------------------------------- <applet> tag
   
           sub start_applet {
       my ($target,$token) = @_;
                 $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=   
                                           $token->[2]->{'code'};
                 $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=   
                                           $token->[2]->{'archive'};
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[4];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\begin{figure} ";  
       } 
      return $currentstring;
    }
           sub end_applet {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[2];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\end{figure}";  
       } 
      return $currentstring;
    }
   
   # ------------------------------------------------------------------------ <embed> tag
   
           sub start_embed {
       my ($target,$token) = @_;
               $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=   
                                           $token->[2]->{'src'};
              my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[4];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\begin{figure} ";  
       } 
      return $currentstring;
    }
           sub end_embed {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[2];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\end{figure}";  
       } 
      return $currentstring;
    }
   
   # ------------------------------------------------------------------------ <param> tag
   
           sub start_param {
       my ($target,$token) = @_;
       if ($token->[2]->{'name'} eq 'cabbase') {
                         $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=
        $token->[2]->{'value'};
               }   
               $Apache::lonxml::extlinks[$Apache::lonxml::extlinks+1]=   
                                           $token->[2]->{'src'};
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[4];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\begin{figure} ";  
     }       } 
    return $currentstring;     return $currentstring;
  }   }
           sub end_param {
       my ($target,$token) = @_;
               my $currentstring = '';
               if ($target eq 'web') {
                 $currentstring = $token->[2];     
       } elsif ($target eq 'tex') {
                 $currentstring = " \\end{figure}";  
       } 
      return $currentstring;
    }
   
   # ------------------------------------------------------------------------ <allow> tag
   
           sub start_allow {
       my ($target,$token) = @_;
   
               $Apache::lonxml::extlinks[$Apache::lonxml::extlinks+1]=   
                                           $token->[2]->{'src'};
   
      return '';
    }
           sub end_allow {
      return '';
    }
   
   
 1;  1;
 __END__  __END__

Removed from v.1.9  
changed lines
  Added in v.1.16


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