= 2) { $companyId = $parts[0]; } } $buildQuery = [ 'provider' => $provider, ]; // if ($companyId) { // $buildQuery['companyId'] = $companyId; // } $queryString = http_build_query($buildQuery); return 'https://'.self::DEFAULT_HOST."/Account/ExternalLogin?{$queryString}"; } public function buildCallbackUrl(string $configuredUrl, string $callbackPath): string { $parsed = parse_url($configuredUrl); $host = $parsed['host'] ?? self::DEFAULT_HOST; if (self::DEFAULT_HOST !== $host) { $parts = explode('.', $host); if (count($parts) >= 2 && 'keka' === $parts[1]) { $host = self::DEFAULT_HOST; } } $scheme = $parsed['scheme'] ?? 'https'; return "{$scheme}://{$host}/".mb_ltrim($callbackPath, '/'); } }