From d423c41ec7acc973c04d83f1837408d7f0a1fd5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Tue, 1 Aug 2023 00:03:48 +0200 Subject: [PATCH] added basic user registration api --- .../app/Http/Controllers/UserController.php | 37 +++++++++++++++ backend/app/Models/Report.php | 11 +++++ backend/app/Models/Report_User.php | 11 +++++ backend/app/Models/Strike.php | 11 +++++ backend/app/Models/User.php | 46 +++++++------------ backend/routes/api.php | 6 +-- backend/routes/web.php | 6 +++ 7 files changed, 94 insertions(+), 34 deletions(-) create mode 100644 backend/app/Http/Controllers/UserController.php create mode 100644 backend/app/Models/Report.php create mode 100644 backend/app/Models/Report_User.php create mode 100644 backend/app/Models/Strike.php diff --git a/backend/app/Http/Controllers/UserController.php b/backend/app/Http/Controllers/UserController.php new file mode 100644 index 0000000..fe24621 --- /dev/null +++ b/backend/app/Http/Controllers/UserController.php @@ -0,0 +1,37 @@ +fill([ + 'firstname' => $request->get('firstname'), + 'lastname' => $request->get('lastname'), + 'birthday' => $request->get('birthday'), + 'telephone' => $request->get('telephone'), + 'username' => $request->get('username'), + 'playertype' => $request->get('playertype'), + 'password' => $request->get('password'), + ]); + + $user->uuid = Uuid::uuid4(); + + try { + $user->saveOrFail(); + } catch (Throwable $e) { + return response(["error" => $e->getMessage()], 500); + } + + return response($user); + } +} diff --git a/backend/app/Models/Report.php b/backend/app/Models/Report.php new file mode 100644 index 0000000..7b8e00e --- /dev/null +++ b/backend/app/Models/Report.php @@ -0,0 +1,11 @@ + + * @var mixed|\Ramsey\Uuid\UuidInterface */ + protected $table = 'user'; + protected $fillable = [ - 'name', - 'email', + 'firstname', + 'lastname', + 'birthday', + 'telephone', + 'username', + 'playertype', 'password', ]; - /** - * The attributes that should be hidden for serialization. - * - * @var array - */ - protected $hidden = [ - 'password', - 'remember_token', - ]; - - /** - * The attributes that should be cast. - * - * @var array - */ - protected $casts = [ - 'email_verified_at' => 'datetime', - 'password' => 'hashed', - ]; } diff --git a/backend/routes/api.php b/backend/routes/api.php index 889937e..8bda76e 100644 --- a/backend/routes/api.php +++ b/backend/routes/api.php @@ -1,6 +1,6 @@ get('/user', function (Request $request) { - return $request->user(); -}); +Route::post('/user', [UserController::class, 'create']); diff --git a/backend/routes/web.php b/backend/routes/web.php index b72ed97..df45f5b 100644 --- a/backend/routes/web.php +++ b/backend/routes/web.php @@ -1,5 +1,7 @@