X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/914c839ceb02fdbb36a49aa6548dc95beaf59ea4..62ee542b1d9ea7a8cb57f42b3255c6a500664262:/IkiWiki/Plugin/rename.pm diff --git a/IkiWiki/Plugin/rename.pm b/IkiWiki/Plugin/rename.pm index 54c7faf13..0b6e74705 100644 --- a/IkiWiki/Plugin/rename.pm +++ b/IkiWiki/Plugin/rename.pm @@ -116,14 +116,16 @@ sub rename_form ($$$) { # insert the standard extensions my @page_types; if (exists $IkiWiki::hooks{htmlize}) { - @page_types=grep { !/^_/ } - keys %{$IkiWiki::hooks{htmlize}}; + foreach my $key (grep { !/^_/ } keys %{$IkiWiki::hooks{htmlize}}) { + push @page_types, [$key, $IkiWiki::hooks{htmlize}{$key}{longname} || $key]; + } } + @page_types=sort @page_types; # make sure the current extension is in the list my ($ext) = $pagesources{$page}=~/\.([^.]+)$/; if (! $IkiWiki::hooks{htmlize}{$ext}) { - unshift(@page_types, $ext); + unshift(@page_types, [$ext, $ext]); } $f->field(name => "type", type => 'select', @@ -390,22 +392,8 @@ sub sessioncgi ($$) { $template->param(error => $rename->{error}); if ($rename->{src} ne $rename->{dest}) { $template->param(brokenlinks_checked => 1); - $template->param(brokenlinks => [ - map { - { - page => htmllink($rename->{dest}, $rename->{dest}, $_, - noimageinline => 1) - } - } @{$rename->{brokenlinks}} - ]); - $template->param(fixedlinks => [ - map { - { - page => htmllink($rename->{dest}, $rename->{dest}, $_, - noimageinline => 1) - } - } @{$rename->{fixedlinks}} - ]); + $template->param(brokenlinks => linklist($rename->{dest}, $rename->{brokenlinks})); + $template->param(fixedlinks => linklist($rename->{dest}, $rename->{fixedlinks})); } $renamesummary.=$template->output; } @@ -419,6 +407,23 @@ sub sessioncgi ($$) { exit 0; } } + +sub linklist { + # generates a list of links in a form suitable for FormBuilder + my $dest=shift; + my $list=shift; + # converts a list of pages into a list of links + # in a form suitable for FormBuilder. + + [map { + { + page => htmllink($dest, $dest, $_, + noimageinline => 1, + linktext => pagetitle($_), + ) + } + } @{$list}] +} sub renamepage_hook ($$$$) { my ($page, $src, $dest, $content)=@_;