parent
9f25e3436b
commit
29f3082772
28
IkiWiki.pm
28
IkiWiki.pm
|
@ -609,6 +609,34 @@ sub htmllink ($$$;@) { #{{{
|
||||||
return "<a href=\"$bestlink\"@attrs>$linktext</a>";
|
return "<a href=\"$bestlink\"@attrs>$linktext</a>";
|
||||||
} #}}}
|
} #}}}
|
||||||
|
|
||||||
|
sub userlink ($) { #{{{
|
||||||
|
my $user=shift;
|
||||||
|
|
||||||
|
eval q{use CGI 'escapeHTML'};
|
||||||
|
error($@) if $@;
|
||||||
|
if ($user =~ m!^https?://! &&
|
||||||
|
eval q{use Net::OpenID::VerifiedIdentity; 1} && !$@) {
|
||||||
|
# Munge user-urls, as used by eg, OpenID.
|
||||||
|
my $oid=Net::OpenID::VerifiedIdentity->new(identity => $user);
|
||||||
|
my $display=$oid->display;
|
||||||
|
# Convert "user.somehost.com" to "user [somehost.com]".
|
||||||
|
if ($display !~ /\[/) {
|
||||||
|
$display=~s/^(.*?)\.([^.]+\.[a-z]+)$/$1 [$2]/;
|
||||||
|
}
|
||||||
|
# Convert "http://somehost.com/user" to "user [somehost.com]".
|
||||||
|
if ($display !~ /\[/) {
|
||||||
|
$display=~s/^https?:\/\/(.+)\/([^\/]+)$/$2 [$1]/;
|
||||||
|
}
|
||||||
|
$display=~s!^https?://!!; # make sure this is removed
|
||||||
|
return "<a href=\"$user\">".escapeHTML($display)."</a>";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return htmllink("", "", escapeHTML(
|
||||||
|
length $config{userdir} ? $config{userdir}."/".$user : $user
|
||||||
|
), noimageinline => 1);
|
||||||
|
}
|
||||||
|
} #}}}
|
||||||
|
|
||||||
sub htmlize ($$$) { #{{{
|
sub htmlize ($$$) { #{{{
|
||||||
my $page=shift;
|
my $page=shift;
|
||||||
my $type=shift;
|
my $type=shift;
|
||||||
|
|
|
@ -726,32 +726,4 @@ sub cgi (;$$) { #{{{
|
||||||
}
|
}
|
||||||
} #}}}
|
} #}}}
|
||||||
|
|
||||||
sub userlink ($) { #{{{
|
|
||||||
my $user=shift;
|
|
||||||
|
|
||||||
eval q{use CGI 'escapeHTML'};
|
|
||||||
error($@) if $@;
|
|
||||||
if ($user =~ m!^https?://! &&
|
|
||||||
eval q{use Net::OpenID::VerifiedIdentity; 1} && !$@) {
|
|
||||||
# Munge user-urls, as used by eg, OpenID.
|
|
||||||
my $oid=Net::OpenID::VerifiedIdentity->new(identity => $user);
|
|
||||||
my $display=$oid->display;
|
|
||||||
# Convert "user.somehost.com" to "user [somehost.com]".
|
|
||||||
if ($display !~ /\[/) {
|
|
||||||
$display=~s/^(.*?)\.([^.]+\.[a-z]+)$/$1 [$2]/;
|
|
||||||
}
|
|
||||||
# Convert "http://somehost.com/user" to "user [somehost.com]".
|
|
||||||
if ($display !~ /\[/) {
|
|
||||||
$display=~s/^https?:\/\/(.+)\/([^\/]+)$/$2 [$1]/;
|
|
||||||
}
|
|
||||||
$display=~s!^https?://!!; # make sure this is removed
|
|
||||||
return "<a href=\"$user\">".escapeHTML($display)."</a>";
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return htmllink("", "", escapeHTML(
|
|
||||||
length $config{userdir} ? $config{userdir}."/".$user : $user
|
|
||||||
), noimageinline => 1);
|
|
||||||
}
|
|
||||||
} #}}}
|
|
||||||
|
|
||||||
1
|
1
|
||||||
|
|
Loading…
Reference in New Issue