diff --git a/app/Http/Controllers/PostController.php b/app/Http/Controllers/PostController.php index 3e88c83..eb3be10 100644 --- a/app/Http/Controllers/PostController.php +++ b/app/Http/Controllers/PostController.php @@ -12,6 +12,7 @@ class PostController extends Controller public function index(Request $request) { + app('SiteState')->bodyClasses[] = 'post-archive'; $resource = $this->getResource($request); $modelClass = $this->getModelClass($resource); $repo = new PostRepository($modelClass); @@ -24,6 +25,7 @@ class PostController extends Controller public function show(Request $request, $postId) { + app('SiteState')->bodyClasses[] = 'single-post'; $resource = $this->getResource($request); $modelClass = $this->getModelClass($resource); $post = $modelClass::find($postId); diff --git a/app/Presenters/BodyClassPresenter.php b/app/Presenters/BodyClassPresenter.php index 33d06a8..c58e283 100644 --- a/app/Presenters/BodyClassPresenter.php +++ b/app/Presenters/BodyClassPresenter.php @@ -14,10 +14,10 @@ class BodyClassPresenter public function print() { $classes = - [ + array_merge([ $this->getRouteName(), 'lang-' . app()->getLocale() - ]; + ], app('SiteState')->bodyClasses); return implode(' ', $classes); } } diff --git a/app/Services/SiteStateService.php b/app/Services/SiteStateService.php index e53b256..0d5aea7 100644 --- a/app/Services/SiteStateService.php +++ b/app/Services/SiteStateService.php @@ -52,6 +52,8 @@ class SiteStateService */ public $defaultLanguage = ''; + public $bodyClasses = []; + /** * 取得所有變數 * diff --git a/resources/sass/app.scss b/resources/sass/app.scss index 3454cca..e617799 100644 --- a/resources/sass/app.scss +++ b/resources/sass/app.scss @@ -12,3 +12,32 @@ .post-feature-image { max-width: 100%; } + +main { + padding: 20px; +} + +body.post-archive { + .container { + display: flex; + flex-wrap: wrap; + } + article { + border: 1px solid lightgray; + text-align: center; + padding: 5px; + margin: 5px; + flex: 1; + flex-basis: calc(33.33% - 10px); + } +} + +body.single-post { + .title { + font-weight: bold; + } + .post-content { + font-size: 16px; + padding: 20px 0; + } +} diff --git a/resources/views/admin/menu/posts/edit.blade.php b/resources/views/admin/menu/posts/edit.blade.php index 0cba751..713c483 100644 --- a/resources/views/admin/menu/posts/edit.blade.php +++ b/resources/views/admin/menu/posts/edit.blade.php @@ -1,6 +1,9 @@ @extends('admin.layouts.app') @section('admin-page-content') + @if($post) +
+ @endif