my $changelog=[rcs_recentchanges(100)];
foreach my $change (@$changelog) {
- $change->{when} = concise(ago($change->{when}));
+ $change->{when} = concise(ago(time - $change->{when}));
$change->{user} = userlink($change->{user});
}
elsif ($form->submitted eq 'Save Preferences' && $form->validate) {
foreach my $field (qw(email subscriptions)) {
- if (defined $form->field($field) && length $form->field($field)) {
+ if (defined $form->field($field)) {
userinfo_set($user_name, $field, $form->field($field)) ||
error("failed to set $field");
}
}
} #}}}
-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