chg: dev: small refactors on back-end #8
This commit is contained in:
@@ -13,6 +13,7 @@ namespace App\Controller;
|
||||
use App\Entity\User;
|
||||
use App\Security\PasskeyToken;
|
||||
use App\Service\WebAuthnService;
|
||||
use Exception;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\HttpFoundation\JsonResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
@@ -25,6 +26,7 @@ use Webauthn\PublicKeyCredentialCreationOptions;
|
||||
use Webauthn\PublicKeyCredentialParameters;
|
||||
use Webauthn\PublicKeyCredentialRpEntity;
|
||||
use Webauthn\PublicKeyCredentialUserEntity;
|
||||
use function random_bytes;
|
||||
|
||||
/**
|
||||
* Class WebAuthnController
|
||||
@@ -78,7 +80,7 @@ class WebAuthnController extends AbstractController
|
||||
$creationOptions = PublicKeyCredentialCreationOptions::create(
|
||||
$rpEntity,
|
||||
$userEntity,
|
||||
\random_bytes(32),
|
||||
random_bytes(32),
|
||||
$credentialParameters,
|
||||
$authenticatorSelectionCriteria,
|
||||
PublicKeyCredentialCreationOptions::ATTESTATION_CONVEYANCE_PREFERENCE_DIRECT
|
||||
@@ -113,7 +115,7 @@ class WebAuthnController extends AbstractController
|
||||
];
|
||||
|
||||
return new JsonResponse($response);
|
||||
} catch (\Exception $e) {
|
||||
} catch (Exception $e) {
|
||||
return new JsonResponse(
|
||||
['error' => $e->getMessage()],
|
||||
Response::HTTP_BAD_REQUEST
|
||||
@@ -155,7 +157,7 @@ class WebAuthnController extends AbstractController
|
||||
$request->getSession()->remove('webauthn_credential_name');
|
||||
|
||||
return new JsonResponse(['success' => true]);
|
||||
} catch (\Exception $e) {
|
||||
} catch (Exception $e) {
|
||||
return new JsonResponse(
|
||||
['error' => 'Registration failed: ' . $e->getMessage()],
|
||||
Response::HTTP_BAD_REQUEST
|
||||
@@ -219,7 +221,7 @@ class WebAuthnController extends AbstractController
|
||||
}
|
||||
|
||||
return new JsonResponse(['error' => 'Credential not found'], Response::HTTP_NOT_FOUND);
|
||||
} catch (\Exception $e) {
|
||||
} catch (Exception $e) {
|
||||
return new JsonResponse(
|
||||
['error' => $e->getMessage()],
|
||||
Response::HTTP_BAD_REQUEST
|
||||
@@ -232,7 +234,7 @@ class WebAuthnController extends AbstractController
|
||||
{
|
||||
try {
|
||||
/** Generate challenge */
|
||||
$challenge = \random_bytes(32);
|
||||
$challenge = random_bytes(32);
|
||||
|
||||
/** Store in session for verification later */
|
||||
$request->getSession()->set('webauthn_request_challenge', $challenge);
|
||||
@@ -250,7 +252,7 @@ class WebAuthnController extends AbstractController
|
||||
];
|
||||
|
||||
return new JsonResponse($response);
|
||||
} catch (\Exception $e) {
|
||||
} catch (Exception $e) {
|
||||
return new JsonResponse(
|
||||
['error' => $e->getMessage()],
|
||||
Response::HTTP_BAD_REQUEST
|
||||
@@ -304,7 +306,7 @@ class WebAuthnController extends AbstractController
|
||||
'redirect' => '/',
|
||||
'message' => 'Successfully authenticated with passkey',
|
||||
]);
|
||||
} catch (\Exception $e) {
|
||||
} catch (Exception $e) {
|
||||
return new JsonResponse(
|
||||
['error' => $e->getMessage()],
|
||||
Response::HTTP_BAD_REQUEST
|
||||
|
||||
@@ -24,7 +24,7 @@ use DateTime;
|
||||
* @link www.splendidbear.org
|
||||
* @since 2026. 04. 20.
|
||||
*/
|
||||
readonly class ProfileChartDataFactory
|
||||
readonly final class ProfileChartDataFactory
|
||||
{
|
||||
public function __construct(private PlayedGameRepository $repo) { }
|
||||
|
||||
|
||||
@@ -29,8 +29,7 @@ use Doctrine\ORM\Mapping\Table;
|
||||
* @link www.splendidbear.org
|
||||
* @since 2026. 04. 15.
|
||||
*/
|
||||
#[Entity(repositoryClass: ContactMessageRepository::class)]
|
||||
#[Table(name: 'contact_messages')]
|
||||
#[Entity(repositoryClass: ContactMessageRepository::class), Table(name: 'contact_messages')]
|
||||
class ContactMessage
|
||||
{
|
||||
#[Id, GeneratedValue, Column]
|
||||
|
||||
@@ -36,8 +36,7 @@ use Symfony\Component\Security\Core\User\UserInterface;
|
||||
* @link www.splendidbear.org
|
||||
* @since 2026. 04. 09.
|
||||
*/
|
||||
#[Table(name: 'app_user')]
|
||||
#[Entity(repositoryClass: UserRepository::class)]
|
||||
#[Entity(repositoryClass: UserRepository::class), Table(name: 'app_user')]
|
||||
#[UniqueEntity(fields: ['username'], message: 'This username is already taken.')]
|
||||
#[UniqueEntity(fields: ['email'], message: 'This email address is already registered.')]
|
||||
class User implements UserInterface, PasswordAuthenticatedUserInterface, TotpTwoFactorInterface, BackupCodeInterface
|
||||
|
||||
@@ -30,7 +30,7 @@ use Doctrine\ORM\Mapping\Table;
|
||||
* @link www.splendidbear.org
|
||||
* @since 2026. 04. 20.
|
||||
*/
|
||||
#[Entity(repositoryClass: UserStatsRepository::class, readOnly: true), Table]
|
||||
#[Entity(repositoryClass: UserStatsRepository::class, readOnly: true)]
|
||||
class UserStats
|
||||
{
|
||||
#[Id, Column(name: 'user_id')]
|
||||
|
||||
@@ -33,8 +33,7 @@ use RuntimeException;
|
||||
* @link www.splendidbear.org
|
||||
* @since 2026. 04. 12.
|
||||
*/
|
||||
#[Table(name: 'app_webauthn_credential')]
|
||||
#[Entity(repositoryClass: WebAuthnCredentialRepository::class)]
|
||||
#[Entity(repositoryClass: WebAuthnCredentialRepository::class), Table(name: 'app_webauthn_credential')]
|
||||
class WebAuthnCredential
|
||||
{
|
||||
#[Id, GeneratedValue, Column]
|
||||
|
||||
Reference in New Issue
Block a user