Merge pull request 'feat/user-reg-api' (#18) from feat/user-reg-api into master
Reviewed-on: #18
This commit is contained in:
commit
d49c43f209
38
app/Http/Controllers/Api/UserController.php
Normal file
38
app/Http/Controllers/Api/UserController.php
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Api;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\User;
|
||||||
|
use Illuminate\Support\Str;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use App\Http\Requests\StoreUserRequest;
|
||||||
|
use Illuminate\Support\Facades\Validator;
|
||||||
|
|
||||||
|
class UserController extends Controller
|
||||||
|
{
|
||||||
|
public function registerUser(StoreUserRequest $request)
|
||||||
|
{
|
||||||
|
|
||||||
|
$validated = $request->validated();
|
||||||
|
$validated['is_admin'] = false;
|
||||||
|
$validated['password'] = Str::random(8);
|
||||||
|
$validated['status'] = true;
|
||||||
|
try {
|
||||||
|
$user = User::create($validated);
|
||||||
|
}catch (Throwable $exception){
|
||||||
|
return response()
|
||||||
|
->json($exception);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return response()
|
||||||
|
->json(['message' => 'Successfully created user ' . $user->firstname]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getUser(Request $request, User $user)
|
||||||
|
{
|
||||||
|
return response()
|
||||||
|
->json(["status" => true]);
|
||||||
|
}
|
||||||
|
}
|
||||||
32
app/Http/Requests/StoreUserRequest.php
Normal file
32
app/Http/Requests/StoreUserRequest.php
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class StoreUserRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'firstname' => ['required', 'string'],
|
||||||
|
'lastname' => ['required', 'string'],
|
||||||
|
'email' => ['required', 'string'],
|
||||||
|
'uuid' => ['required', 'string'],
|
||||||
|
'profile' => ['required', 'string'],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
public/images/PriceyBot.webp
Normal file
BIN
public/images/PriceyBot.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 94 KiB |
@ -15,10 +15,6 @@
|
|||||||
|
|
||||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||||
|
|
||||||
<!-- Fonts -->
|
|
||||||
<link rel="preconnect" href="https://fonts.bunny.net">
|
|
||||||
<link href="https://fonts.bunny.net/css?family=figtree:400,500,600&display=swap" rel="stylesheet" />
|
|
||||||
|
|
||||||
<!-- Scripts -->
|
<!-- Scripts -->
|
||||||
@vite(['resources/css/app.css', 'resources/js/app.js'])
|
@vite(['resources/css/app.css', 'resources/js/app.js'])
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
@ -14,10 +14,6 @@
|
|||||||
|
|
||||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||||
|
|
||||||
<!-- Fonts -->
|
|
||||||
<link rel="preconnect" href="https://fonts.bunny.net">
|
|
||||||
<link href="https://fonts.bunny.net/css?family=figtree:400,500,600&display=swap" rel="stylesheet" />
|
|
||||||
|
|
||||||
<!-- Scripts -->
|
<!-- Scripts -->
|
||||||
@vite(['resources/css/app.css', 'resources/js/app.js'])
|
@vite(['resources/css/app.css', 'resources/js/app.js'])
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
use App\Http\Controllers\Api\WebHookController;
|
use App\Http\Controllers\Api\WebHookController;
|
||||||
|
use App\Http\Controllers\Api\UserController;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
@ -18,4 +20,9 @@ Route::middleware(['header.auth', 'throttle:api'])->group(function () {
|
|||||||
Route::get('/test', [WebHookController::class, 'test']);
|
Route::get('/test', [WebHookController::class, 'test']);
|
||||||
Route::post('/sendQuote', [WebHookController::class, 'sendQuote']);
|
Route::post('/sendQuote', [WebHookController::class, 'sendQuote']);
|
||||||
Route::post('/randomQuote', [WebHookController::class, 'sendRandomQuote']);
|
Route::post('/randomQuote', [WebHookController::class, 'sendRandomQuote']);
|
||||||
|
Route::post('/user/register', [UserController::class, 'registerUser']);
|
||||||
|
Route::get('/user/{user:uuid}', [UserController::class, 'getUser'])
|
||||||
|
->missing(function (Request $request) {
|
||||||
|
return response()->json(["status" => false, "message" => "User not found"]);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user