diff --git a/app/Http/Controllers/Account/WishlistController.php b/app/Http/Controllers/Account/WishlistController.php index 2eba513..7d60bd2 100644 --- a/app/Http/Controllers/Account/WishlistController.php +++ b/app/Http/Controllers/Account/WishlistController.php @@ -1,11 +1,40 @@ where('user_id', auth()->id()) + ->latest() + ->paginate(); + return view('account.wishlist', compact('wishlists')); } + + public function toggle($type, $id) + { + $wishlist = Wishlist::where('user_id', auth()->id()) + ->where($type . '_id', $id) + ->first(); + + if ($wishlist) { + $wishlist->delete(); + } else { + Wishlist::create([ + 'user_id' => auth()->id(), + $type . '_id' => $id, + ]); + } + + return back(); + } + + } diff --git a/app/Models/Wishlist.php b/app/Models/Wishlist.php new file mode 100644 index 0000000..b0e0c9b --- /dev/null +++ b/app/Models/Wishlist.php @@ -0,0 +1,59 @@ + 'int', + 'flight_id' => 'int', + 'tour_id' => 'int' + ]; + + protected $fillable = [ + 'user_id', + 'flight_id', + 'tour_id' + ]; + + public function user() + { + return $this->belongsTo(User::class); + } + + public function flight() + { + return $this->belongsTo(Flight::class); + } + + public function tour() + { + return $this->belongsTo(Tour::class, 'tour_id'); + } +} diff --git a/public/assets/css/style.css b/public/assets/css/style.css index 75d4622..1ebcbfb 100644 --- a/public/assets/css/style.css +++ b/public/assets/css/style.css @@ -2951,6 +2951,8 @@ tour css color: #fff; } + + .tour-top{ display: flex; align-items: center; @@ -9648,3 +9650,5 @@ home-3 + + diff --git a/resources/views/account/layouts/app.blade.php b/resources/views/account/layouts/app.blade.php new file mode 100644 index 0000000..058ea61 --- /dev/null +++ b/resources/views/account/layouts/app.blade.php @@ -0,0 +1,32 @@ +@extends('layouts.app') + + +@section('content') +
+ + +
+
+
+
+ @include('account.layouts.sidebar') +
+
+ @yield('account-content') +
+
+
+
+ +
+ +@endsection + diff --git a/resources/views/account/wishlist.blade.php b/resources/views/account/wishlist.blade.php new file mode 100644 index 0000000..a5473c9 --- /dev/null +++ b/resources/views/account/wishlist.blade.php @@ -0,0 +1,236 @@ +@extends('account.layouts.app') + +@section('title', 'علاقه‌مندی‌ها') + +@section('account-content') + + ``` +
+
+ +
+
+ ``` + +@endsection diff --git a/resources/views/components/flight.blade.php b/resources/views/components/flight.blade.php index c17544d..59e88e3 100644 --- a/resources/views/components/flight.blade.php +++ b/resources/views/components/flight.blade.php @@ -3,15 +3,24 @@
- + + + +
-

{{ $flight->departure_time->toJalali()->format('Y/m/d H:i') }}

+

{{ $flight->departure_time->toJalali()->format('Y/m/d H:i') }} +

diff --git a/resources/views/components/tour.blade.php b/resources/views/components/tour.blade.php index f264ff4..a811765 100644 --- a/resources/views/components/tour.blade.php +++ b/resources/views/components/tour.blade.php @@ -9,7 +9,10 @@ alt="{{ $tour->title }}" > - +
diff --git a/resources/views/dashboard/layouts/sidebar.blade.php b/resources/views/dashboard/layouts/sidebar.blade.php new file mode 100644 index 0000000..e69de29 diff --git a/resources/views/show-layouts/sidebar.blade.php b/resources/views/show-layouts/sidebar.blade.php index 9432d86..4dc4e1d 100644 --- a/resources/views/show-layouts/sidebar.blade.php +++ b/resources/views/show-layouts/sidebar.blade.php @@ -15,7 +15,7 @@
- {{-- Flight specific --}} + @if($type === 'flight')
@@ -62,11 +62,19 @@ اکنون رزرو کن - + + + افزودن به علاقه‌مندی‌ها + + +
@@ -77,7 +85,7 @@ @endif - {{-- Tour specific --}} + @if($type === 'tour')
@@ -127,11 +135,19 @@ اکنون رزرو کن - + + + افزودن به علاقه‌مندی‌ها + + +
@endif