X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/fe6b271501d4d8ae00a012d14a8814cee5e0e55d..7ac5b0414d1370a049ffd78a39202032b640b52c:/IkiWiki/Setup/Standard.pm?ds=inline

diff --git a/IkiWiki/Setup/Standard.pm b/IkiWiki/Setup/Standard.pm
index 9883b922a..fb542be20 100644
--- a/IkiWiki/Setup/Standard.pm
+++ b/IkiWiki/Setup/Standard.pm
@@ -19,18 +19,33 @@ package IkiWiki;
 sub setup_standard {
 	my %setup=%{$_[1]};
 
-	if (! $config{refresh}) {
-		debug("generating wrappers..");
+	$setup{plugin}=$config{plugin};
+	if (exists $setup{add_plugins}) {
+		push @{$setup{plugin}}, @{$setup{add_plugins}};
+		delete $setup{add_plugins};
+	}
+	if (exists $setup{exclude}) {
+		push @{$config{wiki_file_prune_regexps}}, $setup{exclude};
+	}
+
+	if (! $config{render} && (! $config{refresh} || $config{wrappers})) {
+		debug(gettext("generating wrappers.."));
+		my @wrappers=@{$setup{wrappers}};
+		delete $setup{wrappers};
 		my %startconfig=(%config);
-		foreach my $wrapper (@{$setup{wrappers}}) {
-			%config=(%startconfig, verbose => 0, %setup, %{$wrapper});
+		foreach my $wrapper (@wrappers) {
+			%config=(%startconfig, rebuild => 0, verbose => 0, %setup, %{$wrapper});
 			checkconfig();
+			if (! $config{cgi} && ! $config{post_commit}) {
+				$config{post_commit}=1;
+			}
 			gen_wrapper();
 		}
 		%config=(%startconfig);
-		delete $config{wrappers};
 	}
+	
 	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});
@@ -38,26 +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.."));
 	}
 
-	checkconfig();
 	lockwiki();
 	loadindex();
 	refresh();
 
-	debug("done");
+	debug(gettext("done"));
 	saveindex();
 }