return $dir;
}
-sub import (@) {
- my $this=shift;
- IkiWiki::Setup::merge({@_});
+sub sanitize_wikiname ($) {
+ my $wikiname=shift;
# Sanitize this to avoid problimatic directory names.
- $config{wikiname}=~s/[^-A-Za-z0-9_]//g;
- if (! length $config{wikiname}) {
+ $wikiname=~s/[^-A-Za-z0-9_]//g;
+ if (! length $wikiname) {
error gettext("you must enter a wikiname (that contains alphanumerics)");
}
+ return $wikiname;
+}
+
+sub import (@) {
+ my $this=shift;
+ IkiWiki::Setup::merge({@_});
# Avoid overwriting any existing files.
foreach my $key (qw{srcdir destdir repository dumpsetup}) {
our $wikiname=IkiWiki::Setup::Automator::ask(
gettext("What will the blog be named?"), gettext("blog"));
+our $wikiname_short=IkiWiki::Setup::Automator::sanitize_wikiname($wikiname);
our $rcs=IkiWiki::Setup::Automator::ask(
gettext("What revision control system to use?"), "git");
our $admin=IkiWiki::Setup::Automator::ask(
wikiname => $wikiname,
adminuser => [$admin],
rcs => $rcs,
- srcdir => "$ENV{HOME}/$wikiname",
- destdir => "$ENV{HOME}/public_html/$wikiname",
- repository => "$ENV{HOME}/$wikiname.".($rcs eq "monotone" ? "mtn" : $rcs),
- dumpsetup => "$ENV{HOME}/$wikiname.setup",
- url => "http://$domain/~$ENV{USER}/$wikiname",
- cgiurl => "http://$domain/~$ENV{USER}/$wikiname/ikiwiki.cgi",
- cgi_wrapper => "$ENV{HOME}/public_html/$wikiname/ikiwiki.cgi",
+ srcdir => "$ENV{HOME}/$wikiname_short",
+ destdir => "$ENV{HOME}/public_html/$wikiname_short",
+ repository => "$ENV{HOME}/$wikiname_short.".($rcs eq "monotone" ? "mtn" : $rcs),
+ dumpsetup => "$ENV{HOME}/$wikiname_short.setup",
+ url => "http://$domain/~$ENV{USER}/$wikiname_short",
+ cgiurl => "http://$domain/~$ENV{USER}/$wikiname_short/ikiwiki.cgi",
+ cgi_wrapper => "$ENV{HOME}/public_html/$wikiname_short/ikiwiki.cgi",
adminemail => "$ENV{USER}\@$domain",
add_plugins => [qw{goodstuff websetup comments blogspam}],
disable_plugins => [qw{}],
our $wikiname=IkiWiki::Setup::Automator::ask(
gettext("What will the wiki be named?"), gettext("wiki"));
+our $wikiname_short=IkiWiki::Setup::Automator::sanitize_wikiname($wikiname);
our $rcs=IkiWiki::Setup::Automator::ask(
gettext("What revision control system to use?"), "git");
our $admin=IkiWiki::Setup::Automator::ask(
wikiname => $wikiname,
adminuser => [$admin],
rcs => $rcs,
- srcdir => "$ENV{HOME}/$wikiname",
- destdir => "$ENV{HOME}/public_html/$wikiname",
- repository => "$ENV{HOME}/$wikiname.".($rcs eq "monotone" ? "mtn" : $rcs),
- dumpsetup => "$ENV{HOME}/$wikiname.setup",
- url => "http://$domain/~$ENV{USER}/$wikiname",
- cgiurl => "http://$domain/~$ENV{USER}/$wikiname/ikiwiki.cgi",
- cgi_wrapper => "$ENV{HOME}/public_html/$wikiname/ikiwiki.cgi",
+ srcdir => "$ENV{HOME}/$wikiname_short",
+ destdir => "$ENV{HOME}/public_html/$wikiname_short",
+ repository => "$ENV{HOME}/$wikiname_short.".($rcs eq "monotone" ? "mtn" : $rcs),
+ dumpsetup => "$ENV{HOME}/$wikiname_short.setup",
+ url => "http://$domain/~$ENV{USER}/$wikiname_short",
+ cgiurl => "http://$domain/~$ENV{USER}/$wikiname_short/ikiwiki.cgi",
+ cgi_wrapper => "$ENV{HOME}/public_html/$wikiname_short/ikiwiki.cgi",
adminemail => "$ENV{USER}\@$domain",
add_plugins => [qw{goodstuff websetup}],
disable_plugins => [qw{}],
* Updated Czech translation from Miroslav Kure. Closes: #546223
* rsync: New plugin that allows pushing the destdir to a remote host
via rsync or similar. Thanks, Amitai Schlair.
+ * auto.setup, auto-blog.setup: Fix sanitization of entered wikiname.
+ Closes: #547378
-- Joey Hess <joeyh@debian.org> Wed, 02 Sep 2009 15:01:27 -0400