update controllers logic

This commit is contained in:
root
2026-04-23 00:04:35 -04:00
parent 1977a513df
commit ca4ba272fc
353 changed files with 13402 additions and 1301 deletions
@@ -2,7 +2,7 @@
namespace App\Http\Controllers\Api\Frontend;
use App\Http\Controllers\Api\BaseApiController;
use App\Http\Controllers\Api\Core\BaseApiController;
use App\Http\Resources\Frontend\FrontendPageResource;
use App\Http\Resources\Frontend\FrontendUserResource;
use App\Services\Frontend\FrontendPageService;
@@ -2,7 +2,7 @@
namespace App\Http\Controllers\Api\Frontend;
use App\Http\Controllers\Api\BaseApiController;
use App\Http\Controllers\Api\Core\BaseApiController;
use App\Http\Resources\Frontend\ProfileIconResource;
use App\Services\Frontend\ProfileIconService;
use Illuminate\Http\JsonResponse;
@@ -17,15 +17,28 @@ class InfoIconController extends BaseApiController
public function profileIcon(): JsonResponse
{
$userId = (int) (auth()->id() ?? 0);
if ($userId <= 0) {
return $this->error('Unauthorized.', Response::HTTP_UNAUTHORIZED);
$guard = $this->authenticatedUserIdOrUnauthorized();
if ($guard instanceof JsonResponse) {
return $guard;
}
$payload = $this->service->buildForUser($userId);
$payload = $this->service->buildForUser($guard);
return $this->success([
'profile' => new ProfileIconResource($payload),
]);
}
/**
* @return int|JsonResponse
*/
private function authenticatedUserIdOrUnauthorized(): int|JsonResponse
{
$userId = (int) (auth()->id() ?? 0);
if ($userId <= 0) {
return $this->error('Unauthorized.', Response::HTTP_UNAUTHORIZED);
}
return $userId;
}
}
@@ -2,11 +2,12 @@
namespace App\Http\Controllers\Api\Frontend;
use App\Http\Controllers\Api\BaseApiController;
use App\Http\Controllers\Api\Core\BaseApiController;
use App\Http\Requests\Frontend\LandingTeacherRequest;
use App\Http\Resources\Frontend\LandingPageResource;
use App\Services\Frontend\LandingPageService;
use Illuminate\Http\JsonResponse;
use Symfony\Component\HttpFoundation\Response;
class LandingPageController extends BaseApiController
{
@@ -17,8 +18,13 @@ class LandingPageController extends BaseApiController
public function index(LandingTeacherRequest $request): JsonResponse
{
$user = $request->user();
if (!$user) {
return $this->error('Unauthorized.', Response::HTTP_UNAUTHORIZED);
}
$payload = $this->service->dashboardForUser(
$request->user(),
$user,
$request->validated()['class_section_id'] ?? null
);
@@ -29,8 +35,13 @@ class LandingPageController extends BaseApiController
public function teacher(LandingTeacherRequest $request): JsonResponse
{
$user = $request->user();
if (!$user) {
return $this->error('Unauthorized.', Response::HTTP_UNAUTHORIZED);
}
$payload = $this->service->teacher(
$request->user(),
$user,
$request->validated()['class_section_id'] ?? null
);
@@ -41,7 +52,12 @@ class LandingPageController extends BaseApiController
public function parent(): JsonResponse
{
$payload = $this->service->parent(auth()->user());
$user = auth()->user();
if (!$user) {
return $this->error('Unauthorized.', Response::HTTP_UNAUTHORIZED);
}
$payload = $this->service->parent($user);
return $this->success([
'landing' => new LandingPageResource($payload),
@@ -2,7 +2,7 @@
namespace App\Http\Controllers\Api\Frontend;
use App\Http\Controllers\Api\BaseApiController;
use App\Http\Controllers\Api\Core\BaseApiController;
use App\Http\Requests\Frontend\ContactSubmitRequest;
use App\Http\Resources\Frontend\ContactSubmissionResource;
use App\Http\Resources\Frontend\PageContentResource;