Package: ikiwiki Version: 1.12 Severity: wishlist Tags: patch A new feature I'd like to request: [[inline pages=... rss="no"]], so that you can include a generated page without creating an RSS feed for the including page. Also, allows to have several sets of inlined pages and choose which one of them becomes RSS. My blog.mdwn page currently reads: ,----[ blog.mdwn ] | [[inline pages="catlinks"]] | [[inline pages="datelinks"]] | | [[inline pages="articles/* !*/Discussion" show="10" rootpage="blog"]] `---- I had to put the catlinks and datelinks includes above, because the last [[inline]] directive overwrites blog.rss.
Patch follows (sorry it's not incremental -- it also includes the date-limiting feature patch mentioned in #380680). Basically, it adds a new parameter named rss, defaulting to "yes", controlling whether to generate a .rss page for the current inlining. --- inline.pm~ 2006-07-29 23:38:19.000000000 +0200 +++ inline.pm 2006-08-01 11:46:17.000000000 +0200 @@ -32,10 +32,25 @@ if (! exists $params{archive}) { $params{archive}="no"; } - if (! exists $params{show} && $params{archive} eq "no") { + if (! exists $params{rss}) { + $params{rss}="yes"; + } + if (! exists $params{show} && ! exists $params{year} && $params{archive} eq "no") { $params{show}=10; } - + if (exists $params{day} && ($params{day} !~ /^\d{2}$/ || ! exists $params{month})) { + return ""; + } + if (exists $params{month} && ($params{month} !~ /^\d{2}$/ || ! exists $params{year})) { + return ""; + } + if ($params{year} && $params{year} !~ /^\d{4}$/) { + return ""; + } + if ($params{year}) { + delete $params{show} ; + } + # Avoid nested inlines, to avoid loops etc. if ($processing_inline) { return ""; @@ -45,6 +60,11 @@ my @list; foreach my $page (keys %pagesources) { next if $page eq $params{page}; + my (undef,undef,undef,$d,$m,$y,undef,undef,undef) = + gmtime($pagectime{$page}) ; + next if $params{year} && $y + 1900 != $params{year} ; + next if $params{month} && $m + 1 != $params{month} ; + next if $params{day} && $d != $params{day} ; if (globlist_match($page, $params{pages})) { push @list, $page; } @@ -63,12 +83,12 @@ my $formtemplate=template("blogpost.tmpl", blind_cache => 1); $formtemplate->param(cgiurl => $config{cgiurl}); $formtemplate->param(rootpage => $params{rootpage}); - if ($config{rss}) { + if ($config{rss} && $params{rss} eq "yes") { $formtemplate->param(rssurl => rsspage(basename($params{page}))); } $ret.=$formtemplate->output; } - elsif ($config{rss}) { + elsif ($config{rss} && $params{rss} eq "yes") { # Add a rss link button. my $linktemplate=template("rsslink.tmpl", blind_cache => 1); $linktemplate->param(rssurl => rsspage(basename($params{page}))); @@ -105,7 +125,7 @@ # TODO: should really add this to renderedfiles and call # check_overwrite, but currently renderedfiles # only supports listing one file per page. - if ($config{rss}) { + if ($config{rss} && $params{rss} eq "yes") { writefile(rsspage($params{page}), $config{destdir}, genrss($params{page}, @list)); $toping{$params{page}}=1 unless $config{rebuild}; -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.17-1-k7 Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Versions of packages ikiwiki depends on: ii gcc [c-compiler] 4:4.1.1-5 The GNU C compiler ii gcc-3.3 [c-compiler] 1:3.3.6-13 The GNU C compiler ii gcc-4.0 [c-compiler] 4.0.3-6 The GNU C compiler ii gcc-4.1 [c-compiler] 4.1.1-10 The GNU C compiler ii libc6-dev [libc-dev] 2.3.6-16 GNU C Library: Development Librari ii libcgi-formbuilder-perl 3.03.01-1 Easily generate and process statef ii libcgi-session-perl 4.14-1 Persistent session data in CGI app ii libhtml-scrubber-perl 0.08-3 Perl extension for scrubbing/sanit ii libhtml-template-perl 2.8-1 HTML::Template : A module for usin ii libmail-sendmail-perl 0.79-4 Send email from a perl script ii libtime-duration-perl 1.02-1 Time::Duration -- rounded or exact ii libtimedate-perl 1.1600-5 Time and date functions for Perl ii libxml-simple-perl 2.14-4 Perl module for reading and writin ii markdown 1.0.1-3 Text-to-HTML conversion tool ii perl 5.8.8-6 Larry Wall's Practical Extraction Versions of packages ikiwiki recommends: ii hyperestraier 1.3.5-1 a full-text search system for comm ii subversion 1.3.2-5 Advanced version control system -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]