Diff for /loncom/publisher/lonpublisher.pm between versions 1.41 and 1.47

version 1.41, 2001/08/17 21:25:36 version 1.47, 2001/10/08 19:00:50
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 Gerd Kortemeyer  # 06/23,08/07,08/11,8/13,8/17,8/18,8/24,9/26 Gerd Kortemeyer
   # 10/3,10/8 Scott Harrison
   
 package Apache::lonpublisher;  package Apache::lonpublisher;
   
Line 154  sub urlfixup { Line 155  sub urlfixup {
 }  }
   
 sub publish {  sub publish {
   
     my ($source,$target,$style)=@_;      my ($source,$target,$style)=@_;
     my $logfile;      my $logfile;
     my $scrout='';      my $scrout='';
Line 259  sub publish { Line 259  sub publish {
   }    }
                           $allow{$newurl}=1;                            $allow{$newurl}=1;
                       }                        }
                   } ('src','href');                    } ('src','href','background');
   
                   if ($tag eq 'applet') {                    if ($tag eq 'applet') {
       my $codebase='';        my $codebase='';
Line 317  sub publish { Line 317  sub publish {
           }            }
 # ------------------------------------------------------------ Construct Allows  # ------------------------------------------------------------ Construct Allows
      unless ($style eq 'rat') {       unless ($style eq 'rat') {
    $scrout.='<h3>Dependencies</h3>';
  my $allowstr="\n";   my $allowstr="\n";
         map {          map {
            $allowstr.='<allow src="'.$_.'" />'."\n";             $allowstr.='<allow src="'.$_.'" />'."\n";
              $scrout.='<br>';
              unless ($_=~/\*/) {
          $scrout.='<a href="'.$_.'">';
              }
              $scrout.='<tt>'.$_.'</tt>';
              unless ($_=~/\*/) {
          $scrout.='</a>';
              }
         } keys %allow;          } keys %allow;
         $outstring=~s/(\<\/[^\>]+\>\s*)$/$allowstr$1/s;          $outstring=~s/(\<\/[^\>]+\>\s*)$/$allowstr$1/s;
     }      }
Line 352  sub publish { Line 361  sub publish {
      %metadatakeys=();       %metadatakeys=();
             
      my %oldparmstores=();       my %oldparmstores=();
        
        $scrout.='<h3>Metadata Information</h3>';
   
 # ------------------------------------------------ First, check out environment  # ------------------------------------------------ First, check out environment
      unless (-e $source.'.meta') {       unless (-e $source.'.meta') {
Line 402  sub publish { Line 413  sub publish {
   
 # -------------------------------------------------- Parse content for metadata  # -------------------------------------------------- Parse content for metadata
     if ($style eq 'ssi') {      if ($style eq 'ssi') {
           my $oldenv=$ENV{'request.uri'};
   
           $ENV{'request.uri'}=$target;
         $allmeta=Apache::lonxml::xmlparse('meta',$content);          $allmeta=Apache::lonxml::xmlparse('meta',$content);
           $ENV{'request.uri'}=$oldenv;
   
         &metaeval($allmeta);          &metaeval($allmeta);
     }      }
Line 465  sub publish { Line 480  sub publish {
             $textonly=~s/[^a-z\s]//g;              $textonly=~s/[^a-z\s]//g;
   
             my %keywords=();              my %keywords=();
             map {              my $j=0;
  unless ($nokey{$_}) {              my $word;
                    $keywords{$_}=1;              for (my $i=0; $i<length($textonly); $i++) {
                 }    my $ch.=substr($textonly,$i,1);
             } ($textonly=~m/(\w+)/g);   if ($ch=~/\s/) {
       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 485  sub publish { Line 517  sub publish {
     $keywordout.="</tr><tr>\n";      $keywordout.="</tr><tr>\n";
                     $colcount=0;                      $colcount=0;
                 }                  }
                 $colcount++;   else {
       $colcount++;
    }
             } sort keys %keywords;              } sort keys %keywords;
             $keywordout.='</tr></table>';              $keywordout.='</tr></table>';
   
         }                   }         
           
  $scrout.=$keywordout;   $scrout.=$keywordout;
   
         $scrout.=&textfield('Additional Keywords','addkey','');          $scrout.=&textfield('Additional Keywords','addkey','');
Line 518  sub publish { Line 551  sub publish {
         
  $scrout.=&textfield('Publisher/Owner','owner',   $scrout.=&textfield('Publisher/Owner','owner',
                             $metadatafields{'owner'});                              $metadatafields{'owner'});
   # --------------------------------------------------- Correct copyright for rat        
       if ($style eq 'rat') {
          if ($metadatafields{'copyright'} eq 'public') { 
             delete $metadatafields{'copyright'};
          }
          delete $cprtag{'public'};
      }
   
         $scrout.=&selectbox('Copyright/Distribution','copyright',          $scrout.=&selectbox('Copyright/Distribution','copyright',
                             $metadatafields{'copyright'},%cprtag);                              $metadatafields{'copyright'},%cprtag);
Line 833  sub handler { Line 873  sub handler {
      return OK;       return OK;
   }    }
   
   # Get query string for limited number of parameters
   
       map {
          my ($name, $value) = split(/=/,$_);
          $value =~ tr/+/ /;
          $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
          if ($name eq 'filename') {
              unless ($ENV{'form.'.$name}) {
                 $ENV{'form.'.$name}=$value;
      }
          }
       } (split(/&/,$ENV{'QUERY_STRING'}));
   
   
 # -------------------------------------------------------------- Check filename  # -------------------------------------------------------------- Check filename
   
   my $fn=$ENV{'form.filename'};    my $fn=$ENV{'form.filename'};
Line 864  sub handler { Line 918  sub handler {
      return HTTP_NOT_ACCEPTABLE;       return HTTP_NOT_ACCEPTABLE;
   }    }
   
   $fn=~s/^http\:\/\/[^\/]+\/\~(\w+)/\/home\/$1\/public_html/;    $fn=~s/^http\:\/\/[^\/]+//;
     $fn=~s/^\/\~(\w+)/\/home\/$1\/public_html/;
   
   my $targetdir='';    my $targetdir='';
   $docroot=$r->dir_config('lonDocRoot');     $docroot=$r->dir_config('lonDocRoot'); 

Removed from v.1.41  
changed lines
  Added in v.1.47


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>
500 Internal Server Error

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at root@localhost to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.