markup: cleanup comments
This commit is contained in:
@@ -86,7 +86,6 @@ sub extractEventFromWikiText($;$) {
|
||||
$category =~ s/^\s+|\s+$//g;
|
||||
$category =~ s/\&/\+/g;
|
||||
|
||||
# print $category."\n";
|
||||
push @categories, $category if ( defined $category && $category =~ /\S/ );
|
||||
$title =~ s/\((.*?)\)//;
|
||||
}
|
||||
@@ -100,9 +99,6 @@ sub extractEventFromWikiText($;$) {
|
||||
my $podcast_url = '';
|
||||
if ( $event->{content} =~ /\[\[\s*([^\|\]]+)\s*\|\s*podcast\s*\]\]/i ) {
|
||||
$podcast_url = $1;
|
||||
|
||||
# $podcast_url=~s/\|.*//g;
|
||||
# print "found podcast:".$podcast_url."\n";
|
||||
}
|
||||
$event->{podcast_url} = $podcast_url;
|
||||
|
||||
@@ -110,9 +106,6 @@ sub extractEventFromWikiText($;$) {
|
||||
my $media_url = '';
|
||||
if ( $event->{content} =~ /\[\[\s*([^\|\]]+)\s*\|\s*(direct\s+)?download\s*\]\]/i ) {
|
||||
$media_url = $1;
|
||||
|
||||
# $podcast_url=~s/\|.*//g;
|
||||
# print "found media:".$media_url."\n";
|
||||
}
|
||||
$event->{media_url} = $media_url;
|
||||
|
||||
@@ -162,28 +155,16 @@ sub eventToWikiText($$) {
|
||||
}
|
||||
|
||||
my $meta = extractMeta( $event->{comments}, $event->{meta} );
|
||||
|
||||
#use Data::Dumper;print "extracted meta".Dumper($meta);
|
||||
|
||||
$event->{comments} = removeMeta( $event->{comments} );
|
||||
$event->{wiki_comments} = $event->{comments} . "\n\n" . metaToWiki($meta);
|
||||
|
||||
#use Data::Dumper;print "event content".Dumper($event->{content});
|
||||
|
||||
#rich content editors:
|
||||
#$event->{wiki_content}=markup::html_to_creole($event->{content});
|
||||
|
||||
#markup editors
|
||||
$event->{wiki_content} = $event->{content};
|
||||
|
||||
# [[http://localhost/agenda_files/media/images/Vl8X7YmaWrmm9RMN_OMywA.jpg|{{http://localhost/agenda_files/media/thumbs/Vl8X7YmaWrmm9RMN_OMywA.jpg|}}]]
|
||||
#replace "thumbs/xxx" link by link to local media URI
|
||||
# while ($event->{wiki_content}=~/\[\[.*?\/+media\/+images\/+(.*?)\s*\|.*?\{\{.*?\/+media\/+thumbs\/+(.*?)\s*\|\s*(.*?)\s*\}\}\]\]/){
|
||||
# [[http://localhost/agenda_files/media/images/Vl8X7YmaWrmm9RMN_OMywA.jpg|{{http://localhost/agenda_files/media/thumbs/Vl8X7YmaWrmm9RMN_OMywA.jpg|}}]]
|
||||
#replace "thumbs/xxx" link by link to local media URI
|
||||
$event->{wiki_content} =~
|
||||
s/\[\[.*?\/+media\/+images\/+(.*?)\s*\|.*?\{\{.*?\/+media\/+thumbs\/+(.*?)\s*\|\s*(.*?)\s*\}\}\]\]/\{\{thumbs\/$1\|$3\}\}/g;
|
||||
|
||||
# }
|
||||
|
||||
my $wiki_content = join( "\n" . ( "-" x 20 ) . "\n", ( $event->{excerpt}, $event->{wiki_content} ) );
|
||||
$wiki_content .= "\n" . ( "-" x 20 ) . "\n" . $event->{wiki_comments} if ( $event->{wiki_comments} =~ /\S/ );
|
||||
|
||||
@@ -231,8 +212,6 @@ sub extractMeta ($$){
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# use Data::Dumper;print Dumper($meta);
|
||||
return $meta;
|
||||
}
|
||||
|
||||
@@ -244,8 +223,6 @@ sub removeMeta($) {
|
||||
for my $line ( split( /\n/, $comments ) ) {
|
||||
$result .= $line unless ( $line =~ /\~\~META\:(.+?)\=(.+?)\~\~/g );
|
||||
}
|
||||
|
||||
#use Data::Dumper;print "removed metsas:".Dumper($result);
|
||||
$result =~ s/^\s+//g;
|
||||
$result =~ s/\s+$//g;
|
||||
|
||||
@@ -258,18 +235,10 @@ sub metaToWiki {
|
||||
|
||||
my $result = '';
|
||||
for my $pair (@$meta) {
|
||||
|
||||
# use Data::Dumper;print Dumper($pair);
|
||||
$result .= '~~META:' . $pair->{name} . '=' . $pair->{value} . '~~' . "\n";
|
||||
}
|
||||
return $result;
|
||||
|
||||
#use Data::Dumper;print Dumper($meta);
|
||||
|
||||
}
|
||||
|
||||
#test:
|
||||
#perl -e 'use creole_wiki;$a=creole_wiki::extractEventFromWikiText("teaser\n----------------------\nbody[[asd|download]][[bsd|hallo]][[csd|podcast]]{{a|b}}[[dsd|wer]]\n----------------------\ncomments",{title=>" a : b - c ( d e - f , g h i - j, k - m - l) "});use Data::Dumper;print Dumper($a)';
|
||||
|
||||
#do not delete last line!
|
||||
1;
|
||||
|
||||
@@ -41,33 +41,13 @@ sub html_to_creole($) {
|
||||
my $s = shift;
|
||||
|
||||
#remove elements
|
||||
# $s=~s/[\r\f\n]+/\n/gi;
|
||||
# $s=~s/<\/p.*?>//gi;
|
||||
# $s=~s/<\/br.*?>//gi;
|
||||
$s =~ s/\<\!\-\-[\s\S]*?\-\-\>//gi;
|
||||
$s =~ s/<script.*?>.*?<\/script.*?>//gi;
|
||||
|
||||
# $s=~s/<\/?span.*?>//gi;
|
||||
# $s=~s/<\/?font.*?>//gi;
|
||||
# $s=~s/<\/?meta.*?>//gi;
|
||||
# $s=~s/<\/?title.*?>//gi;
|
||||
# $s=~s/<\/?style.*?>//gi;
|
||||
# $s=~s/<\/?col.*?>//gi;
|
||||
# $s=~s/<\/?thead.*?>//gi;
|
||||
# $s=~s/<\/?tbody.*?>//gi;
|
||||
$s =~ s/<\/?form.*?>//gi;
|
||||
$s =~ s/<\/?select.*?>//gi;
|
||||
$s =~ s/<\/?option.*?//gi;
|
||||
$s =~ s/<\/?input.*?>//gi;
|
||||
|
||||
# $s=~s/<\/?button.*?>//gi;
|
||||
# $s=~s/<\/?textarea.*?>//gi;
|
||||
$s =~ s/<\/?script.*?>//gi;
|
||||
|
||||
#table elements
|
||||
# $s=~s/\s*<\/?td.*?>//gi;
|
||||
# $s=~s/\s*<\/?th.*?>//gi;
|
||||
|
||||
#remove line breaks
|
||||
$s =~ s/[\r\n]+/ /gi;
|
||||
|
||||
@@ -87,13 +67,10 @@ sub html_to_creole($) {
|
||||
$s =~ s/<\/?i.*?>//gi;
|
||||
$s =~ s/<b.*?>(.*?)<\/b>/\*\*$1\*\*/gi;
|
||||
|
||||
# $s=~s/<\/?b.*?>//gi;
|
||||
|
||||
$s =~ s/<strong.*?>(.*?)<\/strong>/\*\*$1\*\*/gi;
|
||||
$s =~ s/<em.*?>(.*?)<\/em>/\/\/$1\/\//gi;
|
||||
$s =~ s/<blockquote.*?>((\W+|\w+)*?)<\/blockquote>/{{{$1}}}/gi;
|
||||
|
||||
# $s=~s/<a\s+.*?href="(.*?)".*?>((\W+|\w+)*?)<\/a>/\[\[$1\|$2\]\]$3/gi;
|
||||
$s =~ s/<a\s+.*?href="(.*?)".*?>(.*?)(\s*)<\/a>/\[\[$1\|$2\]\]$3/gi;
|
||||
$s =~ s/<a.*?>//gi;
|
||||
|
||||
@@ -101,59 +78,27 @@ sub html_to_creole($) {
|
||||
$s =~ s/(\[\[[^\]\n]*?)\n([^\]]*?\]\])/$1$2/g;
|
||||
$s =~ s/(\[\[[^\]\n]*?)\n([^\]]*?\]\])/$1$2/g;
|
||||
$s =~ s/(\[\[[^\]\n]*?)\n([^\]]*?\]\])/$1$2/g;
|
||||
|
||||
# print STDERR Dumper($s) if ($s=~/</);
|
||||
|
||||
|
||||
$s =~ s/[\s]+/ /gi;
|
||||
|
||||
# $s=~s/\n[ \t\r\n]+\n/\n\n/gi;
|
||||
# $s=~s/\n[ ]+/\n /gi;
|
||||
# $s=~s/\n+/\n/gi;
|
||||
# $s=~s/\n+/\\\n/gi;
|
||||
|
||||
#line elements, increase head line level to avoid breaking single = chars
|
||||
$s =~ s/\s*<h1.*?>/== /gi;
|
||||
$s =~ s/\s*<h2.*?>/=== /gi;
|
||||
$s =~ s/\s*<h3.*?>/==== /gi;
|
||||
$s =~ s/\s*<h\d.*?>/===== /gi;
|
||||
|
||||
# $s=~s/\s*<\/h\d.*?>/\n/gi;
|
||||
|
||||
# $s=~s/<br.*?>/\\\\<br>/gi;
|
||||
# $s=~s/\s*<div.*?>//gi;
|
||||
# $s=~s/\s*<\/div>/\n/gi;
|
||||
|
||||
# $s=~s/<table.*?>/\n/gi;
|
||||
# $s=~s/<\/table>/\n/gi;
|
||||
# $s=~s/\s*<tr.*?>//gi;
|
||||
# $s=~s/\s*<\/tr>//gi;
|
||||
|
||||
# $s=~s/\s*<ol.*?>/\n/gi;
|
||||
# $s=~s/\s*<\/ol>/\n/gi;
|
||||
# $s=~s/\s*<ul.*?>/\n/gi;
|
||||
# $s=~s/\s*<\/ul>/\n/gi;
|
||||
# $s=~s/\s*<li.*?>/\n\* /gi;
|
||||
# $s=~s/\s*<\/li>//gi;
|
||||
|
||||
# $s=~s/\s*<p.*?>\s*/\n\n/gi;
|
||||
# $s=~s/\s*<br.*?>\s*/\n /gi;
|
||||
|
||||
my $tree = HTML::Parse::parse_html( '<body>' . $s . '</body>' );
|
||||
my $formatter = HTML::FormatText->new( leftmargin => 0, rightmargin => 2000 );
|
||||
$s = $formatter->format($tree);
|
||||
|
||||
#use Data::Dumper; print "asd:<textarea cols=100 rows=5>".Dumper($s);print "</textarea>";
|
||||
$s =~ s/\</\</g;
|
||||
|
||||
#fix line endings
|
||||
$s =~ s/\n[ \t]+/\n/gi;
|
||||
|
||||
#$s=~s/\n[\t\r ]+\n/\n\n/g;
|
||||
$s =~ s/\n{3,99}/\n\n/g;
|
||||
$s =~ s/\n*\*[\s]+/\n\* /g;
|
||||
|
||||
#$s=~s/(\n\*.*?\n)([^\*])/$1\n\n$2/g;
|
||||
|
||||
#enter line break before headlines
|
||||
$s =~ s/(={2,99})/\n$1/g;
|
||||
|
||||
@@ -164,24 +109,15 @@ sub html_to_creole($) {
|
||||
$s =~ s/\s+$//gi;
|
||||
$s =~ s/\n{3,99}/\n\n/g;
|
||||
|
||||
# $s=~s/\n\n+/ \\\\\n/g;
|
||||
$s =~ s/\n/\\\\\n/g;
|
||||
$s =~ s/\\\\\n\=/\n\=/g;
|
||||
|
||||
#$s=~s/\n\n/ \\\\\n/g;
|
||||
# $s=~s/(\\\\\n){3,99}/\\\\\n\\\\\n/g;
|
||||
#$s=~s/\\\\[ \t]+/\\\\\n/g;
|
||||
|
||||
# $s=~s/<\/a>//gi;
|
||||
|
||||
return $s;
|
||||
}
|
||||
|
||||
sub creole_to_html ($) {
|
||||
my $s = $_[0] || '';
|
||||
|
||||
#$s=~s/\n\#\n/\n/g;
|
||||
#fix_line_ends($s);
|
||||
$s =~ s/<a\s+.*?href="(.*?)".*?>(.*?)(\s*)<\/a>/\[\[$1\|$2\]\]$3/gi;
|
||||
$s =~ s/<a.*?>//gi;
|
||||
|
||||
@@ -193,28 +129,11 @@ sub creole_to_html ($) {
|
||||
|
||||
$s = Text::WikiCreole::creole_parse($s) || '';
|
||||
|
||||
# $s=~s/<p>/\n/gi;
|
||||
# $s=~s/\{\{\{((\W+|\w+)+?)\}\}\}/<blockquote>$1<\/blockquote>/g;
|
||||
# $s=~s/\{\{(.+?)\|(.*?)\}\}/<img src="$1" title="$2" \/>/g;
|
||||
# $s=~s/\[\[(.+?)\|(.*?)\]\]/<a href="$1">$2<\/a>/g;
|
||||
# $s=~s/([^\:])\/\/(.*?[^\:])\/\//$1<em>$2<\/em> /g;
|
||||
# $s=~s/\n=== (.*?)\n/<h3>$1<\/h3>\n/g;
|
||||
# $s=~s/\n== (.*?)\n/<h2>$1<\/h2>\n/g;
|
||||
#replace line breaks from images
|
||||
$s =~ s/(\{\{[^\}\n]*?)\n([^\}\n]*?\}\})/$1$2/g;
|
||||
$s =~ s/(\{\{[^\}\n]*?)\n([^\}\n]*?\}\})/$1$2/g;
|
||||
$s =~ s/(\{\{[^\}\n]*?)\n([^\}\n]*?\}\})/$1$2/g;
|
||||
|
||||
#replace line breaks from links
|
||||
# $s=~s/\n= (.*?)\n/<h1>$1<\/h1>\n/g;
|
||||
# $s=~s/\*\*(.*?)\*\*/<strong>$1<\/strong> /g;
|
||||
# $s=~s/^== (.*?)\n/<h2>$1<\/h2>\n/g;
|
||||
# $s=~s/\n\* (.*?)([\r\n]+)/<li>$1<\/li>\n/g;
|
||||
# $s=~s/\n\- (.*?)\n/<lo>$1<\/lo>\n/g;
|
||||
# $s=~s/\n\n/<p>/gi;
|
||||
# $s=~s/\n+/<br \/>/gi;
|
||||
# $s=~s/\</\</g;
|
||||
|
||||
#remove whitespaces and break lines at start or end of elements
|
||||
for my $elem ( 'p', 'li' ) {
|
||||
$s =~ s|<$elem>\s*<br/><br/>|<$elem>|g;
|
||||
@@ -288,25 +207,6 @@ sub plain_to_xml($) {
|
||||
$_[0] =~ s/\[\[.+?\|(.+?)\]\]/$1/g;
|
||||
$_[0] =~ s/\{\{.+?\}\}//g;
|
||||
return encode_xml_element( $_[0] );
|
||||
|
||||
# $_[0]=~s/\ä/ä/gi;
|
||||
# $_[0]=~s/\ö/ö/gi;
|
||||
# $_[0]=~s/\ü/ü/gi;
|
||||
# $_[0]=~s/\Ä/Ä/gi;
|
||||
# $_[0]=~s/\Ö/Ö/gi;
|
||||
# $_[0]=~s/\Ü/Ü/gi;
|
||||
# $_[0]=~s/\ß/ß/gi;
|
||||
# $_[0]=~s/\&/\&/gi;
|
||||
# $_[0]=~s/\</\</gi;
|
||||
# $_[0]=~s/\>/\>/gi;
|
||||
# $_[0]=~s/\"/\"/gi;
|
||||
|
||||
## $_[0]=~s/\n/<br\/>/gi;
|
||||
## $_[0]=~s/\&amp;/\&/gi;
|
||||
## $_[0]=~s/\&amp;/+/gi;
|
||||
## $_[0]=~s/\&/+/gi;
|
||||
## $_[0]=~s/\&/+/gi;
|
||||
# return $_[0];
|
||||
}
|
||||
|
||||
sub fix_utf8($) {
|
||||
@@ -324,22 +224,16 @@ sub compress ($) {
|
||||
|
||||
if ( $_[0] =~ /(Content\-type\:[^\n]+[\n]+)/ ) {
|
||||
$header = $1;
|
||||
} else {
|
||||
|
||||
#return;
|
||||
}
|
||||
|
||||
my $start = index( $_[0], $header );
|
||||
return if ( $start < 0 );
|
||||
|
||||
my $header_length = length($header);
|
||||
$header = substr( $_[0], 0, $start + $header_length );
|
||||
|
||||
# print $header."\n";
|
||||
|
||||
my $content = substr( $_[0], $start + $header_length );
|
||||
|
||||
# #remove multiple line breaks
|
||||
#remove multiple line breaks
|
||||
$content =~ s/[\r\n]+[\s]*[\r\n]+/\n/g;
|
||||
|
||||
#remove leading whitespaces
|
||||
|
||||
Reference in New Issue
Block a user