X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/e49ff966a39d1037ccbf168b8dbd12618cf1b41e..fe656f65b777a8c13ff11c34ce3cc0834059faed:/IkiWiki/Setup/Standard.pm

diff --git a/IkiWiki/Setup/Standard.pm b/IkiWiki/Setup/Standard.pm
index b76c87b8e..fb542be20 100644
--- a/IkiWiki/Setup/Standard.pm
+++ b/IkiWiki/Setup/Standard.pm
@@ -24,30 +24,28 @@ sub setup_standard {
 		push @{$setup{plugin}}, @{$setup{add_plugins}};
 		delete $setup{add_plugins};
 	}
-	if (exists $setup{disable_plugins}) {
-		foreach my $plugin (@{$setup{disable_plugins}}) {
-			$setup{plugin}=[grep { $_ ne $plugin } @{$setup{plugin}}];
-		}
-		delete $setup{disable_plugins};
-	}
 	if (exists $setup{exclude}) {
-		$config{wiki_file_prune_regexp}=qr/$config{wiki_file_prune_regexp}|$setup{exclude}/;
+		push @{$config{wiki_file_prune_regexps}}, $setup{exclude};
 	}
 
-	if (! $config{refresh} || $config{wrappers}) {
-		debug("generating wrappers..");
+	if (! $config{render} && (! $config{refresh} || $config{wrappers})) {
+		debug(gettext("generating wrappers.."));
 		my @wrappers=@{$setup{wrappers}};
 		delete $setup{wrappers};
 		my %startconfig=(%config);
 		foreach my $wrapper (@wrappers) {
-			%config=(%startconfig, verbose => 0, %setup, %{$wrapper});
+			%config=(%startconfig, rebuild => 0, verbose => 0, %setup, %{$wrapper});
 			checkconfig();
+			if (! $config{cgi} && ! $config{post_commit}) {
+				$config{post_commit}=1;
+			}
 			gen_wrapper();
 		}
 		%config=(%startconfig);
 	}
 	
 	foreach my $c (keys %setup) {
+		next if $c eq 'syslog';
 		if (defined $setup{$c}) {
 			if (! ref $setup{$c}) {
 				$config{$c}=possibly_foolish_untaint($setup{$c});
@@ -55,27 +53,37 @@ sub setup_standard {
 			elsif (ref $setup{$c} eq 'ARRAY') {
 				$config{$c}=[map { possibly_foolish_untaint($_) } @{$setup{$c}}]
 			}
+			elsif (ref $setup{$c} eq 'HASH') {
+				foreach my $key (keys %{$setup{$c}}) {
+					$config{$c}{$key}=possibly_foolish_untaint($setup{$c}{$key});
+				}
+			}
 		}
 		else {
 			$config{$c}=undef;
 		}
 	}
+	
+	loadplugins();
+	checkconfig();
+
+	if ($config{render}) {
+		commandline_render();
+	}
 
 	if (! $config{refresh}) {
 		$config{rebuild}=1;
-		debug("rebuilding wiki..");
+		debug(gettext("rebuilding wiki.."));
 	}
 	else {
-		debug("refreshing wiki..");
+		debug(gettext("refreshing wiki.."));
 	}
 
-	loadplugins();
-	checkconfig();
 	lockwiki();
 	loadindex();
 	refresh();
 
-	debug("done");
+	debug(gettext("done"));
 	saveindex();
 }