Completed
Push — master ( 5520ba...abd33b )
by Morris
28:26 queued 06:26
created
settings/Controller/AuthSettingsController.php 2 patches
Indentation   +172 added lines, -172 removed lines patch added patch discarded remove patch
@@ -42,177 +42,177 @@
 block discarded – undo
42 42
 
43 43
 class AuthSettingsController extends Controller {
44 44
 
45
-	/** @var IProvider */
46
-	private $tokenProvider;
47
-
48
-	/** @var IUserManager */
49
-	private $userManager;
50
-
51
-	/** @var ISession */
52
-	private $session;
53
-
54
-	/** @var string */
55
-	private $uid;
56
-
57
-	/** @var ISecureRandom */
58
-	private $random;
59
-
60
-	/**
61
-	 * @param string $appName
62
-	 * @param IRequest $request
63
-	 * @param IProvider $tokenProvider
64
-	 * @param IUserManager $userManager
65
-	 * @param ISession $session
66
-	 * @param ISecureRandom $random
67
-	 * @param string $userId
68
-	 */
69
-	public function __construct($appName, IRequest $request, IProvider $tokenProvider, IUserManager $userManager,
70
-		ISession $session, ISecureRandom $random, $userId) {
71
-		parent::__construct($appName, $request);
72
-		$this->tokenProvider = $tokenProvider;
73
-		$this->userManager = $userManager;
74
-		$this->uid = $userId;
75
-		$this->session = $session;
76
-		$this->random = $random;
77
-	}
78
-
79
-	/**
80
-	 * @NoAdminRequired
81
-	 * @NoSubadminRequired
82
-	 *
83
-	 * @return JSONResponse|array
84
-	 */
85
-	public function index() {
86
-		$user = $this->userManager->get($this->uid);
87
-		if ($user === null) {
88
-			return [];
89
-		}
90
-		$tokens = $this->tokenProvider->getTokenByUser($user);
45
+    /** @var IProvider */
46
+    private $tokenProvider;
47
+
48
+    /** @var IUserManager */
49
+    private $userManager;
50
+
51
+    /** @var ISession */
52
+    private $session;
53
+
54
+    /** @var string */
55
+    private $uid;
56
+
57
+    /** @var ISecureRandom */
58
+    private $random;
59
+
60
+    /**
61
+     * @param string $appName
62
+     * @param IRequest $request
63
+     * @param IProvider $tokenProvider
64
+     * @param IUserManager $userManager
65
+     * @param ISession $session
66
+     * @param ISecureRandom $random
67
+     * @param string $userId
68
+     */
69
+    public function __construct($appName, IRequest $request, IProvider $tokenProvider, IUserManager $userManager,
70
+        ISession $session, ISecureRandom $random, $userId) {
71
+        parent::__construct($appName, $request);
72
+        $this->tokenProvider = $tokenProvider;
73
+        $this->userManager = $userManager;
74
+        $this->uid = $userId;
75
+        $this->session = $session;
76
+        $this->random = $random;
77
+    }
78
+
79
+    /**
80
+     * @NoAdminRequired
81
+     * @NoSubadminRequired
82
+     *
83
+     * @return JSONResponse|array
84
+     */
85
+    public function index() {
86
+        $user = $this->userManager->get($this->uid);
87
+        if ($user === null) {
88
+            return [];
89
+        }
90
+        $tokens = $this->tokenProvider->getTokenByUser($user);
91 91
 		
92
-		try {
93
-			$sessionId = $this->session->getId();
94
-		} catch (SessionNotAvailableException $ex) {
95
-			return $this->getServiceNotAvailableResponse();
96
-		}
97
-		try {
98
-			$sessionToken = $this->tokenProvider->getToken($sessionId);
99
-		} catch (InvalidTokenException $ex) {
100
-			return $this->getServiceNotAvailableResponse();
101
-		}
102
-
103
-		return array_map(function(IToken $token) use ($sessionToken) {
104
-			$data = $token->jsonSerialize();
105
-			if ($sessionToken->getId() === $token->getId()) {
106
-				$data['canDelete'] = false;
107
-				$data['current'] = true;
108
-			} else {
109
-				$data['canDelete'] = true;
110
-			}
111
-			return $data;
112
-		}, $tokens);
113
-	}
114
-
115
-	/**
116
-	 * @NoAdminRequired
117
-	 * @NoSubadminRequired
118
-	 * @PasswordConfirmationRequired
119
-	 *
120
-	 * @param string $name
121
-	 * @return JSONResponse
122
-	 */
123
-	public function create($name) {
124
-		try {
125
-			$sessionId = $this->session->getId();
126
-		} catch (SessionNotAvailableException $ex) {
127
-			return $this->getServiceNotAvailableResponse();
128
-		}
129
-
130
-		try {
131
-			$sessionToken = $this->tokenProvider->getToken($sessionId);
132
-			$loginName = $sessionToken->getLoginName();
133
-			try {
134
-				$password = $this->tokenProvider->getPassword($sessionToken, $sessionId);
135
-			} catch (PasswordlessTokenException $ex) {
136
-				$password = null;
137
-			}
138
-		} catch (InvalidTokenException $ex) {
139
-			return $this->getServiceNotAvailableResponse();
140
-		}
141
-
142
-		$token = $this->generateRandomDeviceToken();
143
-		$deviceToken = $this->tokenProvider->generateToken($token, $this->uid, $loginName, $password, $name, IToken::PERMANENT_TOKEN);
144
-		$tokenData = $deviceToken->jsonSerialize();
145
-		$tokenData['canDelete'] = true;
146
-
147
-		return new JSONResponse([
148
-			'token' => $token,
149
-			'loginName' => $loginName,
150
-			'deviceToken' => $tokenData,
151
-		]);
152
-	}
153
-
154
-	/**
155
-	 * @return JSONResponse
156
-	 */
157
-	private function getServiceNotAvailableResponse() {
158
-		$resp = new JSONResponse();
159
-		$resp->setStatus(Http::STATUS_SERVICE_UNAVAILABLE);
160
-		return $resp;
161
-	}
162
-
163
-	/**
164
-	 * Return a 25 digit device password
165
-	 *
166
-	 * Example: AbCdE-fGhJk-MnPqR-sTwXy-23456
167
-	 *
168
-	 * @return string
169
-	 */
170
-	private function generateRandomDeviceToken() {
171
-		$groups = [];
172
-		for ($i = 0; $i < 5; $i++) {
173
-			$groups[] = $this->random->generate(5, ISecureRandom::CHAR_HUMAN_READABLE);
174
-		}
175
-		return implode('-', $groups);
176
-	}
177
-
178
-	/**
179
-	 * @NoAdminRequired
180
-	 * @NoSubadminRequired
181
-	 *
182
-	 * @return array
183
-	 */
184
-	public function destroy($id) {
185
-		$user = $this->userManager->get($this->uid);
186
-		if (is_null($user)) {
187
-			return [];
188
-		}
189
-
190
-		$this->tokenProvider->invalidateTokenById($user, $id);
191
-		return [];
192
-	}
193
-
194
-	/**
195
-	 * @NoAdminRequired
196
-	 * @NoSubadminRequired
197
-	 *
198
-	 * @param int $id
199
-	 * @param array $scope
200
-	 * @return array|JSONResponse
201
-	 */
202
-	public function update($id, array $scope) {
203
-		try {
204
-			$token = $this->tokenProvider->getTokenById((string)$id);
205
-			if ($token->getUID() !== $this->uid) {
206
-				throw new InvalidTokenException('User mismatch');
207
-			}
208
-		} catch (InvalidTokenException $e) {
209
-			return new JSONResponse([], Http::STATUS_NOT_FOUND);
210
-		}
211
-
212
-		$token->setScope([
213
-			'filesystem' => $scope['filesystem']
214
-		]);
215
-		$this->tokenProvider->updateToken($token);
216
-		return [];
217
-	}
92
+        try {
93
+            $sessionId = $this->session->getId();
94
+        } catch (SessionNotAvailableException $ex) {
95
+            return $this->getServiceNotAvailableResponse();
96
+        }
97
+        try {
98
+            $sessionToken = $this->tokenProvider->getToken($sessionId);
99
+        } catch (InvalidTokenException $ex) {
100
+            return $this->getServiceNotAvailableResponse();
101
+        }
102
+
103
+        return array_map(function(IToken $token) use ($sessionToken) {
104
+            $data = $token->jsonSerialize();
105
+            if ($sessionToken->getId() === $token->getId()) {
106
+                $data['canDelete'] = false;
107
+                $data['current'] = true;
108
+            } else {
109
+                $data['canDelete'] = true;
110
+            }
111
+            return $data;
112
+        }, $tokens);
113
+    }
114
+
115
+    /**
116
+     * @NoAdminRequired
117
+     * @NoSubadminRequired
118
+     * @PasswordConfirmationRequired
119
+     *
120
+     * @param string $name
121
+     * @return JSONResponse
122
+     */
123
+    public function create($name) {
124
+        try {
125
+            $sessionId = $this->session->getId();
126
+        } catch (SessionNotAvailableException $ex) {
127
+            return $this->getServiceNotAvailableResponse();
128
+        }
129
+
130
+        try {
131
+            $sessionToken = $this->tokenProvider->getToken($sessionId);
132
+            $loginName = $sessionToken->getLoginName();
133
+            try {
134
+                $password = $this->tokenProvider->getPassword($sessionToken, $sessionId);
135
+            } catch (PasswordlessTokenException $ex) {
136
+                $password = null;
137
+            }
138
+        } catch (InvalidTokenException $ex) {
139
+            return $this->getServiceNotAvailableResponse();
140
+        }
141
+
142
+        $token = $this->generateRandomDeviceToken();
143
+        $deviceToken = $this->tokenProvider->generateToken($token, $this->uid, $loginName, $password, $name, IToken::PERMANENT_TOKEN);
144
+        $tokenData = $deviceToken->jsonSerialize();
145
+        $tokenData['canDelete'] = true;
146
+
147
+        return new JSONResponse([
148
+            'token' => $token,
149
+            'loginName' => $loginName,
150
+            'deviceToken' => $tokenData,
151
+        ]);
152
+    }
153
+
154
+    /**
155
+     * @return JSONResponse
156
+     */
157
+    private function getServiceNotAvailableResponse() {
158
+        $resp = new JSONResponse();
159
+        $resp->setStatus(Http::STATUS_SERVICE_UNAVAILABLE);
160
+        return $resp;
161
+    }
162
+
163
+    /**
164
+     * Return a 25 digit device password
165
+     *
166
+     * Example: AbCdE-fGhJk-MnPqR-sTwXy-23456
167
+     *
168
+     * @return string
169
+     */
170
+    private function generateRandomDeviceToken() {
171
+        $groups = [];
172
+        for ($i = 0; $i < 5; $i++) {
173
+            $groups[] = $this->random->generate(5, ISecureRandom::CHAR_HUMAN_READABLE);
174
+        }
175
+        return implode('-', $groups);
176
+    }
177
+
178
+    /**
179
+     * @NoAdminRequired
180
+     * @NoSubadminRequired
181
+     *
182
+     * @return array
183
+     */
184
+    public function destroy($id) {
185
+        $user = $this->userManager->get($this->uid);
186
+        if (is_null($user)) {
187
+            return [];
188
+        }
189
+
190
+        $this->tokenProvider->invalidateTokenById($user, $id);
191
+        return [];
192
+    }
193
+
194
+    /**
195
+     * @NoAdminRequired
196
+     * @NoSubadminRequired
197
+     *
198
+     * @param int $id
199
+     * @param array $scope
200
+     * @return array|JSONResponse
201
+     */
202
+    public function update($id, array $scope) {
203
+        try {
204
+            $token = $this->tokenProvider->getTokenById((string)$id);
205
+            if ($token->getUID() !== $this->uid) {
206
+                throw new InvalidTokenException('User mismatch');
207
+            }
208
+        } catch (InvalidTokenException $e) {
209
+            return new JSONResponse([], Http::STATUS_NOT_FOUND);
210
+        }
211
+
212
+        $token->setScope([
213
+            'filesystem' => $scope['filesystem']
214
+        ]);
215
+        $this->tokenProvider->updateToken($token);
216
+        return [];
217
+    }
218 218
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -201,7 +201,7 @@
 block discarded – undo
201 201
 	 */
202 202
 	public function update($id, array $scope) {
203 203
 		try {
204
-			$token = $this->tokenProvider->getTokenById((string)$id);
204
+			$token = $this->tokenProvider->getTokenById((string) $id);
205 205
 			if ($token->getUID() !== $this->uid) {
206 206
 				throw new InvalidTokenException('User mismatch');
207 207
 			}
Please login to merge, or discard this patch.