From 327cddc157169bd12b58239fed0b286bf0cac16c Mon Sep 17 00:00:00 2001 From: Bjoern Schiessle Date: Thu, 4 May 2017 14:53:24 +0200 Subject: [PATCH] reset verification state if max tries are reached Signed-off-by: Bjoern Schiessle --- settings/BackgroundJobs/VerifyUserData.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/settings/BackgroundJobs/VerifyUserData.php b/settings/BackgroundJobs/VerifyUserData.php index 4a32398f6c..8c02ae1727 100644 --- a/settings/BackgroundJobs/VerifyUserData.php +++ b/settings/BackgroundJobs/VerifyUserData.php @@ -96,6 +96,8 @@ class VerifyUserData extends Job { $jobList->remove($this, $this->argument); if ($this->retainJob) { $this->reAddJob($jobList, $this->argument); + } else { + $this->resetVerificationState(); } } @@ -270,4 +272,17 @@ class VerifyUserData extends Job { return ((time() - $lastRun) > $this->interval); } + + /** + * reset verification state after max tries are reached + */ + protected function resetVerificationState() { + $user = $this->userManager->get($this->argument['uid']); + if ($user !== null) { + $accountData = $this->accountManager->getUser($user); + $accountData[$this->argument['type']]['verified'] = AccountManager::NOT_VERIFIED; + $this->accountManager->updateUser($user, $accountData); + } + } + }