diff --git a/app/Http/Controllers/Backend/Courses/MaterialController.php b/app/Http/Controllers/Backend/Courses/MaterialController.php index 72d4fd6..bb37974 100644 --- a/app/Http/Controllers/Backend/Courses/MaterialController.php +++ b/app/Http/Controllers/Backend/Courses/MaterialController.php @@ -15,7 +15,7 @@ class MaterialController extends Controller /** * Display a listing of the resource. */ - public function index() + public function index() { $material = Material::paginate(10); return view('backend.course.material.index', compact('material')); @@ -40,10 +40,16 @@ public function store(AddNewRequest $request) $material->title = $request->materialTitle; $material->course_id = $request->courseId; $material->type = $request->materialType; + $material->content = $request->content; $material->content_url = $request->contentURL; + if ($request->hasFile('content')) { + $contentName = rand(111, 999) . time() . '.' . $request->content->extension(); + $request->content->move(public_path('uploads/courses/contents'), $contentName); + $material->content = $contentName; + } if ($material->save()) { - $this->notice::success('Data Saved'); + $this->notice::success('Data Saved'); return redirect()->route('material.index'); } else { $this->notice::error('Please try again'); @@ -86,6 +92,11 @@ public function update(UpdateRequest $request, $id) $material->type = $request->materialType; $material->content_url = $request->contentURL; + if ($request->hasFile('content')) { + $contentName = rand(111, 999) . time() . '.' . $request->content->extension(); + $request->content->move(public_path('uploads/courses/contents'), $contentName); + $material->content = $contentName; + } if ($material->save()) { $this->notice::success('Data Saved'); return redirect()->route('material.index'); diff --git a/database/migrations/2023_11_26_153620_create_materials_table.php b/database/migrations/2023_11_26_153620_create_materials_table.php index 85e5074..c937dfd 100644 --- a/database/migrations/2023_11_26_153620_create_materials_table.php +++ b/database/migrations/2023_11_26_153620_create_materials_table.php @@ -16,6 +16,7 @@ public function up(): void $table->unsignedBigInteger('course_id')->index(); $table->string('title', 255)->nullable(false); $table->enum('type', ['video', 'document', 'quiz'])->nullable(false); + $table->string('content')->nullable(); $table->text('content_url')->nullable(); $table->timestamps(); $table->softDeletes(); diff --git a/public/uploads/courses/contents/4051702787557.jpg b/public/uploads/courses/contents/4051702787557.jpg new file mode 100644 index 0000000..b553731 Binary files /dev/null and b/public/uploads/courses/contents/4051702787557.jpg differ diff --git a/public/uploads/courses/contents/4781702787823.jpg b/public/uploads/courses/contents/4781702787823.jpg new file mode 100644 index 0000000..b553731 Binary files /dev/null and b/public/uploads/courses/contents/4781702787823.jpg differ diff --git a/public/uploads/courses/contents/8721702788050.mp4 b/public/uploads/courses/contents/8721702788050.mp4 new file mode 100644 index 0000000..fa37804 Binary files /dev/null and b/public/uploads/courses/contents/8721702788050.mp4 differ diff --git a/resources/views/backend/course/material/create.blade.php b/resources/views/backend/course/material/create.blade.php index 05e0c59..a3b8aed 100644 --- a/resources/views/backend/course/material/create.blade.php +++ b/resources/views/backend/course/material/create.blade.php @@ -80,6 +80,12 @@ +