Diff for /loncom/xml/lonxml.pm between versions 1.353 and 1.354

version 1.353, 2005/01/28 21:08:45 version 1.354, 2005/01/30 12:56:45
Line 368  sub xmlparse { Line 368  sub xmlparse {
   
 sub htmlclean {  sub htmlclean {
     my ($raw,$full)=@_;      my ($raw,$full)=@_;
   # Take care of CRLF etc
   
     my $tree = HTML::TreeBuilder->new;      $raw=~s/\r\f/\n/gs; $raw=~s/\f\r/\n/gs;
     $tree->ignore_unknown(0);      $raw=~s/\r\n/\n/gs; $raw=~s/\n\r/\n/gs;
       $raw=~s/\f/\n/gs; $raw=~s/\r/\n/gs;
     $tree->parse($raw);      $raw=~s/\&\#10\;/\n/gs; $raw=~s/\&\#13\;/\n/gs;
   
     my $output= $tree->as_HTML(undef,' ');  # Generate empty tags, remove wrong end tags
       $raw=~s/\<(br|hr|img|meta|allow|basefont)([^\>\/]*?)\>/\<$1$2 \/\>/gis;
     $output=~s/\<(br|hr|img|meta|allow)(.*?)\>/\<$1$2 \/\>/gis;      $raw=~s/\<\/(br|hr|img|meta|allow|basefont)\>//gis;
     $output=~s/\<\/(br|hr|img|meta|allow)\>//gis;  
     unless ($full) {      unless ($full) {
        $output=~s/\<[\/]*(body|head|html)\>//gis;         $raw=~s/\<[\/]*(body|head|html)\>//gis;
     }      }
   # Make standard tags lowercase
     $tree = $tree->delete;      foreach ('html','body','head','meta','h1','h2','h3','h4','b','i','m',
                'table','tr','td','th','p','br','hr','img','embed','font',
     return $output;               'a','strong','center','title','basefont') {
    $raw=~s/\<$_\s*\>/\<$_\>/gis;
           $raw=~s/\<\/$_\s*\>/<\/$_\>/gis;
           $raw=~s/\<$_\s([^\>]*)\>/<$_ $1\>/gis;
       }
       return $raw;
 }  }
   
 sub latex_special_symbols {  sub latex_special_symbols {

Removed from v.1.353  
changed lines
  Added in v.1.354


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