X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/ab1bba9daba5500e1b154579518369974cc6041a..71e0afc0adad1188220c99bca5f8cd7ae82fe964:/IkiWiki.pm?ds=sidebyside diff --git a/IkiWiki.pm b/IkiWiki.pm index bb36b0885..fe5af6d15 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -165,7 +165,7 @@ sub getsetup () { default_plugins => { type => "internal", default => [qw{mdwn link inline meta htmlscrubber passwordauth - openid emailauth signinedit lockedit conditional + openid signinedit lockedit conditional recentchanges parentlinks editpage templatebody}], description => "plugins to enable by default", @@ -566,6 +566,14 @@ sub getsetup () { safe => 1, rebuild => 1, }, + deterministic => { + type => "boolean", + default => 0, + description => "try harder to produce deterministic output", + safe => 1, + rebuild => 1, + advanced => 1, + }, } sub getlibdirs () { @@ -1217,7 +1225,7 @@ sub cgiurl (@) { } return $cgiurl."?". - join("&", map $_."=".uri_escape_utf8($params{$_}), keys %params); + join("&", map $_."=".uri_escape_utf8($params{$_}), sort(keys %params)); } sub cgiurl_abs (@) { @@ -1471,7 +1479,9 @@ sub emailuser ($) { if (defined $user && $user =~ m/(.+)@/) { my $nick=$1; # remove any characters from not allowed in wiki files - $nick=~s/[^$config{wiki_file_chars}]/_/g; + # support use w/o %config set + my $chars = defined $config{wiki_file_chars} ? $config{wiki_file_chars} : "-[:alnum:]+/.:_"; + $nick=~s/[^$chars]/_/g; return $nick; } return;