X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/a7f8a4eb983c8cd92aa45d8e2000939915c377ec..c90bbb50bc629b7c0723aa2433926fb0d59f2fdb:/IkiWiki/Plugin/remove.pm?ds=sidebyside

diff --git a/IkiWiki/Plugin/remove.pm b/IkiWiki/Plugin/remove.pm
index d48b28f95..859c39066 100644
--- a/IkiWiki/Plugin/remove.pm
+++ b/IkiWiki/Plugin/remove.pm
@@ -23,6 +23,7 @@ sub getsetup () {
 }
 
 sub allowed_dirs {
+	no warnings 'once';
 	return grep { defined $_ } (
 		$config{srcdir},
 		$IkiWiki::Plugin::transient::transientdir,
@@ -195,7 +196,9 @@ sub formbuilder (@) {
 		my $session=$params{session};
 
 		if ($form->submitted eq "Remove" && $form->field("do") eq "edit") {
-			removal_confirm($q, $session, 0, $form->field("page"));
+			# deliberately taking multiple values of page
+			my @pages = $form->field("page");
+			removal_confirm($q, $session, 0, @pages);
 		}
 		elsif ($form->submitted eq "Remove Attachments") {
 			my @selected=map { Encode::decode_utf8($_) } $q->param("attachment_select");
@@ -215,14 +218,15 @@ sub sessioncgi ($$) {
 		my ($form, $buttons)=confirmation_form($q, $session);
 		IkiWiki::decode_form_utf8($form);
 
+		# deliberately taking multiple values of page
+		my @pages = $form->field("page");
+
 		if ($form->submitted eq 'Cancel') {
 			postremove($session);
 		}
 		elsif ($form->submitted eq 'Remove' && $form->validate) {
-			IkiWiki::checksessionexpiry($q, $session, $q->param('sid'));
+			IkiWiki::checksessionexpiry($q, $session);
 
-			my @pages=$form->field("page");
-			
 			# Validate removal by checking that the page exists,
 			# and that the user is allowed to edit(/remove) it.
 			my @files;
@@ -287,7 +291,7 @@ sub sessioncgi ($$) {
 			}
 		}
 		else {
-			removal_confirm($q, $session, 0, $form->field("page"));
+			removal_confirm($q, $session, 0, @pages);
 		}
 
 		exit 0;