feat: app_debug to false and public user profiile controller
This commit is contained in:
parent
26f24fcd07
commit
50ebc54551
|
|
@ -0,0 +1,43 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Enums\MealPostVisibility;
|
||||
use App\Http\Resources\MealPostsResource;
|
||||
use App\Models\User;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
|
||||
class PublicUserProfileController extends Controller
|
||||
{
|
||||
public function show(Request $request, User $user): JsonResponse
|
||||
{
|
||||
$meals = $user->mealPosts()
|
||||
->where('visibility', MealPostVisibility::Public->value)
|
||||
->with('user:id,name,avatar_url,account_verified_at')
|
||||
->latest('eaten_at')
|
||||
->limit(18)
|
||||
->get();
|
||||
|
||||
return response()->json([
|
||||
'data' => [
|
||||
'user' => [
|
||||
'id' => $user->id,
|
||||
'name' => $user->name,
|
||||
'bio' => $user->bio,
|
||||
'avatarUrl' => $user->avatar_url
|
||||
? asset(Storage::url($user->avatar_url))
|
||||
: null,
|
||||
'accountVerified' => $user->account_verified_at !== null,
|
||||
],
|
||||
'stats' => [
|
||||
'mealsCount' => $user->mealPosts()
|
||||
->where('visibility', MealPostVisibility::Public->value)
|
||||
->count(),
|
||||
],
|
||||
'meals' => MealPostsResource::collection($meals)->resolve($request),
|
||||
],
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
|
@ -57,7 +57,7 @@ env:
|
|||
clear:
|
||||
APP_LOCALE: fr
|
||||
APP_ENV: production
|
||||
APP_DEBUG: "true"
|
||||
APP_DEBUG: "false"
|
||||
APP_URL: https://bemeal.leonmorival.com
|
||||
SERVER_NAME: ":80"
|
||||
APP_RUNTIME: "Laravel\\FrankenPHP\\Runtime"
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ use App\Http\Controllers\DeviceTokenController;
|
|||
use App\Http\Controllers\MealImageAnalysisController;
|
||||
use App\Http\Controllers\MealPostController;
|
||||
use App\Http\Controllers\PostReviewsController;
|
||||
use App\Http\Controllers\PublicUserProfileController;
|
||||
use App\Http\Controllers\StravaController;
|
||||
use App\Http\Controllers\WorkoutSessionController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
|
@ -53,6 +54,7 @@ Route::middleware(['auth:sanctum', 'verified'])->group(function (): void {
|
|||
|
||||
// Meals
|
||||
Route::middleware(['auth:sanctum', 'verified'])->group(function (): void {
|
||||
Route::get('users/{user}', [PublicUserProfileController::class, 'show'])->name('users.show');
|
||||
Route::get('me/meal-posts', [MealPostController::class, 'mine'])->name('meal-posts.mine');
|
||||
Route::get('meal-posts/stats', [MealPostController::class, 'stats']);
|
||||
Route::get('meal-posts/calendar', [MealPostController::class, 'calendar']);
|
||||
|
|
|
|||
Loading…
Reference in New Issue