Completed
Pull Request — master (#4212)
by Individual IT
13:52
created
apps/twofactor_backupcodes/lib/Activity/Provider.php 1 patch
Indentation   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -31,42 +31,42 @@
 block discarded – undo
31 31
 
32 32
 class Provider implements IProvider {
33 33
 
34
-	/** @var L10nFactory */
35
-	private $l10n;
34
+    /** @var L10nFactory */
35
+    private $l10n;
36 36
 
37
-	/** @var IURLGenerator */
38
-	private $urlGenerator;
37
+    /** @var IURLGenerator */
38
+    private $urlGenerator;
39 39
 
40
-	/** @var ILogger */
41
-	private $logger;
40
+    /** @var ILogger */
41
+    private $logger;
42 42
 
43
-	/**
44
-	 * @param L10nFactory $l10n
45
-	 * @param IURLGenerator $urlGenerator
46
-	 * @param ILogger $logger
47
-	 */
48
-	public function __construct(L10nFactory $l10n, IURLGenerator $urlGenerator, ILogger $logger) {
49
-		$this->logger = $logger;
50
-		$this->urlGenerator = $urlGenerator;
51
-		$this->l10n = $l10n;
52
-	}
43
+    /**
44
+     * @param L10nFactory $l10n
45
+     * @param IURLGenerator $urlGenerator
46
+     * @param ILogger $logger
47
+     */
48
+    public function __construct(L10nFactory $l10n, IURLGenerator $urlGenerator, ILogger $logger) {
49
+        $this->logger = $logger;
50
+        $this->urlGenerator = $urlGenerator;
51
+        $this->l10n = $l10n;
52
+    }
53 53
 
54
-	public function parse($language, IEvent $event, IEvent $previousEvent = null) {
55
-		if ($event->getApp() !== 'twofactor_backupcodes') {
56
-			throw new InvalidArgumentException();
57
-		}
54
+    public function parse($language, IEvent $event, IEvent $previousEvent = null) {
55
+        if ($event->getApp() !== 'twofactor_backupcodes') {
56
+            throw new InvalidArgumentException();
57
+        }
58 58
 
59
-		$l = $this->l10n->get('twofactor_backupcodes', $language);
59
+        $l = $this->l10n->get('twofactor_backupcodes', $language);
60 60
 
61
-		switch ($event->getSubject()) {
62
-			case 'codes_generated':
63
-				$event->setParsedSubject($l->t('You created two-factor backup codes for your account'));
64
-				$event->setIcon($this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg')));
65
-				break;
66
-			default:
67
-				throw new InvalidArgumentException();
68
-		}
69
-		return $event;
70
-	}
61
+        switch ($event->getSubject()) {
62
+            case 'codes_generated':
63
+                $event->setParsedSubject($l->t('You created two-factor backup codes for your account'));
64
+                $event->setIcon($this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg')));
65
+                break;
66
+            default:
67
+                throw new InvalidArgumentException();
68
+        }
69
+        return $event;
70
+    }
71 71
 
72 72
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Activity/GenericProvider.php 1 patch
Indentation   +36 added lines, -36 removed lines patch added patch discarded remove patch
@@ -31,47 +31,47 @@
 block discarded – undo
31 31
 
32 32
 class GenericProvider implements IProvider {
33 33
 
34
-	/** @var L10nFactory */
35
-	private $l10n;
34
+    /** @var L10nFactory */
35
+    private $l10n;
36 36
 
37
-	/** @var IURLGenerator */
38
-	private $urlGenerator;
37
+    /** @var IURLGenerator */
38
+    private $urlGenerator;
39 39
 
40
-	/** @var ILogger */
41
-	private $logger;
40
+    /** @var ILogger */
41
+    private $logger;
42 42
 
43
-	public function __construct(L10nFactory $l10n, IURLGenerator $urlGenerator, ILogger $logger) {
44
-		$this->logger = $logger;
45
-		$this->urlGenerator = $urlGenerator;
46
-		$this->l10n = $l10n;
47
-	}
43
+    public function __construct(L10nFactory $l10n, IURLGenerator $urlGenerator, ILogger $logger) {
44
+        $this->logger = $logger;
45
+        $this->urlGenerator = $urlGenerator;
46
+        $this->l10n = $l10n;
47
+    }
48 48
 
49
-	public function parse($language, IEvent $event, IEvent $previousEvent = null) {
50
-		if ($event->getType() !== 'twofactor') {
51
-			throw new InvalidArgumentException();
52
-		}
49
+    public function parse($language, IEvent $event, IEvent $previousEvent = null) {
50
+        if ($event->getType() !== 'twofactor') {
51
+            throw new InvalidArgumentException();
52
+        }
53 53
 
54
-		$l = $this->l10n->get('core', $language);
54
+        $l = $this->l10n->get('core', $language);
55 55
 
56
-		switch ($event->getSubject()) {
57
-			case 'twofactor_success':
58
-				$params = $event->getSubjectParameters();
59
-				$event->setParsedSubject($l->t('You successfully logged in using two-factor authentication (%1$s)', [
60
-							$params['provider'],
61
-					]));
62
-				$event->setIcon($this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg')));
63
-				break;
64
-			case 'twofactor_failed':
65
-				$params = $event->getSubjectParameters();
66
-				$event->setParsedSubject($l->t('A login attempt using two-factor authentication failed (%1$s)', [
67
-							$params['provider'],
68
-					]));
69
-				$event->setIcon($this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg')));
70
-				break;
71
-			default:
72
-				throw new InvalidArgumentException();
73
-		}
74
-		return $event;
75
-	}
56
+        switch ($event->getSubject()) {
57
+            case 'twofactor_success':
58
+                $params = $event->getSubjectParameters();
59
+                $event->setParsedSubject($l->t('You successfully logged in using two-factor authentication (%1$s)', [
60
+                            $params['provider'],
61
+                    ]));
62
+                $event->setIcon($this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg')));
63
+                break;
64
+            case 'twofactor_failed':
65
+                $params = $event->getSubjectParameters();
66
+                $event->setParsedSubject($l->t('A login attempt using two-factor authentication failed (%1$s)', [
67
+                            $params['provider'],
68
+                    ]));
69
+                $event->setIcon($this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg')));
70
+                break;
71
+            default:
72
+                throw new InvalidArgumentException();
73
+        }
74
+        return $event;
75
+    }
76 76
 
77 77
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Activity/GenericFilter.php 1 patch
Indentation   +26 added lines, -26 removed lines patch added patch discarded remove patch
@@ -28,39 +28,39 @@
 block discarded – undo
28 28
 
29 29
 class GenericFilter implements IFilter {
30 30
 
31
-	/** @var IURLGenerator */
32
-	private $urlGenerator;
31
+    /** @var IURLGenerator */
32
+    private $urlGenerator;
33 33
 
34
-	/** @var IL10N */
35
-	private $l10n;
34
+    /** @var IL10N */
35
+    private $l10n;
36 36
 
37
-	public function __construct(IURLGenerator $urlGenerator, IL10N $l10n) {
38
-		$this->urlGenerator = $urlGenerator;
39
-		$this->l10n = $l10n;
40
-	}
37
+    public function __construct(IURLGenerator $urlGenerator, IL10N $l10n) {
38
+        $this->urlGenerator = $urlGenerator;
39
+        $this->l10n = $l10n;
40
+    }
41 41
 
42
-	public function allowedApps() {
43
-		return [];
44
-	}
42
+    public function allowedApps() {
43
+        return [];
44
+    }
45 45
 
46
-	public function filterTypes(array $types) {
47
-		return array_intersect(['twofactor'], $types);
48
-	}
46
+    public function filterTypes(array $types) {
47
+        return array_intersect(['twofactor'], $types);
48
+    }
49 49
 
50
-	public function getIcon() {
51
-		return $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg'));
52
-	}
50
+    public function getIcon() {
51
+        return $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/password.svg'));
52
+    }
53 53
 
54
-	public function getIdentifier() {
55
-		return 'twofactor';
56
-	}
54
+    public function getIdentifier() {
55
+        return 'twofactor';
56
+    }
57 57
 
58
-	public function getName() {
59
-		return $this->l10n->t('Two-factor authentication');
60
-	}
58
+    public function getName() {
59
+        return $this->l10n->t('Two-factor authentication');
60
+    }
61 61
 
62
-	public function getPriority() {
63
-		return 30;
64
-	}
62
+    public function getPriority() {
63
+        return 30;
64
+    }
65 65
 
66 66
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Activity/GenericSetting.php 1 patch
Indentation   +26 added lines, -26 removed lines patch added patch discarded remove patch
@@ -27,39 +27,39 @@
 block discarded – undo
27 27
 
28 28
 class GenericSetting implements ISetting {
29 29
 
30
-	/** @var IL10N */
31
-	private $l10n;
30
+    /** @var IL10N */
31
+    private $l10n;
32 32
 
33
-	public function __construct(IL10N $l10n) {
34
-		$this->l10n = $l10n;
35
-	}
33
+    public function __construct(IL10N $l10n) {
34
+        $this->l10n = $l10n;
35
+    }
36 36
 
37
-	public function canChangeMail() {
38
-		return false;
39
-	}
37
+    public function canChangeMail() {
38
+        return false;
39
+    }
40 40
 
41
-	public function canChangeStream() {
42
-		return false;
43
-	}
41
+    public function canChangeStream() {
42
+        return false;
43
+    }
44 44
 
45
-	public function getIdentifier() {
46
-		return 'twofactor';
47
-	}
45
+    public function getIdentifier() {
46
+        return 'twofactor';
47
+    }
48 48
 
49
-	public function getName() {
50
-		return $this->l10n->t('Two-factor authentication');
51
-	}
49
+    public function getName() {
50
+        return $this->l10n->t('Two-factor authentication');
51
+    }
52 52
 
53
-	public function getPriority() {
54
-		return 30;
55
-	}
53
+    public function getPriority() {
54
+        return 30;
55
+    }
56 56
 
57
-	public function isDefaultEnabledMail() {
58
-		return true;
59
-	}
57
+    public function isDefaultEnabledMail() {
58
+        return true;
59
+    }
60 60
 
61
-	public function isDefaultEnabledStream() {
62
-		return true;
63
-	}
61
+    public function isDefaultEnabledStream() {
62
+        return true;
63
+    }
64 64
 
65 65
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Service/BackupCodeStorage.php 1 patch
Indentation   +128 added lines, -128 removed lines patch added patch discarded remove patch
@@ -33,133 +33,133 @@
 block discarded – undo
33 33
 
34 34
 class BackupCodeStorage {
35 35
 
36
-	private static $CODE_LENGTH = 16;
37
-
38
-	/** @var BackupCodeMapper */
39
-	private $mapper;
40
-
41
-	/** @var IHasher */
42
-	private $hasher;
43
-
44
-	/** @var ISecureRandom */
45
-	private $random;
46
-
47
-	/** @var IManager */
48
-	private $activityManager;
49
-
50
-	/** @var ILogger */
51
-	private $logger;
52
-
53
-	/**
54
-	 * @param BackupCodeMapper $mapper
55
-	 * @param ISecureRandom $random
56
-	 * @param IHasher $hasher
57
-	 * @param IManager $activityManager
58
-	 * @param ILogger $logger
59
-	 */
60
-	public function __construct(BackupCodeMapper $mapper, ISecureRandom $random, IHasher $hasher,
61
-		IManager $activityManager, ILogger $logger) {
62
-		$this->mapper = $mapper;
63
-		$this->hasher = $hasher;
64
-		$this->random = $random;
65
-		$this->activityManager = $activityManager;
66
-		$this->logger = $logger;
67
-	}
68
-
69
-	/**
70
-	 * @param IUser $user
71
-	 * @return string[]
72
-	 */
73
-	public function createCodes(IUser $user, $number = 10) {
74
-		$result = [];
75
-
76
-		// Delete existing ones
77
-		$this->mapper->deleteCodes($user);
78
-
79
-		$uid = $user->getUID();
80
-		foreach (range(1, min([$number, 20])) as $i) {
81
-			$code = $this->random->generate(self::$CODE_LENGTH, ISecureRandom::CHAR_UPPER . ISecureRandom::CHAR_DIGITS);
82
-
83
-			$dbCode = new BackupCode();
84
-			$dbCode->setUserId($uid);
85
-			$dbCode->setCode($this->hasher->hash($code));
86
-			$dbCode->setUsed(0);
87
-			$this->mapper->insert($dbCode);
88
-
89
-			array_push($result, $code);
90
-		}
91
-
92
-		$this->publishEvent($user, 'codes_generated');
93
-
94
-		return $result;
95
-	}
96
-
97
-	/**
98
-	 * Push an event the user's activity stream
99
-	 *
100
-	 * @param IUser $user
101
-	 * @param string $event
102
-	 */
103
-	private function publishEvent(IUser $user, $event) {
104
-		$activity = $this->activityManager->generateEvent();
105
-		$activity->setApp('twofactor_backupcodes')
106
-			->setType('twofactor')
107
-			->setAuthor($user->getUID())
108
-			->setAffectedUser($user->getUID())
109
-			->setSubject($event);
110
-		try {
111
-			$this->activityManager->publish($activity);
112
-		} catch (BadMethodCallException $e) {
113
-			$this->logger->warning('could not publish backup code creation activity', ['app' => 'twofactor_backupcodes']);
114
-			$this->logger->logException($e, ['app' => 'twofactor_backupcodes']);
115
-		}
116
-	}
117
-
118
-	/**
119
-	 * @param IUser $user
120
-	 * @return bool
121
-	 */
122
-	public function hasBackupCodes(IUser $user) {
123
-		$codes = $this->mapper->getBackupCodes($user);
124
-		return count($codes) > 0;
125
-	}
126
-
127
-	/**
128
-	 * @param IUser $user
129
-	 * @return array
130
-	 */
131
-	public function getBackupCodesState(IUser $user) {
132
-		$codes = $this->mapper->getBackupCodes($user);
133
-		$total = count($codes);
134
-		$used = 0;
135
-		array_walk($codes, function (BackupCode $code) use (&$used) {
136
-			if (1 === (int) $code->getUsed()) {
137
-				$used++;
138
-			}
139
-		});
140
-		return [
141
-			'enabled' => $total > 0,
142
-			'total' => $total,
143
-			'used' => $used,
144
-		];
145
-	}
146
-
147
-	/**
148
-	 * @param IUser $user
149
-	 * @param string $code
150
-	 * @return bool
151
-	 */
152
-	public function validateCode(IUser $user, $code) {
153
-		$dbCodes = $this->mapper->getBackupCodes($user);
154
-
155
-		foreach ($dbCodes as $dbCode) {
156
-			if (0 === (int) $dbCode->getUsed() && $this->hasher->verify($code, $dbCode->getCode())) {
157
-				$dbCode->setUsed(1);
158
-				$this->mapper->update($dbCode);
159
-				return true;
160
-			}
161
-		}
162
-		return false;
163
-	}
36
+    private static $CODE_LENGTH = 16;
37
+
38
+    /** @var BackupCodeMapper */
39
+    private $mapper;
40
+
41
+    /** @var IHasher */
42
+    private $hasher;
43
+
44
+    /** @var ISecureRandom */
45
+    private $random;
46
+
47
+    /** @var IManager */
48
+    private $activityManager;
49
+
50
+    /** @var ILogger */
51
+    private $logger;
52
+
53
+    /**
54
+     * @param BackupCodeMapper $mapper
55
+     * @param ISecureRandom $random
56
+     * @param IHasher $hasher
57
+     * @param IManager $activityManager
58
+     * @param ILogger $logger
59
+     */
60
+    public function __construct(BackupCodeMapper $mapper, ISecureRandom $random, IHasher $hasher,
61
+        IManager $activityManager, ILogger $logger) {
62
+        $this->mapper = $mapper;
63
+        $this->hasher = $hasher;
64
+        $this->random = $random;
65
+        $this->activityManager = $activityManager;
66
+        $this->logger = $logger;
67
+    }
68
+
69
+    /**
70
+     * @param IUser $user
71
+     * @return string[]
72
+     */
73
+    public function createCodes(IUser $user, $number = 10) {
74
+        $result = [];
75
+
76
+        // Delete existing ones
77
+        $this->mapper->deleteCodes($user);
78
+
79
+        $uid = $user->getUID();
80
+        foreach (range(1, min([$number, 20])) as $i) {
81
+            $code = $this->random->generate(self::$CODE_LENGTH, ISecureRandom::CHAR_UPPER . ISecureRandom::CHAR_DIGITS);
82
+
83
+            $dbCode = new BackupCode();
84
+            $dbCode->setUserId($uid);
85
+            $dbCode->setCode($this->hasher->hash($code));
86
+            $dbCode->setUsed(0);
87
+            $this->mapper->insert($dbCode);
88
+
89
+            array_push($result, $code);
90
+        }
91
+
92
+        $this->publishEvent($user, 'codes_generated');
93
+
94
+        return $result;
95
+    }
96
+
97
+    /**
98
+     * Push an event the user's activity stream
99
+     *
100
+     * @param IUser $user
101
+     * @param string $event
102
+     */
103
+    private function publishEvent(IUser $user, $event) {
104
+        $activity = $this->activityManager->generateEvent();
105
+        $activity->setApp('twofactor_backupcodes')
106
+            ->setType('twofactor')
107
+            ->setAuthor($user->getUID())
108
+            ->setAffectedUser($user->getUID())
109
+            ->setSubject($event);
110
+        try {
111
+            $this->activityManager->publish($activity);
112
+        } catch (BadMethodCallException $e) {
113
+            $this->logger->warning('could not publish backup code creation activity', ['app' => 'twofactor_backupcodes']);
114
+            $this->logger->logException($e, ['app' => 'twofactor_backupcodes']);
115
+        }
116
+    }
117
+
118
+    /**
119
+     * @param IUser $user
120
+     * @return bool
121
+     */
122
+    public function hasBackupCodes(IUser $user) {
123
+        $codes = $this->mapper->getBackupCodes($user);
124
+        return count($codes) > 0;
125
+    }
126
+
127
+    /**
128
+     * @param IUser $user
129
+     * @return array
130
+     */
131
+    public function getBackupCodesState(IUser $user) {
132
+        $codes = $this->mapper->getBackupCodes($user);
133
+        $total = count($codes);
134
+        $used = 0;
135
+        array_walk($codes, function (BackupCode $code) use (&$used) {
136
+            if (1 === (int) $code->getUsed()) {
137
+                $used++;
138
+            }
139
+        });
140
+        return [
141
+            'enabled' => $total > 0,
142
+            'total' => $total,
143
+            'used' => $used,
144
+        ];
145
+    }
146
+
147
+    /**
148
+     * @param IUser $user
149
+     * @param string $code
150
+     * @return bool
151
+     */
152
+    public function validateCode(IUser $user, $code) {
153
+        $dbCodes = $this->mapper->getBackupCodes($user);
154
+
155
+        foreach ($dbCodes as $dbCode) {
156
+            if (0 === (int) $dbCode->getUsed() && $this->hasher->verify($code, $dbCode->getCode())) {
157
+                $dbCode->setUsed(1);
158
+                $this->mapper->update($dbCode);
159
+                return true;
160
+            }
161
+        }
162
+        return false;
163
+    }
164 164
 
165 165
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Controller/SettingsController.php 1 patch
Indentation   +37 added lines, -37 removed lines patch added patch discarded remove patch
@@ -30,46 +30,46 @@
 block discarded – undo
30 30
 
31 31
 class SettingsController extends Controller {
32 32
 
33
-	/** @var BackupCodeStorage */
34
-	private $storage;
33
+    /** @var BackupCodeStorage */
34
+    private $storage;
35 35
 
36
-	/** @var IUserSession */
37
-	private $userSession;
36
+    /** @var IUserSession */
37
+    private $userSession;
38 38
 
39
-	/**
40
-	 * @param string $appName
41
-	 * @param IRequest $request
42
-	 * @param BackupCodeStorage $storage
43
-	 * @param IUserSession $userSession
44
-	 */
45
-	public function __construct($appName, IRequest $request, BackupCodeStorage $storage, IUserSession $userSession) {
46
-		parent::__construct($appName, $request);
47
-		$this->userSession = $userSession;
48
-		$this->storage = $storage;
49
-	}
39
+    /**
40
+     * @param string $appName
41
+     * @param IRequest $request
42
+     * @param BackupCodeStorage $storage
43
+     * @param IUserSession $userSession
44
+     */
45
+    public function __construct($appName, IRequest $request, BackupCodeStorage $storage, IUserSession $userSession) {
46
+        parent::__construct($appName, $request);
47
+        $this->userSession = $userSession;
48
+        $this->storage = $storage;
49
+    }
50 50
 
51
-	/**
52
-	 * @NoAdminRequired
53
-	 * @return JSONResponse
54
-	 */
55
-	public function state() {
56
-		$user = $this->userSession->getUser();
57
-		return $this->storage->getBackupCodesState($user);
58
-	}
51
+    /**
52
+     * @NoAdminRequired
53
+     * @return JSONResponse
54
+     */
55
+    public function state() {
56
+        $user = $this->userSession->getUser();
57
+        return $this->storage->getBackupCodesState($user);
58
+    }
59 59
 
60
-	/**
61
-	 * @NoAdminRequired
62
-	 * @PasswordConfirmationRequired
63
-	 *
64
-	 * @return JSONResponse
65
-	 */
66
-	public function createCodes() {
67
-		$user = $this->userSession->getUser();
68
-		$codes = $this->storage->createCodes($user);
69
-		return new JSONResponse([
70
-			'codes' => $codes,
71
-			'state' => $this->storage->getBackupCodesState($user),
72
-		]);
73
-	}
60
+    /**
61
+     * @NoAdminRequired
62
+     * @PasswordConfirmationRequired
63
+     *
64
+     * @return JSONResponse
65
+     */
66
+    public function createCodes() {
67
+        $user = $this->userSession->getUser();
68
+        $codes = $this->storage->createCodes($user);
69
+        return new JSONResponse([
70
+            'codes' => $codes,
71
+            'state' => $this->storage->getBackupCodesState($user),
72
+        ]);
73
+    }
74 74
 
75 75
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Db/BackupCodeMapper.php 1 patch
Indentation   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -27,38 +27,38 @@
 block discarded – undo
27 27
 
28 28
 class BackupCodeMapper extends Mapper {
29 29
 
30
-	public function __construct(IDBConnection $db) {
31
-		parent::__construct($db, 'twofactor_backup_codes');
32
-	}
30
+    public function __construct(IDBConnection $db) {
31
+        parent::__construct($db, 'twofactor_backup_codes');
32
+    }
33 33
 
34
-	/**
35
-	 * @param IUser $user
36
-	 * @return BackupCode[]
37
-	 */
38
-	public function getBackupCodes(IUser $user) {
39
-		/* @var IQueryBuilder $qb */
40
-		$qb = $this->db->getQueryBuilder();
34
+    /**
35
+     * @param IUser $user
36
+     * @return BackupCode[]
37
+     */
38
+    public function getBackupCodes(IUser $user) {
39
+        /* @var IQueryBuilder $qb */
40
+        $qb = $this->db->getQueryBuilder();
41 41
 
42
-		$qb->select('id', 'user_id', 'code', 'used')
43
-			->from('twofactor_backup_codes')
44
-			->where($qb->expr()->eq('user_id', $qb->createNamedParameter($user->getUID())));
45
-		$result = $qb->execute();
42
+        $qb->select('id', 'user_id', 'code', 'used')
43
+            ->from('twofactor_backup_codes')
44
+            ->where($qb->expr()->eq('user_id', $qb->createNamedParameter($user->getUID())));
45
+        $result = $qb->execute();
46 46
 
47
-		$rows = $result->fetchAll();
48
-		$result->closeCursor();
47
+        $rows = $result->fetchAll();
48
+        $result->closeCursor();
49 49
 
50
-		return array_map(function ($row) {
51
-			return BackupCode::fromRow($row);
52
-		}, $rows);
53
-	}
50
+        return array_map(function ($row) {
51
+            return BackupCode::fromRow($row);
52
+        }, $rows);
53
+    }
54 54
 
55
-	public function deleteCodes(IUser $user) {
56
-		/* @var IQueryBuilder $qb */
57
-		$qb = $this->db->getQueryBuilder();
55
+    public function deleteCodes(IUser $user) {
56
+        /* @var IQueryBuilder $qb */
57
+        $qb = $this->db->getQueryBuilder();
58 58
 
59
-		$qb->delete('twofactor_backup_codes')
60
-			->where($qb->expr()->eq('user_id', $qb->createNamedParameter($user->getUID())));
61
-		$qb->execute();
62
-	}
59
+        $qb->delete('twofactor_backup_codes')
60
+            ->where($qb->expr()->eq('user_id', $qb->createNamedParameter($user->getUID())));
61
+        $qb->execute();
62
+    }
63 63
 
64 64
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/lib/Db/BackupCode.php 1 patch
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -34,13 +34,13 @@
 block discarded – undo
34 34
  */
35 35
 class BackupCode extends Entity {
36 36
 
37
-	/** @var string */
38
-	protected $userId;
37
+    /** @var string */
38
+    protected $userId;
39 39
 
40
-	/** @var string */
41
-	protected $code;
40
+    /** @var string */
41
+    protected $code;
42 42
 
43
-	/** @var int */
44
-	protected $used;
43
+    /** @var int */
44
+    protected $used;
45 45
 
46 46
 }
Please login to merge, or discard this patch.
apps/twofactor_backupcodes/appinfo/routes.php 1 patch
Indentation   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -21,17 +21,17 @@
 block discarded – undo
21 21
  */
22 22
 // @codeCoverageIgnoreStart
23 23
 return [
24
-	'routes' => [
25
-		[
26
-			'name' => 'settings#state',
27
-			'url' => '/settings/state',
28
-			'verb' => 'GET'
29
-		],
30
-		[
31
-			'name' => 'settings#createCodes',
32
-			'url' => '/settings/create',
33
-			'verb' => 'POST'
34
-		],
35
-	]
24
+    'routes' => [
25
+        [
26
+            'name' => 'settings#state',
27
+            'url' => '/settings/state',
28
+            'verb' => 'GET'
29
+        ],
30
+        [
31
+            'name' => 'settings#createCodes',
32
+            'url' => '/settings/create',
33
+            'verb' => 'POST'
34
+        ],
35
+    ]
36 36
 ];
37 37
 // @codeCoverageIgnoreEnd
Please login to merge, or discard this patch.