--- trunk/bin/irc-logger.pl 2008/03/07 10:35:04 93 +++ trunk/bin/irc-logger.pl 2008/03/07 10:50:16 94 @@ -644,11 +644,22 @@ return $txt . $var if $var; } + # fix absolute and relative links to feed entries + my $link = $entry->link; + if ( $link =~ m!^/! ) { + my $host = $args->{url}; + $host =~ s!^(http://[^/]+).*$!$1!; #!vim + $link = "$host/$link"; + } elsif ( $link !~ m!^http! ) { + $link = $args->{url} . $link; + } + $link =~ s!//+!/!g; + my $msg; $msg .= prefix( 'From: ' , $args->{name} || $feed->title ); $msg .= prefix( ' by ' , $entry->author ); $msg .= prefix( ' | ' , $entry->title ); - $msg .= prefix( ' | ' , $entry->link ); + $msg .= prefix( ' | ' , $link ); # $msg .= prefix( ' id ' , $entry->id ); if ( $args->{kernel} && $send_rss_msgs ) { @@ -914,7 +925,6 @@ # remove => qq{ delete from feeds where url = ? and name = ? }, start => qq{ update feeds set active = true where url = ? }, stop => qq{ update feeds set active = false where url = ? }, - }; if (my $q = $sql->{$1} ) { my $sth = $dbh->prepare( $q );