format and fix phpstan
continuous-integration/drone/push Build is passing Details

pull/12/head
samuel 1 year ago
parent e0e57b4d65
commit c1fec9243b

@ -2,9 +2,8 @@ import React, { CSSProperties, useState } from "react"
import "../style/visualizer.css"
import Court from "../assets/basketball_court.svg"
export default function Visualizer({ id, name }: { id: number; name: string }) {
const [style, setStyle] = useState<CSSProperties>({});
const [style, setStyle] = useState<CSSProperties>({})
return (
<div id="main">
@ -20,5 +19,5 @@ export default function Visualizer({id, name}: { id: number; name: string }) {
/>
</div>
</div>
);
)
}

@ -8,10 +8,10 @@ use App\Http\HttpResponse;
use App\Http\ViewHttpResponse;
use App\Model\AuthModel;
use App\Validation\FieldValidationFail;
use App\Validation\ValidationFail;
use App\Validation\Validators;
use Twig\Environment;
class AuthController {
private AuthModel $model;
@ -26,6 +26,11 @@ class AuthController {
return ViewHttpResponse::twig("display_register.html.twig", []);
}
/**
* @param string $viewName
* @param ValidationFail[] $fails
* @return HttpResponse
*/
private function displayBadFields(string $viewName, array $fails): HttpResponse {
$bad_fields = [];
foreach ($fails as $err) {
@ -36,14 +41,17 @@ class AuthController {
return ViewHttpResponse::twig($viewName, ['bad_fields' => $bad_fields]);
}
/**
* @param mixed[] $request
* @return HttpResponse
*/
public function confirmRegister(array $request): HttpResponse {
$fails = [];
$request = HttpRequest::from($request, $fails, [
"username" => [Validators::name(), Validators::lenBetween(2, 32)],
"password" => [Validators::lenBetween(6, 256)],
"confirmpassword" => [Validators::lenBetween(6, 256)],
"email" => [Validators::regex("/^\\S+@\\S+\\.\\S+$/"),Validators::lenBetween(5, 256)]
"email" => [Validators::regex("/^\\S+@\\S+\\.\\S+$/"),Validators::lenBetween(5, 256)],
]);
if (!empty($fails)) {
return $this->displayBadFields("display_register.html.twig", $fails);
@ -61,12 +69,15 @@ class AuthController {
return ViewHttpResponse::twig("display_login.html.twig", []);
}
/**
* @param mixed[] $request
* @return HttpResponse
*/
public function confirmLogin(array $request): HttpResponse {
$fails = [];
$request = HttpRequest::from($request, $fails, [
"password" => [Validators::lenBetween(6, 256)],
"email" => [Validators::regex("/^\\S+@\\S+\\.\\S+$/"),Validators::lenBetween(5, 256)]
"email" => [Validators::regex("/^\\S+@\\S+\\.\\S+$/"),Validators::lenBetween(5, 256)],
]);
if (!empty($fails)) {
return $this->displayBadFields("display_login.html.twig", $fails);

@ -3,7 +3,7 @@
namespace App\Gateway;
use App\Connexion;
use \PDO;
use PDO;
class AuthGateway {
private Connexion $con;
@ -31,6 +31,10 @@ class AuthGateway {
}
/**
* @param string $email
* @return array<string,string>|null
*/
public function getUserFields(string $email): ?array {
$results = $this->con->fetch("SELECT username,email FROM AccountUser WHERE email = :email", [':email' => [$email, PDO::PARAM_STR]]);
$firstRow = $results[0] ?? null;

@ -5,10 +5,9 @@ namespace App\Model;
use App\Controller\AuthController;
use App\Gateway\AuthGateway;
use App\Validation\FieldValidationFail;
use App\Validation\ValidationFail;
class AuthModel {
private AuthGateway $gateway;
/**
* @param AuthGateway $gateway
@ -18,6 +17,13 @@ class AuthModel {
}
/**
* @param string $username
* @param string $password
* @param string $confirmPassword
* @param string $email
* @return ValidationFail[]
*/
public function register(string $username, string $password, string $confirmPassword, string $email): array {
$errors = [];
@ -37,11 +43,20 @@ class AuthModel {
return $errors;
}
public function getUserFields(string $email):array{
/**
* @param string $email
* @return array<string,string>|null
*/
public function getUserFields(string $email): ?array {
return $this->gateway->getUserFields($email);
}
/**
* @param string $email
* @param string $password
* @return ValidationFail[] $errors
*/
public function login(string $email, string $password): array {
$errors = [];

Loading…
Cancel
Save