--- trunk/back2html.pm 2003/11/16 13:20:14 146
+++ trunk/back2html.pm 2009/04/06 14:19:15 782
@@ -6,28 +6,49 @@
sub back2html {
my $html = shift;
+ my $url_params = shift;
$html =~ s/</g;
$html =~ s/>/>/g;
my $out;
foreach $line (split(/\s*###\s*/,$html)) {
- $out .= "
";
+ $out .= " |
";
my @items = split(/\s*#-#\s*/,$line);
# convert spaces in left field to non-breaking spaces
$items[0] =~ s#\s+# #g;
# try to make link on right field
- sub mkurl {
+ sub mkurl($) {
my $url = shift || die "mkurl needs url as argument";
- # chop URLS longer than 60 characters
- my $txturl = substr($1,0,60);
- $txturl .= "..." if (length($1) > 60);
- return "$txturl";
+ # chop URLS longer than ... characters
+ my $txturl = substr($1,0,40);
+ my $title = '';
+ if (length($1) > 40) {
+ $txturl .= "...";
+ $title = " title=\"$url\"";
+ }
+ return "$txturl";
}
$items[1] =~ s#(http://[\S]+)#mkurl($1)#gie;
$out .= join(" | ",@items);
$out .= " |
\n";
}
- $out =~ s/<br\/*>/
/g;
+ # put
and back into html
+ $out =~ s,<br/*>,
,gi;
+ $out =~ s,<b>,,gi;
+ $out =~ s,</b>,,gi;
+ # put yyyy back into html
+ sub mkurl_param($$$$$) {
+ my ($a_href,$url,$text,$a_end, $url_params) = @_;
+ if ($url_params) {
+ if ($url =~ m#\?#) {
+ $url .= "&".$url_params;
+ } else {
+ $url .= "?".$url_params;
+ }
+ }
+ return '<'.$a_href.'"'.$url.'">'.$text.'<'.$a_end.'>';
+ }
+ $out =~ s#<(a\s+href=)['"]*(.+?)['"]*>(.+?)<(/a)>#mkurl_param($1,$2,$3,$4,$url_params)#gsie;
return $out;
}