version 1.243, 2008/08/01 18:09:38
|
version 1.245, 2008/08/14 13:39:02
|
Line 118 use Apache::File;
|
Line 118 use Apache::File;
|
use File::Copy; |
use File::Copy; |
use Apache::Constants qw(:common :http :methods); |
use Apache::Constants qw(:common :http :methods); |
use HTML::LCParser; |
use HTML::LCParser; |
|
use HTML::Entities; |
|
use Encode::Encoder; |
use Apache::lonxml; |
use Apache::lonxml; |
use Apache::loncacc; |
use Apache::loncacc; |
use DBI; |
use DBI; |
Line 1172 sub publish {
|
Line 1174 sub publish {
|
$textonly=~s/\<script[^\<]+\<\/script\>//g; |
$textonly=~s/\<script[^\<]+\<\/script\>//g; |
$textonly=~s/\<m\>[^\<]+\<\/m\>//g; |
$textonly=~s/\<m\>[^\<]+\<\/m\>//g; |
$textonly=~s/\<[^\>]*\>//g; |
$textonly=~s/\<[^\>]*\>//g; |
$textonly=~tr/A-Z/a-z/; |
|
$textonly=~s/[\$\&][a-z]\w*//g; |
|
$textonly=~s/[^a-z\s]//g; |
|
|
|
foreach ($textonly=~m/(\w+)/g) { |
|
unless ($nokey{$_}) { |
|
$keywords{$_}=1; |
|
} |
|
} |
|
} |
|
|
|
|
#this is a work simplification for german authors for present |
|
$textonly=HTML::Entities::decode($textonly); #decode HTML-character |
|
$textonly=Encode::Encoder::encode('utf8', $textonly); #encode to perl internal unicode |
|
$textonly=~tr/A-ZÜÄÖ/a-züäö/; #add lowercase rule for german "Umlaute" |
|
$textonly=~s/[\$\&][a-z]\w*//g; |
|
$textonly=~s/[^a-z^ü^ä^ö^ß\s]//g; #dont delete german "Umlaute" |
|
|
|
foreach ($textonly=~m/[^\s]+/g) { #match all but whitespaces |
|
unless ($nokey{$_}) { |
|
$keywords{$_}=1; |
|
} |
|
} |
|
|
|
|
|
} |
|
|
foreach my $addkey (split(/[\"\'\,\;]/,$metadatafields{'keywords'})) { |
foreach my $addkey (split(/[\"\'\,\;]/,$metadatafields{'keywords'})) { |
$addkey=~s/\s+/ /g; |
$addkey=~s/\s+/ /g; |
Line 1249 END
|
Line 1256 END
|
|
|
foreach (sort keys %keywords) { |
foreach (sort keys %keywords) { |
$colcount++; |
$colcount++; |
$keywordout.='<td><label>'.$colcount.'<input type="checkbox" name="keywords" value="'.$_.'"'; |
$keywordout.='<td><label><input type="checkbox" name="keywords" value="'.$_.'"'; |
if ($metadatafields{'keywords'}) { |
if ($metadatafields{'keywords'}) { |
if ($metadatafields{'keywords'}=~/\Q$_\E/) { |
if ($metadatafields{'keywords'}=~/\Q$_\E/) { |
$keywordout.=' checked="on"'; |
$keywordout.=' checked="on"'; |