X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/121e2ffc2f25bf264a68d35e80a9386995fa9e5a..cf559160fa3ee65a99b303d0b483ae9481e4a2c7:/IkiWiki/Render.pm

diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm
index 30e3d4199..833fcaaff 100644
--- a/IkiWiki/Render.pm
+++ b/IkiWiki/Render.pm
@@ -63,7 +63,7 @@ sub genpage ($$) {
 	my $content=shift;
 	
 	run_hooks(indexhtml => sub {
-		shift->(page => $page, content => $content);
+		shift->(page => $page, destpage => $page, content => $content);
 	});
 
 	my $templatefile;
@@ -84,19 +84,14 @@ sub genpage ($$) {
 		$template=template('page.tmpl', 
 			blind_cache => 1);
 	}
-	my $actions=0;
 
+	my $actions=0;
 	if (length $config{cgiurl}) {
 		if (IkiWiki->can("cgi_editpage")) {
 			$template->param(editurl => cgiurl(do => "edit", page => $page));
 			$actions++;
 		}
-		if (exists $hooks{auth}) {
-			$template->param(prefsurl => cgiurl(do => "prefs"));
-			$actions++;
-		}
 	}
-		
 	if (defined $config{historyurl} && length $config{historyurl}) {
 		my $u=$config{historyurl};
 		$u=~s/\[\[file\]\]/$pagesources{$page}/g;
@@ -111,17 +106,10 @@ sub genpage ($$) {
 			$actions++;
 		}
 	}
-
-	my @actions;
-	run_hooks(pageactions => sub {
-		push @actions, map { { action => $_ } } 
-			grep { defined } shift->(page => $page);
-	});
-	$template->param(actions => \@actions);
-
-	if ($actions || @actions) {
+	if ($actions) {
 		$template->param(have_actions => 1);
 	}
+	templateactions($template, $page);
 
 	my @backlinks=sort { $a->{page} cmp $b->{page} } backlinks($page);
 	my ($backlinks, $more_backlinks);
@@ -641,7 +629,7 @@ sub render_dependent ($$$$$$$) {
 				# only consider internal files
 				# if the page explicitly depends
 				# on such files
-				my $internal_dep=$dep =~ /internal\(/;
+				my $internal_dep=$dep =~ /(?:internal|comment|comment_pending)\(/;
 
 				my $in=sub {
 					my $list=shift;
@@ -800,8 +788,8 @@ sub refresh () {
 	render_backlinks($backlinkchanged);
 	remove_unrendered();
 
-	if (@$del) {
-		run_hooks(delete => sub { shift->(@$del) });
+	if (@$del || @$internal_del) {
+		run_hooks(delete => sub { shift->(@$del, @$internal_del) });
 	}
 	if (%rendered) {
 		run_hooks(change => sub { shift->(keys %rendered) });