From 121c0fc085e99692ee15a1c5f92f394340aedfb1 Mon Sep 17 00:00:00 2001 From: Rob Church Date: Thu, 6 Jul 2006 17:33:33 +0000 Subject: [PATCH] * Implicit group "emailconfirmed" for all users whose email addresses are confirmed --- RELEASE-NOTES | 2 +- includes/DefaultSettings.php | 4 ++++ includes/User.php | 11 +++++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 3d7146c03b..03f23497fa 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -652,7 +652,7 @@ Some default configuration options have changed: * (bug 6560) Avoid PHP notice when trimming ISBN whitespace * Added namespace translation to Kannada (ka) * (bug 6566) Improve input validation on timestamp conversion - +* Implicit group "emailconfirmed" for all users whose email addresses are confirmed == Compatibility == diff --git a/includes/DefaultSettings.php b/includes/DefaultSettings.php index c869d7fd07..1aa745a6f6 100644 --- a/includes/DefaultSettings.php +++ b/includes/DefaultSettings.php @@ -882,6 +882,10 @@ $wgGroupPermissions['user' ]['minoredit'] = true; // Implicit group for accounts that pass $wgAutoConfirmAge $wgGroupPermissions['autoconfirmed']['autoconfirmed'] = true; +// Implicit group for accounts with confirmed email addresses +// This has little use when email address confirmation is off +$wgGroupPermissions['emailconfirmed']['emailconfirmed'] = true; + // Users with bot privilege can have their edits hidden // from various log pages by default $wgGroupPermissions['bot' ]['bot'] = true; diff --git a/includes/User.php b/includes/User.php index f695d1d2c9..36af6ba2fe 100644 --- a/includes/User.php +++ b/includes/User.php @@ -773,6 +773,17 @@ class User { if( $accountAge >= $wgAutoConfirmAge ) { $implicitGroups[] = 'autoconfirmed'; } + + # Implicit group for users whose email addresses are confirmed + global $wgEmailAuthentication; + if( $this->isValidEmailAddr( $this->mEmail ) ) { + if( $wgEmailAuthentication ) { + if( $this->mEmailAuthenticated ) + $implicitGroups[] = 'emailconfirmed'; + } else { + $implicitGroups[] = 'emailconfirmed'; + } + } $effectiveGroups = array_merge( $implicitGroups, $this->mGroups ); $this->mRights = $this->getGroupPermissions( $effectiveGroups ); -- 2.20.1