Merge commit 'intrigeri/po'
commit
3811c5f559
|
@ -306,17 +306,7 @@ sub preprocess_inline (@) {
|
||||||
# Add a blog post form, with feed buttons.
|
# Add a blog post form, with feed buttons.
|
||||||
my $formtemplate=template("blogpost.tmpl", blind_cache => 1);
|
my $formtemplate=template("blogpost.tmpl", blind_cache => 1);
|
||||||
$formtemplate->param(cgiurl => $config{cgiurl});
|
$formtemplate->param(cgiurl => $config{cgiurl});
|
||||||
my $rootpage;
|
$formtemplate->param(rootpage => rootpage(%params));
|
||||||
if (exists $params{rootpage}) {
|
|
||||||
$rootpage=bestlink($params{page}, $params{rootpage});
|
|
||||||
if (!length $rootpage) {
|
|
||||||
$rootpage=$params{rootpage};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$rootpage=$params{page};
|
|
||||||
}
|
|
||||||
$formtemplate->param(rootpage => $rootpage);
|
|
||||||
$formtemplate->param(rssurl => $rssurl) if $feeds && $rss;
|
$formtemplate->param(rssurl => $rssurl) if $feeds && $rss;
|
||||||
$formtemplate->param(atomurl => $atomurl) if $feeds && $atom;
|
$formtemplate->param(atomurl => $atomurl) if $feeds && $atom;
|
||||||
if (exists $params{postformtext}) {
|
if (exists $params{postformtext}) {
|
||||||
|
@ -653,4 +643,21 @@ sub pingurl (@) {
|
||||||
exit 0; # daemon done
|
exit 0; # daemon done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
sub rootpage (@) {
|
||||||
|
my %params=@_;
|
||||||
|
|
||||||
|
my $rootpage;
|
||||||
|
if (exists $params{rootpage}) {
|
||||||
|
$rootpage=bestlink($params{page}, $params{rootpage});
|
||||||
|
if (!length $rootpage) {
|
||||||
|
$rootpage=$params{rootpage};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$rootpage=$params{page};
|
||||||
|
}
|
||||||
|
return $rootpage;
|
||||||
|
}
|
||||||
|
|
||||||
1
|
1
|
||||||
|
|
|
@ -59,6 +59,8 @@ sub import {
|
||||||
inject(name => "IkiWiki::urlto", call => \&myurlto);
|
inject(name => "IkiWiki::urlto", call => \&myurlto);
|
||||||
$origsubs{'cgiurl'}=\&IkiWiki::cgiurl;
|
$origsubs{'cgiurl'}=\&IkiWiki::cgiurl;
|
||||||
inject(name => "IkiWiki::cgiurl", call => \&mycgiurl);
|
inject(name => "IkiWiki::cgiurl", call => \&mycgiurl);
|
||||||
|
$origsubs{'rootpage'}=\&IkiWiki::rootpage;
|
||||||
|
inject(name => "IkiWiki::rootpage", call => \&myrootpage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -566,9 +568,12 @@ sub mybestlink ($$) {
|
||||||
my $link=shift;
|
my $link=shift;
|
||||||
|
|
||||||
my $res=$origsubs{'bestlink'}->(masterpage($page), $link);
|
my $res=$origsubs{'bestlink'}->(masterpage($page), $link);
|
||||||
|
my @caller = caller(1);
|
||||||
if (length $res
|
if (length $res
|
||||||
&& istranslatable($res)
|
&& istranslatable($res)
|
||||||
&& istranslation($page)) {
|
&& istranslation($page)
|
||||||
|
&& !(exists $caller[3] && defined $caller[3]
|
||||||
|
&& ($caller[3] eq "IkiWiki::PageSpec::match_link"))) {
|
||||||
return $res . "." . lang($page);
|
return $res . "." . lang($page);
|
||||||
}
|
}
|
||||||
return $res;
|
return $res;
|
||||||
|
@ -651,6 +656,22 @@ sub mycgiurl (@) {
|
||||||
return $origsubs{'cgiurl'}->(%params);
|
return $origsubs{'cgiurl'}->(%params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub myrootpage (@) {
|
||||||
|
my %params=@_;
|
||||||
|
|
||||||
|
my $rootpage;
|
||||||
|
if (exists $params{rootpage}) {
|
||||||
|
$rootpage=$origsubs{'bestlink'}->($params{page}, $params{rootpage});
|
||||||
|
if (!length $rootpage) {
|
||||||
|
$rootpage=$params{rootpage};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$rootpage=masterpage($params{page});
|
||||||
|
}
|
||||||
|
return $rootpage;
|
||||||
|
}
|
||||||
|
|
||||||
# ,----
|
# ,----
|
||||||
# | Blackboxes for private data
|
# | Blackboxes for private data
|
||||||
# `----
|
# `----
|
||||||
|
|
Loading…
Reference in New Issue