Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
commit
70972b1687
|
@ -13,5 +13,57 @@ those contents instead.
|
||||||
|
|
||||||
> In mine I just copied sidebar out and made some extra "sidebars", but they go elsewhere. Ugly hack, but it works. --[[simonraven]]
|
> In mine I just copied sidebar out and made some extra "sidebars", but they go elsewhere. Ugly hack, but it works. --[[simonraven]]
|
||||||
|
|
||||||
|
>> Here a simple [[patch]] for multiple sidebars. Not too fancy but better than having multiple copies of the sidebar plugin. --[[jeanprivat]]
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
--- /usr/share/perl5/IkiWiki/Plugin/sidebar.pm 2010-02-11 22:53:17.000000000 -0500
|
||||||
|
+++ plugins/IkiWiki/Plugin/sidebar.pm 2010-02-27 09:54:12.524412391 -0500
|
||||||
|
@@ -19,12 +19,20 @@
|
||||||
|
safe => 1,
|
||||||
|
rebuild => 1,
|
||||||
|
},
|
||||||
|
+ active_sidebars => {
|
||||||
|
+ type => "string",
|
||||||
|
+ example => qw(sidebar banner footer),
|
||||||
|
+ description => "Which sidebars must be activated and processed.",
|
||||||
|
+ safe => 1,
|
||||||
|
+ rebuild => 1
|
||||||
|
+ },
|
||||||
|
}
|
||||||
|
|
||||||
|
-sub sidebar_content ($) {
|
||||||
|
+sub sidebar_content ($$) {
|
||||||
|
my $page=shift;
|
||||||
|
+ my $sidebar=shift;
|
||||||
|
|
||||||
|
- my $sidebar_page=bestlink($page, "sidebar") || return;
|
||||||
|
+ my $sidebar_page=bestlink($page, $sidebar) || return;
|
||||||
|
my $sidebar_file=$pagesources{$sidebar_page} || return;
|
||||||
|
my $sidebar_type=pagetype($sidebar_file);
|
||||||
|
|
||||||
|
@@ -49,11 +57,17 @@
|
||||||
|
|
||||||
|
my $page=$params{page};
|
||||||
|
my $template=$params{template};
|
||||||
|
-
|
||||||
|
- if ($template->query(name => "sidebar")) {
|
||||||
|
- my $content=sidebar_content($page);
|
||||||
|
- if (defined $content && length $content) {
|
||||||
|
- $template->param(sidebar => $content);
|
||||||
|
+
|
||||||
|
+ my @sidebars;
|
||||||
|
+ if (defined $config{active_sidebars} && length $config{active_sidebars}) { @sidebars = @{$config{active_sidebars}}; }
|
||||||
|
+ else { @sidebars = qw(sidebar); }
|
||||||
|
+
|
||||||
|
+ foreach my $sidebar (@sidebars) {
|
||||||
|
+ if ($template->query(name => $sidebar)) {
|
||||||
|
+ my $content=sidebar_content($page, $sidebar);
|
||||||
|
+ if (defined $content && length $content) {
|
||||||
|
+ $template->param($sidebar => $content);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</pre>
|
||||||
|
|
||||||
[[!tag wishlist]]
|
[[!tag wishlist]]
|
||||||
|
|
|
@ -13,14 +13,16 @@ Unless otherwise specified, any code that I post to this wiki I release under th
|
||||||
|
|
||||||
------
|
------
|
||||||
|
|
||||||
|
Disabling these as I'm not using them much any more...
|
||||||
|
|
||||||
### Open Bugs:
|
### Open Bugs:
|
||||||
|
|
||||||
[[!inline pages="link(users/Will) and bugs/* and !bugs/done and !bugs/discussion and !link(patch) and !link(bugs/done) and !bugs/*/*" archive="yes" feeds="no" ]]
|
\[[!inline pages="link(users/Will) and bugs/* and !bugs/done and !bugs/discussion and !link(patch) and !link(bugs/done) and !bugs/*/*" archive="yes" feeds="no" ]]
|
||||||
|
|
||||||
### Open ToDos:
|
### Open ToDos:
|
||||||
|
|
||||||
[[!inline pages="link(users/Will) and todo/* and !todo/done and !todo/discussion and !link(patch) and !link(todo/done) and !bugs/*/*" archive="yes" feeds="no" ]]
|
\[[!inline pages="link(users/Will) and todo/* and !todo/done and !todo/discussion and !link(patch) and !link(todo/done) and !bugs/*/*" archive="yes" feeds="no" ]]
|
||||||
|
|
||||||
### Unapplied Patches:
|
### Unapplied Patches:
|
||||||
|
|
||||||
[[!inline pages="link(users/Will) and (todo/* or bugs/*) and !bugs/done and !bugs/discussion and !todo/done and !todo/discussion and link(patch) and !link(bugs/done) and !link(todo/done) and !bugs/*/*" archive="yes" feeds="no" ]]
|
\[[!inline pages="link(users/Will) and (todo/* or bugs/*) and !bugs/done and !bugs/discussion and !todo/done and !todo/discussion and link(patch) and !link(bugs/done) and !link(todo/done) and !bugs/*/*" archive="yes" feeds="no" ]]
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Jean Privat is <jean@pryen.org>.
|
Loading…
Reference in New Issue