diff --git a/app/Http/Controllers/ChapterController.php b/app/Http/Controllers/ChapterController.php index 0952afb..9a76c71 100644 --- a/app/Http/Controllers/ChapterController.php +++ b/app/Http/Controllers/ChapterController.php @@ -33,11 +33,13 @@ class ChapterController extends Controller */ public function store(StoreChapterRequest $request) { + // dd ($request->file('images')); + $formData = $request->validated(); $formData['user_id'] = Auth::id(); if($request->hasFile('images')) { - foreach ($request->file('images') as $image) { - $images[] = $image->store($request->manga_id.'OfChapter', 'public'); + foreach ($request->file('images') as $key => $image) { + $images[] = $image->store($request->manga_id.'ChapterImages', 'public'); } $formData['images'] = $images; } @@ -89,3 +91,4 @@ class ChapterController extends Controller return view('chapter.manageChapter', compact('manga')); } } + diff --git a/app/Http/Controllers/PageController.php b/app/Http/Controllers/PageController.php index 404e3d2..b4f8764 100644 --- a/app/Http/Controllers/PageController.php +++ b/app/Http/Controllers/PageController.php @@ -2,14 +2,16 @@ namespace App\Http\Controllers; -use App\Models\Chapter; use App\Models\Manga; +use App\Models\Chapter; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Storage; class PageController extends Controller { public function index() { + // Storage::disk('local')->put('example.txt', 'Contents'); $mangas = Manga::latest('id')->paginate(8)->withQueryString(); return view('index', [ 'mangas' => $mangas diff --git a/app/Http/Requests/StoreChapterRequest.php b/app/Http/Requests/StoreChapterRequest.php index 81e9360..2448c84 100644 --- a/app/Http/Requests/StoreChapterRequest.php +++ b/app/Http/Requests/StoreChapterRequest.php @@ -22,8 +22,10 @@ class StoreChapterRequest extends FormRequest public function rules(): array { return [ - 'title' => 'min:3', - 'manga_id' => 'required|exists:mangas,id' + 'title' => 'required|min:3', + 'manga_id' => 'required|exists:mangas,id', + 'images' => 'required', + 'images.*' => 'file|mimes:png,jpg' ]; } @@ -31,7 +33,9 @@ class StoreChapterRequest extends FormRequest { return [ 'manga_id.required' => 'Please Select the Manga', - 'manga_id.exists' => 'Please Select the Manga' + 'manga_id.exists' => 'Please Select the Manga', + 'images.required' => 'Please Select Chapter images', + // 'images.*.mimes:png,jpg' => 'Invalid Image extensions' ]; } } diff --git a/app/Http/Requests/StoreMangaRequest.php b/app/Http/Requests/StoreMangaRequest.php index 3cf9ccc..17e453e 100644 --- a/app/Http/Requests/StoreMangaRequest.php +++ b/app/Http/Requests/StoreMangaRequest.php @@ -24,7 +24,15 @@ class StoreMangaRequest extends FormRequest return [ 'title' => 'required|min:3|max:100', 'summary' => 'required|min:3', - 'cover' => 'required|file' + 'cover' => 'file|required|mimes:png,jpg' + ]; + } + + //error messages + public function messages() + { + return [ + 'cover.required' => 'Please Select Cover Image' ]; } } diff --git a/app/Http/Requests/UpdateMangaRequest.php b/app/Http/Requests/UpdateMangaRequest.php index 5ff876a..13a6ff9 100644 --- a/app/Http/Requests/UpdateMangaRequest.php +++ b/app/Http/Requests/UpdateMangaRequest.php @@ -23,7 +23,16 @@ class UpdateMangaRequest extends FormRequest { return [ 'title' => 'required|min:3', - 'summary' => 'required|min:3|max:2000' + 'summary' => 'required|min:3|max:2000', + 'cover' => 'file|required|mimes:png,jpg' + ]; + } + + //error messages + public function messages() + { + return [ + 'cover.required' => 'Please Select Cover Image' ]; } } diff --git a/resources/views/chapter/create.blade.php b/resources/views/chapter/create.blade.php index a9968c1..5319812 100644 --- a/resources/views/chapter/create.blade.php +++ b/resources/views/chapter/create.blade.php @@ -6,7 +6,7 @@ Chapter List - +