style updates

This commit is contained in:
Mark Gregory
2026-07-24 14:59:44 +01:00
parent 24ab771cd3
commit dd23205d0b
482 changed files with 7173 additions and 1435 deletions
@@ -1,4 +1,54 @@
<?php
namespace Modules\Api\Http\Controllers;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Http\Resources\Json\AnonymousResourceCollection; use Modules\Api\Http\Resources\ContentResource; use Modules\Blog\Models\Blog; use Modules\News\Models\News; use Modules\Pages\Models\Page;
final class ContentController {public function pages(): AnonymousResourceCollection{return $this->many(Page::query()->where('status','published'));}public function blog(): AnonymousResourceCollection{return $this->many(Blog::query()->published());}public function news(): AnonymousResourceCollection{return $this->many(News::query()->published());}public function page(Page $page): ContentResource{abort_unless($page->status==='published',404);return new ContentResource($page);}public function blogPost(Blog $blog): ContentResource{abort_unless(Blog::query()->published()->whereKey($blog)->exists(),404);return new ContentResource($blog);}public function newsArticle(News $news): ContentResource{abort_unless(News::query()->published()->whereKey($news)->exists(),404);return new ContentResource($news);}private function many(Builder $q): AnonymousResourceCollection{return ContentResource::collection($q->latest('updated_at')->paginate((int)config('api.pagination',20)));}}
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
use Modules\Api\Http\Resources\ContentResource;
use Modules\Blog\Models\Blog;
use Modules\News\Models\News;
use Modules\Pages\Models\Page;
final class ContentController
{
public function pages(): AnonymousResourceCollection
{
return $this->many(Page::query()->where('status', 'published'));
}
public function blog(): AnonymousResourceCollection
{
return $this->many(Blog::query()->published());
}
public function news(): AnonymousResourceCollection
{
return $this->many(News::query()->published());
}
public function page(Page $page): ContentResource
{
abort_unless($page->status === 'published', 404);
return new ContentResource($page);
}
public function blogPost(Blog $blog): ContentResource
{
abort_unless(Blog::query()->published()->whereKey($blog)->exists(), 404);
return new ContentResource($blog);
}
public function newsArticle(News $news): ContentResource
{
abort_unless(News::query()->published()->whereKey($news)->exists(), 404);
return new ContentResource($news);
}
private function many(Builder $q): AnonymousResourceCollection
{
return ContentResource::collection($q->latest('updated_at')->paginate((int) config('api.pagination', 20)));
}
}