feat:complete comments in tourShow
This commit is contained in:
@@ -29,7 +29,7 @@ class CommentController extends Controller
|
|||||||
$data = $request->validated();
|
$data = $request->validated();
|
||||||
|
|
||||||
Comment::create([
|
Comment::create([
|
||||||
$relation,
|
...$relation,
|
||||||
'user_id' => auth()->id(),
|
'user_id' => auth()->id(),
|
||||||
'guest_name' => auth()->check() ? null : $data['guest_name'],
|
'guest_name' => auth()->check() ? null : $data['guest_name'],
|
||||||
'guest_email' => auth()->check() ? null : $data['guest_email'],
|
'guest_email' => auth()->check() ? null : $data['guest_email'],
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Enums\CommentStatus;
|
||||||
use App\Enums\TourStatus;
|
use App\Enums\TourStatus;
|
||||||
use App\Models\Tour;
|
use App\Models\Tour;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
@@ -20,8 +21,20 @@ class TourController extends Controller
|
|||||||
return view('tours.index', compact('tours'));
|
return view('tours.index', compact('tours'));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function show()
|
public function show(Tour $tour)
|
||||||
{
|
{
|
||||||
|
abort_if($tour->status !== TourStatus::ENABLE->value, 404);
|
||||||
|
|
||||||
|
$tour->increment('views');
|
||||||
|
|
||||||
|
$tour->load(['file',
|
||||||
|
'comments' => function ($query) {
|
||||||
|
$query->where('status', CommentStatus::APPROVED)
|
||||||
|
->with('user')
|
||||||
|
->orderByDesc('created_at');
|
||||||
|
},]);
|
||||||
|
|
||||||
|
|
||||||
|
return view('tours.show', compact('tour'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
|
|
||||||
<div class="listing-item">
|
<div class="listing-item">
|
||||||
<h4 class="mb-3">بررسیها</h4>
|
|
||||||
|
<h4 class="mb-3">بازخوردها</h4>
|
||||||
|
|
||||||
<div class="listing-review">
|
<div class="listing-review">
|
||||||
|
|
||||||
<h5>بازخوردها</h5>
|
|
||||||
|
|
||||||
@forelse($flight->comments as $comment)
|
@forelse($comments as $comment)
|
||||||
|
|
||||||
<div class="listing-review-item">
|
<div class="listing-review-item">
|
||||||
|
|
||||||
<div class="listing-review-author">
|
<div class="listing-review-author">
|
||||||
@@ -19,6 +21,7 @@
|
|||||||
|
|
||||||
<div class="listing-review-author-info">
|
<div class="listing-review-author-info">
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<h6>
|
<h6>
|
||||||
@if($comment->user)
|
@if($comment->user)
|
||||||
{{ $comment->user->first_name }}
|
{{ $comment->user->first_name }}
|
||||||
@@ -32,6 +35,7 @@
|
|||||||
<i class="far fa-clock"></i>
|
<i class="far fa-clock"></i>
|
||||||
{{ $comment->created_at->toJalali()->format('Y/m/d') }}
|
{{ $comment->created_at->toJalali()->format('Y/m/d') }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -40,13 +44,21 @@
|
|||||||
<p>{{ $comment->comment }}</p>
|
<p>{{ $comment->comment }}</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@empty
|
@empty
|
||||||
<p>هنوز بازخوردی ثبت نشده است. اولین نفری باشید که نظر میدهد.</p>
|
|
||||||
|
<p>
|
||||||
|
هنوز بازخوردی ثبت نشده است.
|
||||||
|
اولین نفری باشید که نظر میدهد.
|
||||||
|
</p>
|
||||||
|
|
||||||
@endforelse
|
@endforelse
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="listing-review-form">
|
<div class="listing-review-form">
|
||||||
|
|
||||||
<h4>نظر بدهید</h4>
|
<h4>نظر بدهید</h4>
|
||||||
|
|
||||||
@error('success')
|
@error('success')
|
||||||
@@ -56,11 +68,21 @@
|
|||||||
@enderror
|
@enderror
|
||||||
|
|
||||||
|
|
||||||
<form action="{{ route('flights.comments', $flight) }}" method="POST">
|
@php
|
||||||
|
$commentRoute = $type === 'flight'
|
||||||
|
? route('flights.comments', $item)
|
||||||
|
: route('tours.comments', $item);
|
||||||
|
@endphp
|
||||||
|
|
||||||
|
|
||||||
|
<form action="{{ $commentRoute }}" method="POST">
|
||||||
|
|
||||||
@csrf
|
@csrf
|
||||||
|
|
||||||
@guest
|
@guest
|
||||||
|
|
||||||
<div class="form-group mb-3">
|
<div class="form-group mb-3">
|
||||||
|
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
name="guest_name"
|
name="guest_name"
|
||||||
@@ -68,9 +90,12 @@
|
|||||||
placeholder="نام شما*"
|
placeholder="نام شما*"
|
||||||
value="{{ old('guest_name') }}"
|
value="{{ old('guest_name') }}"
|
||||||
>
|
>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="form-group mb-3">
|
<div class="form-group mb-3">
|
||||||
|
|
||||||
<input
|
<input
|
||||||
type="email"
|
type="email"
|
||||||
name="guest_email"
|
name="guest_email"
|
||||||
@@ -78,10 +103,14 @@
|
|||||||
placeholder="ایمیل شما*"
|
placeholder="ایمیل شما*"
|
||||||
value="{{ old('guest_email') }}"
|
value="{{ old('guest_email') }}"
|
||||||
>
|
>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@endguest
|
@endguest
|
||||||
|
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|
||||||
<textarea
|
<textarea
|
||||||
name="comment"
|
name="comment"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
@@ -89,11 +118,17 @@
|
|||||||
rows="5"
|
rows="5"
|
||||||
placeholder="نظر خود را بنویسید*"
|
placeholder="نظر خود را بنویسید*"
|
||||||
>{{ old('comment') }}</textarea>
|
>{{ old('comment') }}</textarea>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<button class="theme-btn" type="submit">
|
<button class="theme-btn" type="submit">
|
||||||
نظر بدهید
|
نظر بدهید
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user