Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f4405d12 authored by Akhil's avatar Akhil 🙂
Browse files

Reset admin access token to defaults if not found or expired

parent 4ec22439
Loading
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -18,8 +18,8 @@ class SSOService {
	private CurlService $curl;
	private ILogger $logger;
	private array $ssoConfig = [];
	private string $adminAccessToken;
	private int $adminAccessTokenExpiresAt;
	private string $adminAccessToken = '';
	private int $adminAccessTokenExpiresAt = 0;
	private string $currentUserId;
	private string $currentUserName;
	private ICrypto $crypto;
@@ -204,10 +204,12 @@ class SSOService {
		// Check if admin access token exists and has not expired
		// Use a grace period of 10 seconds to account for network latencies
		if (!empty($this->adminAccessToken)
			&& !empty($this->adminAccessTokenExpiresAt)
			&& $this->adminAccessTokenExpiresAt !== 0
			&& (time() < ($this->adminAccessTokenExpiresAt - 10))) {
			return;
		}
		$this->adminAccessToken = '';
		$this->adminAccessTokenExpiresAt = 0;
		$adminAccessTokenRoute = $this->ssoConfig['root_url'] . self::ADMIN_TOKEN_ENDPOINT;
		$requestBody = [
			'username' => $this->ssoConfig['admin_username'],