From 52e16d4ec9aa0ec896dd8f0d8651bc5f7fb71531 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 17 Mar 2008 21:28:31 -0400 Subject: * Record new pages in %pagesources temporarily when previewing so that things that need to know the page source or type can query it from there. Fixes previewing of tables when creating a new page. --- IkiWiki/CGI.pm | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'IkiWiki') diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm index 042e168aa..470677088 100644 --- a/IkiWiki/CGI.pm +++ b/IkiWiki/CGI.pm @@ -344,6 +344,12 @@ sub cgi_editpage ($$) { #{{{ return; } elsif ($form->submitted eq "Preview") { + my $new=not exists $pagesources{$page}; + if ($new) { + # temporarily record its type + $pagesources{$page}=$page.".".$type; + } + my $content=$form->field('editcontent'); run_hooks(editcontent => sub { $content=shift->( @@ -358,6 +364,10 @@ sub cgi_editpage ($$) { #{{{ linkify($page, $page, preprocess($page, $page, filter($page, $page, $content), 0, 1)))); + + if ($new) { + delete $pagesources{$page}; + } # previewing may have created files on disk saveindex(); } -- cgit v1.2.3