From 44abf016b3020d484c36d787fb52fd6f498d63b8 Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Sat, 25 Dec 2010 23:18:10 +0000 Subject: Put recent changes in the transient underlay --- IkiWiki/Plugin/recentchanges.pm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/IkiWiki/Plugin/recentchanges.pm b/IkiWiki/Plugin/recentchanges.pm index d6292c3f2..c3296d9e8 100644 --- a/IkiWiki/Plugin/recentchanges.pm +++ b/IkiWiki/Plugin/recentchanges.pm @@ -16,6 +16,8 @@ sub import { hook(type => "sessioncgi", id => "recentchanges", call => \&sessioncgi); # Load goto to fix up links from recentchanges IkiWiki::loadplugin("goto"); + # ... and transient as somewhere to put our internal pages + IkiWiki::loadplugin("transient"); } sub getsetup () { @@ -57,6 +59,7 @@ sub refresh ($) { foreach my $page (keys %pagesources) { if ($pagesources{$page} =~ /\._change$/ && ! $seen{$page}) { unlink($config{srcdir}.'/'.$pagesources{$page}); + unlink($IkiWiki::Plugin::transient::transientdir.'/'.$pagesources{$page}); } } } @@ -234,8 +237,8 @@ sub store ($$$) { }); my $file=$page."._change"; - writefile($file, $config{srcdir}, $template->output); - utime $change->{when}, $change->{when}, "$config{srcdir}/$file"; + writefile($file, $IkiWiki::Plugin::transient::transientdir, $template->output); + utime $change->{when}, $change->{when}, $IkiWiki::Plugin::transient::transientdir.'/'.$file; return $page; } -- cgit v1.2.3 From 512d860c169d776885922b7eaff0bcb2b722f12a Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Sun, 26 Dec 2010 22:11:20 +0000 Subject: Only unlink excess recentchanges from srcdir if not in transientdir --- IkiWiki/Plugin/recentchanges.pm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/IkiWiki/Plugin/recentchanges.pm b/IkiWiki/Plugin/recentchanges.pm index c3296d9e8..8ce9474be 100644 --- a/IkiWiki/Plugin/recentchanges.pm +++ b/IkiWiki/Plugin/recentchanges.pm @@ -58,8 +58,7 @@ sub refresh ($) { # delete old and excess changes foreach my $page (keys %pagesources) { if ($pagesources{$page} =~ /\._change$/ && ! $seen{$page}) { - unlink($config{srcdir}.'/'.$pagesources{$page}); - unlink($IkiWiki::Plugin::transient::transientdir.'/'.$pagesources{$page}); + unlink($IkiWiki::Plugin::transient::transientdir.'/'.$pagesources{$page}) || unlink($config{srcdir}.'/'.$pagesources{$page}); } } } -- cgit v1.2.3