You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by br...@apache.org on 2014/09/29 18:17:47 UTC
[16/27] git commit: [#7657] ticket:651 Autoverify emails if added via
site admin UI nad fix audit logs
[#7657] ticket:651 Autoverify emails if added via site admin UI nad fix audit logs
Project: http://git-wip-us.apache.org/repos/asf/allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/allura/commit/2e86cb1a
Tree: http://git-wip-us.apache.org/repos/asf/allura/tree/2e86cb1a
Diff: http://git-wip-us.apache.org/repos/asf/allura/diff/2e86cb1a
Branch: refs/heads/db/7657
Commit: 2e86cb1a4ee271e265d782c8aedf788173398561
Parents: 239ad6b
Author: Igor Bondarenko <je...@gmail.com>
Authored: Tue Sep 16 14:01:00 2014 +0300
Committer: Dave Brondsema <db...@slashdotmedia.com>
Committed: Fri Sep 26 16:39:46 2014 +0000
----------------------------------------------------------------------
Allura/allura/controllers/auth.py | 26 ++++++++++++++++----------
1 file changed, 16 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/allura/blob/2e86cb1a/Allura/allura/controllers/auth.py
----------------------------------------------------------------------
diff --git a/Allura/allura/controllers/auth.py b/Allura/allura/controllers/auth.py
index 0e4b4c4..87908b8 100644
--- a/Allura/allura/controllers/auth.py
+++ b/Allura/allura/controllers/auth.py
@@ -233,10 +233,7 @@ class AuthController(BaseController):
flash('No such address', 'error')
redirect(request.referer)
- @expose()
- def verify_addr(self, a):
- addr = M.EmailAddress.query.get(nonce=a)
-
+ def _verify_addr(self, addr):
if addr:
addr.confirmed = True
# Remove other non-confirmed emails claimed by other users
@@ -256,9 +253,14 @@ class AuthController(BaseController):
})
flash('Email address confirmed')
- h.auditlog_user('Email address verified: %s', addr._id)
+ h.auditlog_user('Email address verified: %s', addr._id, user=addr.claimed_by_user())
else:
flash('Unknown verification link', 'error')
+
+ @expose()
+ def verify_addr(self, a):
+ addr = M.EmailAddress.query.get(nonce=a)
+ self._verify_addr(addr)
redirect('/auth/preferences/')
@expose()
@@ -454,7 +456,7 @@ class PreferencesController(BaseController):
# clear it now, a new one will get set below
user.set_pref('email_address', None)
primary_addr = None
- h.auditlog_user('Email address deleted: %s', user.email_addresses[i])
+ h.auditlog_user('Email address deleted: %s', user.email_addresses[i], user=user)
del user.email_addresses[i]
if obj:
obj.delete()
@@ -469,9 +471,12 @@ class PreferencesController(BaseController):
user.email_addresses.append(new_addr['addr'])
em = M.EmailAddress.create(new_addr['addr'])
em.claimed_by_user_id = user._id
- em.send_verification_link()
- h.auditlog_user('New email address: %s', new_addr['addr'])
- flash('A verification email has been sent. Please check your email and click to confirm.')
+ if not admin:
+ em.send_verification_link()
+ flash('A verification email has been sent. Please check your email and click to confirm.')
+ else:
+ AuthController()._verify_addr(em)
+ h.auditlog_user('New email address: %s', new_addr['addr'], user=user)
else:
flash('Email address %s is invalid' % new_addr['addr'], 'error')
if not primary_addr and not user.get_pref('email_address') and user.email_addresses:
@@ -484,7 +489,8 @@ class PreferencesController(BaseController):
h.auditlog_user(
'Primary email changed: %s => %s',
user.get_pref('email_address'),
- primary_addr)
+ primary_addr,
+ user=user)
user.set_pref('email_address', primary_addr)
@h.vardec