]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Setup/Automator.pm
Added a comment: Using multiple setup files
[git.ikiwiki.info.git] / IkiWiki / Setup / Automator.pm
index a8b04d9669eb649d45dd68852bd3eedbf2c14889..9239974adece99801b4c008f33932ad633755ed9 100644 (file)
@@ -154,31 +154,33 @@ sub import (@) {
        foreach my $admin (@{$config{adminuser}}) {
                next if defined IkiWiki::openiduser($admin);
                
-               # Prompt for password w/o echo.
-               my ($password, $password2);
-               system('stty -echo 2>/dev/null');
-               local $|=1;
-               print "\n\nCreating wiki admin $admin ...\n";
-               for (;;) {
-                       print "Choose a password: ";
-                       chomp($password=<STDIN>);
-                       print "\n";
-                       print "Confirm password: ";
-                       chomp($password2=<STDIN>);
-
-                       last if $password2 eq $password;
-
-                       print "Password mismatch.\n\n";
-               }
-               print "\n\n\n";
-               system('stty sane 2>/dev/null');
+               if (! defined IkiWiki::emailuser($admin)) {
+                       # Prompt for password w/o echo.
+                       my ($password, $password2);
+                       system('stty -echo 2>/dev/null');
+                       local $|=1;
+                       print "\n\nCreating wiki admin $admin ...\n";
+                       for (;;) {
+                               print "Choose a password: ";
+                               chomp($password=<STDIN>);
+                               print "\n";
+                               print "Confirm password: ";
+                               chomp($password2=<STDIN>);
+       
+                               last if $password2 eq $password;
+       
+                               print "Password mismatch.\n\n";
+                       }
+                       print "\n\n\n";
+                       system('stty sane 2>/dev/null');
 
-               if (IkiWiki::userinfo_setall($admin, { regdate => time }) &&
-                   IkiWiki::Plugin::passwordauth::setpassword($admin, $password)) {
-                       IkiWiki::userinfo_set($admin, "email", $config{adminemail}) if defined $config{adminemail};
-               }
-               else {
-                       error("problem setting up $admin user");
+                       if (IkiWiki::userinfo_setall($admin, { regdate => time }) &&
+                           IkiWiki::Plugin::passwordauth::setpassword($admin, $password)) {
+                               IkiWiki::userinfo_set($admin, "email", $config{adminemail}) if defined $config{adminemail};
+                       }
+                       else {
+                               error("problem setting up $admin user");
+                       }
                }
        }