aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joeyh@joeyh.name>2015-05-13 23:23:53 -0400
committerJoey Hess <joeyh@joeyh.name>2015-05-13 23:24:07 -0400
commit497513e737a92d2115f5d2a16610561b8a1dffdc (patch)
tree1151a46ac99333a0433d2b77cf5cd03cc676c014
parent22339188e7fac70362f024402ae873f51a36d578 (diff)
downloadikiwiki-497513e737a92d2115f5d2a16610561b8a1dffdc.tar
ikiwiki-497513e737a92d2115f5d2a16610561b8a1dffdc.tar.gz
avoid showing password prefs for emailauth user
-rw-r--r--IkiWiki.pm10
-rw-r--r--IkiWiki/Plugin/passwordauth.pm2
2 files changed, 10 insertions, 2 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm
index f414996db..53eb8235b 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 signinedit lockedit conditional
+ openid emailauth signinedit lockedit conditional
recentchanges parentlinks editpage
templatebody}],
description => "plugins to enable by default",
@@ -1464,6 +1464,14 @@ sub openiduser ($) {
return;
}
+sub emailuser ($) {
+ my $user=shift;
+ if (defined $user && $user =~ m/(.+)@/) {
+ return $1;
+ }
+ return;
+}
+
sub htmlize ($$$$) {
my $page=shift;
my $destpage=shift;
diff --git a/IkiWiki/Plugin/passwordauth.pm b/IkiWiki/Plugin/passwordauth.pm
index 0cf2a26ea..7c01bb3ff 100644
--- a/IkiWiki/Plugin/passwordauth.pm
+++ b/IkiWiki/Plugin/passwordauth.pm
@@ -277,7 +277,7 @@ sub formbuilder_setup (@) {
}
elsif ($form->title eq "preferences") {
my $user=$session->param("name");
- if (! IkiWiki::openiduser($user)) {
+ if (! IkiWiki::openiduser($user) && ! IkiWiki::emailuser($user)) {
$form->field(name => "name", disabled => 1,
value => $user, force => 1,
fieldset => "login");