Allow off-page links in pod to point to a url
use Pod::Hyperlink::BounceURL; my $linkparser = new Pod::Hyperlink::BounceURL; $linkparser->configure( URL => '/cgi-perl/support/bounce.pl?page=%s' ); my $pod2xhtml = new Pod::Xhtml( LinkParser => $linkparser );
Some links in your pod may not be resolveable by Pod::Hyperlink, e.g. \*(C`L<Some::Module>\*(C' - this module allows you to detect such links and generate a hyperlink instead of some static text. The target \s-1URL\s0 will probably be some kind of dynamic webpage or \s-1CGI\s0 application which can then serve up the relevant page or send a redirect to the page, hence the \*(L"bounce\*(R" in this module's name.
This module overrides the type() method and, for relevant links, will return a string which is \*(L"bounceurl:\*(R" followed by the \s-1URL\s0, instead of returning \*(L"page\*(R" or \*(L"item\*(R". Your pod-conversion module can then switch on this case and emit the correct kind of markup. Pod::Xhtml supports the use of this module.
Set persistent configuration for this object. See \*(L"\s-1OPTIONS\s0\*(R".
Behaves as Pod::Hyperlink's type() method except for the unresolveable links, where the string returned is as described in \*(L"\s-1DESCRIPTION\s0\*(R".
The \s-1URL\s0 to handle the link, which may be absolute or relative, of any protocol - it's just treated as a string and is passed through sprintf(), with two string arguments that are both already URL-escaped. The first argument is the page name, and will always exist. The second argument is the \*(L"node\*(R" within the page, and may be empty. Insert '%s' where you wish the arguments to be interpolated. The string goes through sprintf() so you should have '%%' where you want an actual percent sign. If you need the arguments in a different order, see the perl-specific features of \*(L"sprintf\*(R" in perlfunc.
$Revision: 1.7 $
P Kent <cpan _at_ bbc _dot_ co _dot_ uk>
(c) \s-1BBC\s0 2007. This program is free software; you can redistribute it and/or modify it under the \s-1GNU\s0 \s-1GPL\s0.
See the file \s-1COPYING\s0 in this distribution, or http://www.gnu.org/licenses/gpl.txt