diff --git a/app/Http/Controllers/Backend/Courses/CourseController.php b/app/Http/Controllers/Backend/Courses/CourseController.php index 594d823..c7b12f0 100644 --- a/app/Http/Controllers/Backend/Courses/CourseController.php +++ b/app/Http/Controllers/Backend/Courses/CourseController.php @@ -10,7 +10,7 @@ use App\Models\CourseCategory; use App\Models\Instructor; use Exception; -use File; +use File; class CourseController extends Controller { diff --git a/app/Http/Controllers/CartController.php b/app/Http/Controllers/CartController.php new file mode 100644 index 0000000..4d07f46 --- /dev/null +++ b/app/Http/Controllers/CartController.php @@ -0,0 +1,63 @@ +get('cart', []); + + if (isset($cart[$id])) { + $cart[$id]['quantity']++; + } else { + $cart[$id] = [ + "title_en" => $course->title_en, + "quantity" => 1, + "price" => $course->price, + "image" => $course->image + ]; + } + + session()->put('cart', $cart); + return redirect()->back()->with('success', 'Product added to cart successfully!'); + } + + public function update(Request $request) + { + if ($request->id && $request->quantity) { + $cart = session()->get('cart'); + $cart[$request->id]["quantity"] = $request->quantity; + session()->put('cart', $cart); + session()->flash('success', 'Cart updated successfully'); + } + } + + public function remove(Request $request) + { + if ($request->id) { + $cart = session()->get('cart'); + if (isset($cart[$request->id])) { + unset($cart[$request->id]); + session()->put('cart', $cart); + } + session()->flash('success', 'Product removed successfully'); + } + } +} diff --git a/app/Models/Course.php b/app/Models/Course.php index 6f52f22..b32577c 100644 --- a/app/Models/Course.php +++ b/app/Models/Course.php @@ -9,6 +9,10 @@ class Course extends Model { use HasFactory; + protected $fillable = [ + 'title_en', 'price', 'image' + ]; + public function courseCategory() { return $this->belongsTo(CourseCategory::class, 'category_id', 'id'); diff --git a/public/uploads/courses/1141701660945.png b/public/uploads/courses/1141701660945.png new file mode 100644 index 0000000..291f309 Binary files /dev/null and b/public/uploads/courses/1141701660945.png differ diff --git a/public/uploads/courses/2401701660963.png b/public/uploads/courses/2401701660963.png new file mode 100644 index 0000000..e7d747d Binary files /dev/null and b/public/uploads/courses/2401701660963.png differ diff --git a/public/uploads/courses/3741701660977.jpg b/public/uploads/courses/3741701660977.jpg new file mode 100644 index 0000000..d3b53ef Binary files /dev/null and b/public/uploads/courses/3741701660977.jpg differ diff --git a/public/uploads/courses/3751701660886.png b/public/uploads/courses/3751701660886.png new file mode 100644 index 0000000..84fa104 Binary files /dev/null and b/public/uploads/courses/3751701660886.png differ diff --git a/public/uploads/courses/4711701660905.png b/public/uploads/courses/4711701660905.png new file mode 100644 index 0000000..3d26f42 Binary files /dev/null and b/public/uploads/courses/4711701660905.png differ diff --git a/public/uploads/courses/5071701660810.png b/public/uploads/courses/5071701660810.png new file mode 100644 index 0000000..291f309 Binary files /dev/null and b/public/uploads/courses/5071701660810.png differ diff --git a/public/uploads/courses/thumbnails/3001701660945.png b/public/uploads/courses/thumbnails/3001701660945.png new file mode 100644 index 0000000..291f309 Binary files /dev/null and b/public/uploads/courses/thumbnails/3001701660945.png differ diff --git a/public/uploads/courses/thumbnails/5151701660887.png b/public/uploads/courses/thumbnails/5151701660887.png new file mode 100644 index 0000000..84fa104 Binary files /dev/null and b/public/uploads/courses/thumbnails/5151701660887.png differ diff --git a/public/uploads/courses/thumbnails/5251701660811.png b/public/uploads/courses/thumbnails/5251701660811.png new file mode 100644 index 0000000..291f309 Binary files /dev/null and b/public/uploads/courses/thumbnails/5251701660811.png differ diff --git a/public/uploads/courses/thumbnails/6821701660905.png b/public/uploads/courses/thumbnails/6821701660905.png new file mode 100644 index 0000000..3d26f42 Binary files /dev/null and b/public/uploads/courses/thumbnails/6821701660905.png differ diff --git a/public/uploads/courses/thumbnails/8521701660977.jpg b/public/uploads/courses/thumbnails/8521701660977.jpg new file mode 100644 index 0000000..d3b53ef Binary files /dev/null and b/public/uploads/courses/thumbnails/8521701660977.jpg differ diff --git a/public/uploads/courses/thumbnails/9801701660963.png b/public/uploads/courses/thumbnails/9801701660963.png new file mode 100644 index 0000000..e7d747d Binary files /dev/null and b/public/uploads/courses/thumbnails/9801701660963.png differ diff --git a/resources/views/frontend/cart.blade.php b/resources/views/frontend/cart.blade.php index 6557737..ab0dee4 100644 --- a/resources/views/frontend/cart.blade.php +++ b/resources/views/frontend/cart.blade.php @@ -21,35 +21,20 @@
2 Courses in Cart
+ @php $total = 0 @endphp + @if(session('cart')) + @foreach(session('cart') as $id => $details) + @php $total += $details['price'] * $details['quantity'] @endphp - +@endsection + + +@section('scripts') + @endsection \ No newline at end of file diff --git a/resources/views/frontend/courseDetails.blade.php b/resources/views/frontend/courseDetails.blade.php index 355a528..a00b477 100644 --- a/resources/views/frontend/courseDetails.blade.php +++ b/resources/views/frontend/courseDetails.blade.php @@ -577,7 +577,9 @@ class="feather feather-lock"> {{$course->instructor?->name_en}} -

{{($course->instructor?->designation)?$course->instructor?->designation:'No Designation'}}

+

+ {{($course->instructor?->designation)?$course->instructor?->designation:'No + Designation'}}

-

{{($course->instructor?->title)?$course->instructor?->title:'No Title'}}

-

{{($course->instructor?->bio)?$course->instructor?->bio:'No Title'}}

+

+ {{($course->instructor?->title)?$course->instructor?->title:'No Title'}}

+

+ {{($course->instructor?->bio)?$course->instructor?->bio:'No Title'}}

@@ -2303,8 +2307,8 @@ class="feather feather-star">
-

${{$course->price}}

-

${{$course->old_price}}

+

{{$course->price?'$'.$course->price:'Free'}}

+

{{$course->old_price?'$'.$course->old_price:''}}

90% off

@@ -2314,8 +2318,7 @@ class="feather feather-star">

5 hours to remaining this price

+ Add to Cart diff --git a/resources/views/frontend/layouts/app.blade.php b/resources/views/frontend/layouts/app.blade.php index 8540d92..8244788 100644 --- a/resources/views/frontend/layouts/app.blade.php +++ b/resources/views/frontend/layouts/app.blade.php @@ -124,7 +124,7 @@ class="feather feather-search"> d="M2.87778 2.51099L2.77634 2.50038C2.40716 2.48688 2.07562 2.74796 2.01087 3.12209L2.00026 3.22354C1.98676 3.59272 2.24784 3.92426 2.62197 3.98901L4.13098 4.25L5.04551 15.1457L5.06443 15.3095C5.24843 16.5519 6.31708 17.486 7.58988 17.486H18.5019L18.6662 17.4808C19.8626 17.4044 20.8545 16.4996 21.0291 15.2978L21.9781 8.73941L21.9945 8.58877C22.0819 7.38969 21.132 6.349 19.9089 6.349H5.81198L5.57725 3.54727L5.55956 3.43641C5.49112 3.14809 5.25673 2.92273 4.95778 2.87099L2.87778 2.51099ZM7.47394 15.9797C6.97867 15.9255 6.58258 15.5277 6.54028 15.0207L5.93798 7.849H19.9089L19.997 7.85548C20.3128 7.90242 20.5409 8.19769 20.4936 8.52465L19.5446 15.0826L19.5208 15.1998C19.4005 15.6584 18.985 15.986 18.5019 15.986H7.58988L7.47394 15.9797ZM5.90828 20.5853C5.90828 19.7492 6.58595 19.0703 7.42228 19.0703C8.25849 19.0703 8.93728 19.7491 8.93728 20.5853C8.93728 21.4216 8.25838 22.0993 7.42228 22.0993C6.58606 22.0993 5.90828 21.4215 5.90828 20.5853ZM17.1597 20.5853C17.1597 19.7491 17.8385 19.0703 18.6747 19.0703C19.5109 19.0703 20.1897 19.7491 20.1897 20.5853C20.1897 21.4216 19.5108 22.0993 18.6747 22.0993C17.8386 22.0993 17.1597 21.4216 17.1597 20.5853ZM17.6484 10.795C17.6484 10.3808 17.3126 10.045 16.8984 10.045H14.1254L14.0236 10.0518C13.6575 10.1015 13.3754 10.4153 13.3754 10.795C13.3754 11.2092 13.7112 11.545 14.1254 11.545H16.8984L17.0001 11.5382C17.3662 11.4885 17.6484 11.1747 17.6484 10.795Z" fill="#35343E"> - 2 + {{ count((array) session('cart')) }} Items Added @if(request()->session()->get('studentLogin')) @@ -153,14 +153,15 @@ class="feather feather-search"> class="img-fluid" />
- + - 2 + {{-- 2 --}} + {{ count((array) session('cart')) }} Items Added