Diff for /loncom/publisher/lonpublisher.pm between versions 1.49 and 1.53

version 1.49, 2001/10/16 18:46:10 version 1.53, 2001/12/04 15:32:57
Line 11 Line 11
 # 04/16/2001 Scott Harrison  # 04/16/2001 Scott Harrison
 # 05/03,05/05,05/07 Gerd Kortemeyer  # 05/03,05/05,05/07 Gerd Kortemeyer
 # 05/28/2001 Scott Harrison  # 05/28/2001 Scott Harrison
 # 06/23,08/07,08/11,8/13,8/17,8/18,8/24,9/26 Gerd Kortemeyer  # 06/23,08/07,08/11,8/13,8/17,8/18,8/24,9/26,10/16 Gerd Kortemeyer
 # 10/3,10/8 Scott Harrison  
   
 package Apache::lonpublisher;  package Apache::lonpublisher;
   
Line 155  sub urlfixup { Line 154  sub urlfixup {
 }  }
   
 sub publish {  sub publish {
   
     my ($source,$target,$style)=@_;      my ($source,$target,$style)=@_;
     my $logfile;      my $logfile;
     my $scrout='';      my $scrout='';
Line 225  sub publish { Line 225  sub publish {
       }        }
           my $outstring='';            my $outstring='';
           my $parser=HTML::TokeParser->new(\$content);            my $parser=HTML::TokeParser->new(\$content);
             $parser->xml_mode(1);
           my $token;            my $token;
           while ($token=$parser->get_token) {            while ($token=$parser->get_token) {
               if ($token->[0] eq 'S') {                if ($token->[0] eq 'S') {
                 my $counter;                  my $counter;
                 my $tag=$token->[1];                  my $tag=$token->[1];
                 unless ($tag eq 'allow') {                    my $lctag=$tag;$lctag=~/[A-Z]/[a-z]/g;
                   unless ($lctag eq 'allow') {  
                   my %parms=%{$token->[2]};                    my %parms=%{$token->[2]};
   if ($counter=$addid{$tag}) {                    $counter=$addid{$tag};
                     if (!$counter) { $counter=$addid{$lctag}; }
                     if ($counter) {
       if ($counter eq 'id') {        if ($counter eq 'id') {
   unless (defined($parms{'id'})) {    unless (defined($parms{'id'})) {
                               $maxid++;                                $maxid++;
Line 261  sub publish { Line 265  sub publish {
                       }                        }
                   } ('src','href','background');                    } ('src','href','background');
   
                   if ($tag eq 'applet') {                    if ($lctag eq 'applet') {
       my $codebase='';        my $codebase='';
                       if (defined($parms{'codebase'})) {                        if (defined($parms{'codebase'})) {
          my $oldcodebase=$parms{'codebase'};           my $oldcodebase=$parms{'codebase'};
Line 470  sub publish { Line 474  sub publish {
  my $keywordout='<p><b>Keywords:</b><br><table border=2><tr>';   my $keywordout='<p><b>Keywords:</b><br><table border=2><tr>';
         my $colcount=0;          my $colcount=0;
                   
  {   if (length($content)<500000) {
     my $textonly=$content;      my $textonly=$content;
             $textonly=~s/\<script[^\<]+\<\/script\>//g;              $textonly=~s/\<script[^\<]+\<\/script\>//g;
             $textonly=~s/\<m\>[^\<]+\<\/m\>//g;              $textonly=~s/\<m\>[^\<]+\<\/m\>//g;
Line 480  sub publish { Line 484  sub publish {
             $textonly=~s/[^a-z\s]//g;              $textonly=~s/[^a-z\s]//g;
   
             my %keywords=();              my %keywords=();
             my $j=0;              map {
             my $word;   unless ($nokey{$_}) {
             for (my $i=0; $i<length($textonly); $i++) {                     $keywords{$_}=1;
  my $ch.=substr($textonly,$i,1);                  } 
  if ($ch=~/\s/) {              } ($textonly=~m/(\w+)/g);
     if (length($word)) {  
  unless ($nokey{$word}) {  
     $keywords{$word}=1;  
  }  
     }  
     $word='';  
  }  
  else {  
     $word.=$ch;  
  }  
 # map {  
 #    unless ($nokey{$_}) {  
 # $keywords{$_}=1;  
 #    }   
 # } ($textonly=~m/(\w+)/g);  
     }  
   
     my $sizkeys=scalar(keys %keywords); # use this value at some point  
             map {              map {
  $keywords{$_}=1;   $keywords{$_}=1;
             } split(/\W+/,$metadatafields{'keywords'});              } split(/\W+/,$metadatafields{'keywords'});
Line 517  sub publish { Line 504  sub publish {
     $keywordout.="</tr><tr>\n";      $keywordout.="</tr><tr>\n";
                     $colcount=0;                      $colcount=0;
                 }                  }
  else {                  $colcount++;
     $colcount++;  
  }  
             } sort keys %keywords;              } sort keys %keywords;
             $keywordout.='</tr></table>';  
   
           } else {
       $keywordout.='<td>File too long for keyword analysis</td>';
         }                   }         
  $scrout.=$keywordout;          
    $keywordout.='</tr></table>';
   
           $scrout.=$keywordout;
   
         $scrout.=&textfield('Additional Keywords','addkey','');          $scrout.=&textfield('Additional Keywords','addkey','');
   

Removed from v.1.49  
changed lines
  Added in v.1.53


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