fix : fix panel admin blades

This commit is contained in:
2026-08-20 13:18:43 -07:00
parent f0331152ea
commit 20ee091f86
13 changed files with 2533 additions and 2615 deletions
+298 -299
View File
@@ -1,325 +1,324 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
@error('general') @error('general')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<form action="{{ route('admin.admins.store') }}" method="POST" enctype="multipart/form-data"> <form action="{{ route('admin.admins.store') }}" method="POST" enctype="multipart/form-data">
@csrf @csrf
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header">
<div class="card-title">ایجاد مدیر</div>
</div>
<div class="card-body">
<div class="row gy-3">
<div class="col-xl-6">
<label class="form-label">نام</label>
<input type="text" class="form-control" name="first_name"
value="{{ old('first_name') }}" placeholder="نام را وارد کنید">
@error('first_name')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">نام خانوادگی</label>
<input type="text" class="form-control" name="last_name"
value="{{ old('last_name') }}" placeholder="نام خانوادگی را وارد کنید">
@error('last_name')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">نام کاربری</label>
<input type="text" class="form-control" name="username"
value="{{ old('username') }}" placeholder="نام کاربری">
@error('username')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">ایمیل</label>
<input type="email" class="form-control" name="email" value="{{ old('email') }}"
placeholder="ایمیل را وارد کنید">
@error('email')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">رمز عبور</label>
<input type="password" class="form-control" name="password"
placeholder="رمز عبور را وارد کنید">
@error('password')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option value="1"
@selected(\App\Enums\AdminStatus::ENABLE)>
فعال
</option>
<option value="0"
@selected(\App\Enums\AdminStatus::DISABLE)>
غیرفعال
</option>
</select>
</div>
</div>
{{-- دسترسی‌های مدیر --}}
<div class="card custom-card mt-4">
<div class="card-header"> <div class="card-header">
<div class="card-title">ایجاد مدیر</div> <div class="card-title">دسترسی‌های مدیر</div>
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="row gy-3"> <div class="row gy-4">
{{-- مدیریت پرواز --}}
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">نام</label> <label class="form-label fw-semibold">مدیریت پرواز</label>
<input type="text" class="form-control" name="first_name"
value="{{ old('first_name') }}" placeholder="نام را وارد کنید"> <div class="d-flex gap-4 flex-wrap">
@error('first_name')
<span class="text-danger">{{ $message }}</span> <div class="form-check">
@enderror <input class="form-check-input"
type="checkbox"
name="permissions[flight_create]"
value="1"
id="flight_create">
<label class="form-check-label" for="flight_create">
درج پرواز
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[flight_edit]"
value="1"
id="flight_edit">
<label class="form-check-label" for="flight_edit">
ویرایش پرواز
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[flight_delete]"
value="1"
id="flight_delete">
<label class="form-check-label" for="flight_delete">
حذف پرواز
</label>
</div>
</div>
</div> </div>
{{-- مدیریت تور --}}
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">نام خانوادگی</label> <label class="form-label fw-semibold">مدیریت تور</label>
<input type="text" class="form-control" name="last_name"
value="{{ old('last_name') }}" placeholder="نام خانوادگی را وارد کنید"> <div class="d-flex gap-4 flex-wrap">
@error('last_name')
<span class="text-danger">{{ $message }}</span> <div class="form-check">
@enderror <input class="form-check-input"
type="checkbox"
name="permissions[tour_create]"
value="1"
id="tour_create">
<label class="form-check-label" for="tour_create">
درج تور
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[tour_edit]"
value="1"
id="tour_edit">
<label class="form-check-label" for="tour_edit">
ویرایش تور
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[tour_delete]"
value="1"
id="tour_delete">
<label class="form-check-label" for="tour_delete">
حذف تور
</label>
</div>
</div>
</div> </div>
{{-- مدیریت رزرو --}}
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">نام کاربری</label> <label class="form-label fw-semibold">مدیریت رزرو</label>
<input type="text" class="form-control" name="username"
value="{{ old('username') }}" placeholder="نام کاربری"> <div class="d-flex gap-4 flex-wrap">
@error('username')
<span class="text-danger">{{ $message }}</span> <div class="form-check">
@enderror <input class="form-check-input"
type="checkbox"
name="permissions[booking_view]"
value="1"
id="booking_view">
<label class="form-check-label" for="booking_view">
مشاهده رزرو
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[booking_edit]"
value="1"
id="booking_edit">
<label class="form-check-label" for="booking_edit">
ویرایش رزرو
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[booking_delete]"
value="1"
id="booking_delete">
<label class="form-check-label" for="booking_delete">
حذف رزرو
</label>
</div>
</div>
</div> </div>
{{-- مدیریت کاربران --}}
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">ایمیل</label> <label class="form-label fw-semibold">مدیریت کاربران</label>
<input type="email" class="form-control" name="email" value="{{ old('email') }}"
placeholder="ایمیل را وارد کنید"> <div class="d-flex gap-4 flex-wrap">
@error('email')
<span class="text-danger">{{ $message }}</span> <div class="form-check">
@enderror <input class="form-check-input"
type="checkbox"
name="permissions[user_view]"
value="1"
id="user_view">
<label class="form-check-label" for="user_view">
مشاهده کاربران
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[user_edit]"
value="1"
id="user_edit">
<label class="form-check-label" for="user_edit">
ویرایش کاربران
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[user_delete]"
value="1"
id="user_delete">
<label class="form-check-label" for="user_delete">
حذف کاربران
</label>
</div>
</div>
</div> </div>
{{-- مدیریت مدیران --}}
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">رمز عبور</label> <label class="form-label fw-semibold">مدیریت مدیران</label>
<input type="password" class="form-control" name="password"
placeholder="رمز عبور را وارد کنید"> <div class="d-flex gap-4 flex-wrap">
@error('password')
<span class="text-danger">{{ $message }}</span> <div class="form-check">
@enderror <input class="form-check-input"
type="checkbox"
name="permissions[admin_view]"
value="1"
id="admin_view">
<label class="form-check-label" for="admin_view">
مشاهده مدیران
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_create]"
value="1"
id="admin_create">
<label class="form-check-label" for="admin_create">
درج مدیر
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_edit]"
value="1"
id="admin_edit">
<label class="form-check-label" for="admin_edit">
ویرایش مدیر
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_delete]"
value="1"
id="admin_delete">
<label class="form-check-label" for="admin_delete">
حذف مدیر
</label>
</div>
</div>
</div> </div>
</div>
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option value="1"
@selected(\App\Enums\AdminStatus::ENABLE)>
فعال
</option>
<option value="0"
@selected(\App\Enums\AdminStatus::DISABLE)>
غیرفعال
</option>
</select>
</div> </div>
</div> </div>
{{-- دسترسی‌های مدیر --}}
<div class="card custom-card mt-4">
<div class="card-header">
<div class="card-title">دسترسی‌های مدیر</div>
</div>
<div class="card-body">
<div class="row gy-4">
{{-- مدیریت پرواز --}}
<div class="col-xl-6">
<label class="form-label fw-semibold">مدیریت پرواز</label>
<div class="d-flex gap-4 flex-wrap">
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[flight_create]"
value="1"
id="flight_create">
<label class="form-check-label" for="flight_create">
درج پرواز
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[flight_edit]"
value="1"
id="flight_edit">
<label class="form-check-label" for="flight_edit">
ویرایش پرواز
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[flight_delete]"
value="1"
id="flight_delete">
<label class="form-check-label" for="flight_delete">
حذف پرواز
</label>
</div>
</div>
</div>
{{-- مدیریت تور --}}
<div class="col-xl-6">
<label class="form-label fw-semibold">مدیریت تور</label>
<div class="d-flex gap-4 flex-wrap">
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[tour_create]"
value="1"
id="tour_create">
<label class="form-check-label" for="tour_create">
درج تور
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[tour_edit]"
value="1"
id="tour_edit">
<label class="form-check-label" for="tour_edit">
ویرایش تور
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[tour_delete]"
value="1"
id="tour_delete">
<label class="form-check-label" for="tour_delete">
حذف تور
</label>
</div>
</div>
</div>
{{-- مدیریت رزرو --}}
<div class="col-xl-6">
<label class="form-label fw-semibold">مدیریت رزرو</label>
<div class="d-flex gap-4 flex-wrap">
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[booking_view]"
value="1"
id="booking_view">
<label class="form-check-label" for="booking_view">
مشاهده رزرو
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[booking_edit]"
value="1"
id="booking_edit">
<label class="form-check-label" for="booking_edit">
ویرایش رزرو
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[booking_delete]"
value="1"
id="booking_delete">
<label class="form-check-label" for="booking_delete">
حذف رزرو
</label>
</div>
</div>
</div>
{{-- مدیریت کاربران --}}
<div class="col-xl-6">
<label class="form-label fw-semibold">مدیریت کاربران</label>
<div class="d-flex gap-4 flex-wrap">
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[user_view]"
value="1"
id="user_view">
<label class="form-check-label" for="user_view">
مشاهده کاربران
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[user_edit]"
value="1"
id="user_edit">
<label class="form-check-label" for="user_edit">
ویرایش کاربران
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[user_delete]"
value="1"
id="user_delete">
<label class="form-check-label" for="user_delete">
حذف کاربران
</label>
</div>
</div>
</div>
{{-- مدیریت مدیران --}}
<div class="col-xl-6">
<label class="form-label fw-semibold">مدیریت مدیران</label>
<div class="d-flex gap-4 flex-wrap">
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_view]"
value="1"
id="admin_view">
<label class="form-check-label" for="admin_view">
مشاهده مدیران
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_create]"
value="1"
id="admin_create">
<label class="form-check-label" for="admin_create">
درج مدیر
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_edit]"
value="1"
id="admin_edit">
<label class="form-check-label" for="admin_edit">
ویرایش مدیر
</label>
</div>
<div class="form-check">
<input class="form-check-input"
type="checkbox"
name="permissions[admin_delete]"
value="1"
id="admin_delete">
<label class="form-check-label" for="admin_delete">
حذف مدیر
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</div> </div>
<div class="card-footer text-end"> </div>
<button type="submit" class="btn btn-primary">ثبت اطلاعات</button>
</div>
</form> <div class="card-footer text-end">
</div> <button type="submit" class="btn btn-primary">ثبت اطلاعات</button>
</div>
</form>
</div> </div>
</div> </div>
</div>
@endsection @endsection
+378 -380
View File
@@ -1,395 +1,393 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
@error('general') @error('general')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<form action="{{ route('admin.admins.update', $admin->id) }}" method="POST"> <form action="{{ route('admin.admins.update', $admin->id) }}" method="POST">
@csrf @csrf
@method('PUT') @method('PUT')
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header">
<div class="card-title">ویرایش مدیر</div>
</div>
<div class="card-body">
<div class="row gy-3">
<div class="col-xl-6">
<label class="form-label">نام</label>
<input
type="text"
class="form-control"
name="first_name"
value="{{ old('first_name', $admin->first_name) }}"
placeholder="نام را وارد کنید">
@error('first_name')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">نام خانوادگی</label>
<input
type="text"
class="form-control"
name="last_name"
value="{{ old('last_name', $admin->last_name) }}"
placeholder="نام خانوادگی را وارد کنید">
@error('last_name')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">نام کاربری</label>
<input
type="text"
class="form-control"
name="username"
value="{{ old('username', $admin->username) }}"
placeholder="نام کاربری">
@error('username')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">ایمیل</label>
<input
type="email"
class="form-control"
name="email"
value="{{ old('email', $admin->email) }}"
placeholder="ایمیل را وارد کنید">
@error('email')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">رمز عبور جدید</label>
<input
type="password"
class="form-control"
name="password"
placeholder="در صورت عدم تغییر خالی بگذارید">
@error('password')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="1"
@selected(old('status', $admin->status) == 1)>
فعال
</option>
<option
value="0"
@selected(old('status', $admin->status) == 0)>
غیرفعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="card custom-card mt-4">
<div class="card-header">
<div class="card-title">دسترسی‌های مدیر</div>
</div>
<div class="card-body">
<div class="row gy-4">
{{-- مدیریت پروازها --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت پروازها</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[flight_create]"
value="1"
@checked($admin->permission?->flight_create)
>
<label class="form-check-label">
درج پرواز
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[flight_edit]"
value="1"
@checked($admin->permission?->flight_edit)
>
<label class="form-check-label">
ویرایش پرواز
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[flight_delete]"
value="1"
@checked($admin->permission?->flight_delete)
>
<label class="form-check-label">
حذف پرواز
</label>
</div>
</div>
{{-- مدیریت تورها --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت تورها</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[tour_create]"
value="1"
@checked($admin->permission?->tour_create)
>
<label class="form-check-label">
درج تور
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[tour_edit]"
value="1"
@checked($admin->permission?->tour_edit)
>
<label class="form-check-label">
ویرایش تور
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[tour_delete]"
value="1"
@checked($admin->permission?->tour_delete)
>
<label class="form-check-label">
حذف تور
</label>
</div>
</div>
{{-- مدیریت رزروها --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت رزروها</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[booking_view]"
value="1"
@checked($admin->permission?->booking_view)
>
<label class="form-check-label">
مشاهده رزروها
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[booking_edit]"
value="1"
@checked($admin->permission?->booking_edit)
>
<label class="form-check-label">
ویرایش رزرو
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[booking_delete]"
value="1"
@checked($admin->permission?->booking_delete)
>
<label class="form-check-label">
حذف رزرو
</label>
</div>
</div>
{{-- مدیریت کاربران --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت کاربران</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[user_view]"
value="1"
@checked($admin->permission?->user_view)
>
<label class="form-check-label">
مشاهده کاربران
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[user_edit]"
value="1"
@checked($admin->permission?->user_edit)
>
<label class="form-check-label">
ویرایش کاربر
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[user_delete]"
value="1"
@checked($admin->permission?->user_delete)
>
<label class="form-check-label">
حذف کاربر
</label>
</div>
</div>
{{-- مدیریت مدیران --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت مدیران</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_view]"
value="1"
@checked($admin->permission?->admin_view)
>
<label class="form-check-label">
مشاهده مدیران
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_create]"
value="1"
@checked($admin->permission?->admin_create)
>
<label class="form-check-label">
ایجاد مدیر
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_edit]"
value="1"
@checked($admin->permission?->admin_edit)
>
<label class="form-check-label">
ویرایش مدیر
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_delete]"
value="1"
@checked($admin->permission?->admin_delete)
>
<label class="form-check-label">
حذف مدیر
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="card-footer text-end">
<a
href="{{ route('admin.admins.index') }}"
class="btn btn-light">
انصراف
</a>
<button type="submit" class="btn btn-primary">
ذخیره تغییرات
</button>
</div>
<div class="card-header">
<div class="card-title">ویرایش مدیر</div>
</div> </div>
</form> <div class="card-body">
<div class="row gy-3">
<div class="col-xl-6">
<label class="form-label">نام</label>
<input
type="text"
class="form-control"
name="first_name"
value="{{ old('first_name', $admin->first_name) }}"
placeholder="نام را وارد کنید">
@error('first_name')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">نام خانوادگی</label>
<input
type="text"
class="form-control"
name="last_name"
value="{{ old('last_name', $admin->last_name) }}"
placeholder="نام خانوادگی را وارد کنید">
@error('last_name')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">نام کاربری</label>
<input
type="text"
class="form-control"
name="username"
value="{{ old('username', $admin->username) }}"
placeholder="نام کاربری">
@error('username')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">ایمیل</label>
<input
type="email"
class="form-control"
name="email"
value="{{ old('email', $admin->email) }}"
placeholder="ایمیل را وارد کنید">
@error('email')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">رمز عبور جدید</label>
<input
type="password"
class="form-control"
name="password"
placeholder="در صورت عدم تغییر خالی بگذارید">
@error('password')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="1"
@selected(old('status', $admin->status) == 1)>
فعال
</option>
<option
value="0"
@selected(old('status', $admin->status) == 0)>
غیرفعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<div class="card custom-card mt-4">
<div class="card-header">
<div class="card-title">دسترسی‌های مدیر</div>
</div>
<div class="card-body">
<div class="row gy-4">
{{-- مدیریت پروازها --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت پروازها</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[flight_create]"
value="1"
@checked($admin->permission?->flight_create)
>
<label class="form-check-label">
درج پرواز
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[flight_edit]"
value="1"
@checked($admin->permission?->flight_edit)
>
<label class="form-check-label">
ویرایش پرواز
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[flight_delete]"
value="1"
@checked($admin->permission?->flight_delete)
>
<label class="form-check-label">
حذف پرواز
</label>
</div>
</div>
{{-- مدیریت تورها --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت تورها</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[tour_create]"
value="1"
@checked($admin->permission?->tour_create)
>
<label class="form-check-label">
درج تور
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[tour_edit]"
value="1"
@checked($admin->permission?->tour_edit)
>
<label class="form-check-label">
ویرایش تور
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[tour_delete]"
value="1"
@checked($admin->permission?->tour_delete)
>
<label class="form-check-label">
حذف تور
</label>
</div>
</div>
{{-- مدیریت رزروها --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت رزروها</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[booking_view]"
value="1"
@checked($admin->permission?->booking_view)
>
<label class="form-check-label">
مشاهده رزروها
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[booking_edit]"
value="1"
@checked($admin->permission?->booking_edit)
>
<label class="form-check-label">
ویرایش رزرو
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[booking_delete]"
value="1"
@checked($admin->permission?->booking_delete)
>
<label class="form-check-label">
حذف رزرو
</label>
</div>
</div>
{{-- مدیریت کاربران --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت کاربران</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[user_view]"
value="1"
@checked($admin->permission?->user_view)
>
<label class="form-check-label">
مشاهده کاربران
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[user_edit]"
value="1"
@checked($admin->permission?->user_edit)
>
<label class="form-check-label">
ویرایش کاربر
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[user_delete]"
value="1"
@checked($admin->permission?->user_delete)
>
<label class="form-check-label">
حذف کاربر
</label>
</div>
</div>
{{-- مدیریت مدیران --}}
<div class="col-xl-3 col-lg-6">
<h6 class="fw-semibold mb-3">مدیریت مدیران</h6>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_view]"
value="1"
@checked($admin->permission?->admin_view)
>
<label class="form-check-label">
مشاهده مدیران
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_create]"
value="1"
@checked($admin->permission?->admin_create)
>
<label class="form-check-label">
ایجاد مدیر
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_edit]"
value="1"
@checked($admin->permission?->admin_edit)
>
<label class="form-check-label">
ویرایش مدیر
</label>
</div>
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[admin_delete]"
value="1"
@checked($admin->permission?->admin_delete)
>
<label class="form-check-label">
حذف مدیر
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="card-footer text-end">
<a
href="{{ route('admin.admins.index') }}"
class="btn btn-light">
انصراف
</a>
<button type="submit" class="btn btn-primary">
ذخیره تغییرات
</button>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div> </div>
@endsection @endsection
+130 -131
View File
@@ -14,146 +14,145 @@
</div> </div>
@endsection @endsection
@section('content') @section('content')
<div class="main-content app-content">
<div class="container-fluid pt-4">
@error('success')
<span class="text-success">{{ $message }}</span>
@enderror
<!-- Filter + Search --> <div class="container-fluid pt-4">
<div class="row"> @error('success')
<div class="col-xl-12"> <span class="text-success">{{ $message }}</span>
<div class="card custom-card"> @enderror
<div class="card-body p-3">
<form method="GET">
<div class="d-flex align-items-center justify-content-between flex-wrap gap-3">
<!-- Left: Add Admin + Sort --> <!-- Filter + Search -->
<div class="d-flex flex-wrap gap-1 project-list-main align-items-center"> <div class="row">
<div class="d-flex me-2"> <div class="col-xl-12">
<input class="form-control me-2" type="search" name="search" <div class="card custom-card">
placeholder="جستجو ادمین" value="{{ request()->input('search') }}" <div class="card-body p-3">
aria-label="جستجو"> <form method="GET">
<button class="btn btn-light" type="submit">جستجو</button> <div class="d-flex align-items-center justify-content-between flex-wrap gap-3">
</div>
<select id="choices-single-default" class="form-control" name="sort"> <!-- Left: Add Admin + Sort -->
<option value="">مرتب‌سازی بر اساس</option> <div class="d-flex flex-wrap gap-1 project-list-main align-items-center">
<option <div class="d-flex me-2">
value="name_asc" @selected(request()->missing('sort') || request()->input('sort') == 'name_asc')> <input class="form-control me-2" type="search" name="search"
الفبا (الف - ی) placeholder="جستجو ادمین" value="{{ request()->input('search') }}"
</option> aria-label="جستجو">
<option <button class="btn btn-light" type="submit">جستجو</button>
value="name_desc" @selected(request()->input('sort') == 'name_desc')>
الفبا (ی - الف)
</option>
<option value="newest" @selected(request()->input('sort') == 'newest')>
جدیدترین
</option>
<option
value="name_desc" @selected(request()->input('sort') == 'email')>
ایمیل
</option>
</select>
</div> </div>
<!-- Right: Search --> <select id="choices-single-default" class="form-control" name="sort">
@if(auth('admin')->user()->permission?->admin_create) <option value="">مرتب‌سازی بر اساس</option>
<a href="{{ route('admin.admins.create') }}" <option
class="btn btn-primary me-2"> value="name_asc" @selected(request()->missing('sort') || request()->input('sort') == 'name_asc')>
<i class="ri-add-line me-1 fw-medium align-middle"></i> الفبا (الف - ی)
ایجاد مدیر </option>
</a> <option
@endif value="name_desc" @selected(request()->input('sort') == 'name_desc')>
الفبا (ی - الف)
</option>
<option value="newest" @selected(request()->input('sort') == 'newest')>
جدیدترین
</option>
<option
value="name_desc" @selected(request()->input('sort') == 'email')>
ایمیل
</option>
</select>
</div> </div>
</form>
</div> <!-- Right: Search -->
@if(auth('admin')->user()->permission?->admin_create)
<a href="{{ route('admin.admins.create') }}"
class="btn btn-primary me-2">
<i class="ri-add-line me-1 fw-medium align-middle"></i>
ایجاد مدیر
</a>
@endif
</div>
</form>
</div> </div>
</div> </div>
</div> </div>
<!-- Table -->
<div class="row">
<div class="col-xl-12">
<div class="card custom-card">
<div class="table-responsive">
<table class="table text-nowrap table-bordered">
<thead>
<tr>
<th>نام</th>
<th>نام خانوادگی</th>
<th>نام کاربری</th>
<th>ایمیل</th>
<th>وضعیت</th>
<th>آخرین ورود</th>
<th>تاریخ ایجاد</th>
<th>اقدامات</th>
</tr>
</thead>
<tbody>
@foreach($admins as $admin)
<tr>
<td>{{ $admin->first_name }}</td>
<td>{{ $admin->last_name }}</td>
<td>{{ $admin->username }}</td>
<td>{{ $admin->email }}</td>
<td>
@switch($admin->status)
@case(\App\Enums\AdminStatus::DISABLE)
<span class="badge bg-warning-transparent">غیرفعال</span>
@break
@case(\App\Enums\AdminStatus::ENABLE)
<span class="badge bg-primary-transparent">فعال</span>
@break
@endswitch
</td>
<td>
@if($admin->last_login_at)
{{ $admin->last_login_at->toJalali()->format('H:i d-F-Y') }}
@else
-
@endif
</td>
<td>{{ $admin->created_at->toJalali()->format('H:i d-F-Y') }}</td>
<td>
<div class="hstack gap-2 fs-15">
@if(auth('admin')->user()->permission?->admin_edit)
<a href="{{ route('admin.admins.edit', $admin->id) }}"
class="btn btn-secondary-light btn-icon btn-sm"
title="ویرایش">
<i class="ti ti-pencil"></i>
</a>
@endif
@if(auth('admin')->user()->permission?->admin_delete)
<form action="{{ route('admin.admins.destroy', $admin->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این ادمین مطمئن هستید؟')">
@csrf
@method('DELETE')
<button type="submit"
class="btn btn-icon btn-sm btn-danger-light">
<i class="ri-delete-bin-line"></i>
</button>
</form>
@endif
</div>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
<!-- Pagination -->
{{ $admins->links() }}
</div> </div>
<!-- Table -->
<div class="row">
<div class="col-xl-12">
<div class="card custom-card">
<div class="table-responsive">
<table class="table text-nowrap table-bordered">
<thead>
<tr>
<th>نام</th>
<th>نام خانوادگی</th>
<th>نام کاربری</th>
<th>ایمیل</th>
<th>وضعیت</th>
<th>آخرین ورود</th>
<th>تاریخ ایجاد</th>
<th>اقدامات</th>
</tr>
</thead>
<tbody>
@foreach($admins as $admin)
<tr>
<td>{{ $admin->first_name }}</td>
<td>{{ $admin->last_name }}</td>
<td>{{ $admin->username }}</td>
<td>{{ $admin->email }}</td>
<td>
@switch($admin->status)
@case(\App\Enums\AdminStatus::DISABLE)
<span class="badge bg-warning-transparent">غیرفعال</span>
@break
@case(\App\Enums\AdminStatus::ENABLE)
<span class="badge bg-primary-transparent">فعال</span>
@break
@endswitch
</td>
<td>
@if($admin->last_login_at)
{{ $admin->last_login_at->toJalali()->format('H:i d-F-Y') }}
@else
-
@endif
</td>
<td>{{ $admin->created_at->toJalali()->format('H:i d-F-Y') }}</td>
<td>
<div class="hstack gap-2 fs-15">
@if(auth('admin')->user()->permission?->admin_edit)
<a href="{{ route('admin.admins.edit', $admin->id) }}"
class="btn btn-secondary-light btn-icon btn-sm"
title="ویرایش">
<i class="ti ti-pencil"></i>
</a>
@endif
@if(auth('admin')->user()->permission?->admin_delete)
<form action="{{ route('admin.admins.destroy', $admin->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این ادمین مطمئن هستید؟')">
@csrf
@method('DELETE')
<button type="submit"
class="btn btn-icon btn-sm btn-danger-light">
<i class="ri-delete-bin-line"></i>
</button>
</form>
@endif
</div>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
<!-- Pagination -->
{{ $admins->links() }}
</div> </div>
@endsection @endsection
@@ -16,7 +16,6 @@
@section('content') @section('content')
<div class="main-content app-content">
<div class="container-fluid pt-4"> <div class="container-fluid pt-4">
@@ -208,7 +207,6 @@
</div> </div>
</div>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script> <script>
+315 -317
View File
@@ -1,347 +1,345 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<form action="{{ route('admin.flights.store') }}" method="POST" enctype="multipart/form-data"> <form action="{{ route('admin.flights.store') }}" method="POST" enctype="multipart/form-data">
@csrf @csrf
@error('general') @error('general')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header"> <div class="card-header">
<div class="card-title"> <div class="card-title">
ایجاد پرواز ایجاد پرواز
</div>
</div> </div>
</div>
<div class="card-body pt-0"> <div class="card-body pt-0">
<div class="row gy-3"> <div class="row gy-3">
<!-- Title --> <!-- Title -->
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">عنوان پرواز</label> <label class="form-label">عنوان پرواز</label>
<input <input
type="text" type="text"
class="form-control" class="form-control"
name="title" name="title"
placeholder="عنوان پرواز را وارد کنید" placeholder="عنوان پرواز را وارد کنید"
value="{{ old('title') }}" value="{{ old('title') }}"
> >
@error('title')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Airline -->
<div class="col-xl-6">
<label class="form-label">شرکت هواپیمایی</label>
<select class="form-control" name="airline_id">
<option value="">
یک شرکت هواپیمایی انتخاب کنید
</option>
@foreach($airlines as $airline)
<option
value="{{ $airline->id }}"
@selected(old('airline_id') == $airline->id)
>
{{ $airline->name }}
</option>
@endforeach
</select>
@error('airline_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Flight Type -->
<div class="col-xl-6">
<label class="form-label">نوع پرواز</label>
<select class="form-control" name="flight_type">
<option
value="0"
@selected(old('flight_type') == '0')
>
رفت
</option>
<option
value="1"
@selected(old('flight_type') == '1')
>
برگشت
</option>
<option
value="2"
@selected(old('flight_type') == '2')
>
رفت و برگشت
</option>
</select>
@error('flight_type')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مبدأ</label>
<select class="form-control" name="departure_airport_id">
<option value="">
فرودگاه مبدأ را انتخاب کنید
</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('departure_airport_id') == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('departure_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Arrival Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مقصد</label>
<select class="form-control" name="arrival_airport_id">
<option value="">
فرودگاه مقصد را انتخاب کنید
</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('arrival_airport_id') == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('arrival_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time') }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت پرواز را وارد کنید"
value="{{ old('price') }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Capacity -->
<div class="col-xl-6">
<label class="form-label">ظرفیت</label>
<input
type="number"
class="form-control"
name="capacity"
placeholder="ظرفیت پرواز را وارد کنید"
value="{{ old('capacity') }}"
>
@error('capacity')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status') == '0')
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', '1') == '1')
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از پرواز"
value="{{ old('summary') }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات پرواز را وارد کنید"
>{{ old('description') }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر پرواز</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
@error('title')
<span class="text-danger">{{ $message }}</span>
@enderror
</div> </div>
</div>
<div class="card-footer text-end"> <!-- Airline -->
<div class="col-xl-6">
<label class="form-label">شرکت هواپیمایی</label>
<button type="submit" class="btn btn-primary"> <select class="form-control" name="airline_id">
ایجاد پرواز
</button> <option value="">
یک شرکت هواپیمایی انتخاب کنید
</option>
@foreach($airlines as $airline)
<option
value="{{ $airline->id }}"
@selected(old('airline_id') == $airline->id)
>
{{ $airline->name }}
</option>
@endforeach
</select>
@error('airline_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Flight Type -->
<div class="col-xl-6">
<label class="form-label">نوع پرواز</label>
<select class="form-control" name="flight_type">
<option
value="0"
@selected(old('flight_type') == '0')
>
رفت
</option>
<option
value="1"
@selected(old('flight_type') == '1')
>
برگشت
</option>
<option
value="2"
@selected(old('flight_type') == '2')
>
رفت و برگشت
</option>
</select>
@error('flight_type')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مبدأ</label>
<select class="form-control" name="departure_airport_id">
<option value="">
فرودگاه مبدأ را انتخاب کنید
</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('departure_airport_id') == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('departure_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Arrival Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مقصد</label>
<select class="form-control" name="arrival_airport_id">
<option value="">
فرودگاه مقصد را انتخاب کنید
</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('arrival_airport_id') == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('arrival_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time') }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت پرواز را وارد کنید"
value="{{ old('price') }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Capacity -->
<div class="col-xl-6">
<label class="form-label">ظرفیت</label>
<input
type="number"
class="form-control"
name="capacity"
placeholder="ظرفیت پرواز را وارد کنید"
value="{{ old('capacity') }}"
>
@error('capacity')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status') == '0')
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', '1') == '1')
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از پرواز"
value="{{ old('summary') }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات پرواز را وارد کنید"
>{{ old('description') }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر پرواز</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div> </div>
</div> </div>
</form> <div class="card-footer text-end">
<button type="submit" class="btn btn-primary">
ایجاد پرواز
</button>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div> </div>
<link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css"> <link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css">
+312 -314
View File
@@ -1,339 +1,337 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
@error('error') @error('error')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<form action="{{ route('admin.flights.update', $flight) }}" method="POST" enctype="multipart/form-data"> <form action="{{ route('admin.flights.update', $flight) }}" method="POST" enctype="multipart/form-data">
@csrf @csrf
@method('put') @method('put')
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header"> <div class="card-header">
<div class="card-title"> <div class="card-title">
ویرایش پرواز ویرایش پرواز
</div>
</div> </div>
</div>
<div class="card-body pt-0">
<div class="card-body pt-0">
<div class="row gy-3">
<div class="row gy-3">
<!-- Title -->
<div class="col-xl-6"> <!-- Title -->
<label class="form-label">عنوان پرواز</label> <div class="col-xl-6">
<input <label class="form-label">عنوان پرواز</label>
type="text" <input
class="form-control" type="text"
name="title" class="form-control"
placeholder="عنوان پرواز را وارد کنید" name="title"
value="{{ old('title', $flight->title) }}" placeholder="عنوان پرواز را وارد کنید"
> value="{{ old('title', $flight->title) }}"
>
@error('title')
<span class="text-danger">{{ $message }}</span> @error('title')
@enderror <span class="text-danger">{{ $message }}</span>
</div> @enderror
<!-- Airline -->
<div class="col-xl-6">
<label class="form-label">شرکت هواپیمایی</label>
<select class="form-control" name="airline_id">
<option value="">یک شرکت هواپیمایی انتخاب کنید</option>
@foreach($airlines as $airline)
<option
value="{{ $airline->id }}"
@selected(old('airline_id', $flight->airline_id) == $airline->id)
>
{{ $airline->name }}
</option>
@endforeach
</select>
@error('airline_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Flight Type -->
<div class="col-xl-6">
<label class="form-label">نوع پرواز</label>
<select class="form-control" name="flight_type">
<option
value="0"
@selected(old('flight_type', $flight->flight_type) == 0)
>
رفت
</option>
<option
value="1"
@selected(old('flight_type', $flight->flight_type) == 1)
>
برگشت
</option>
<option
value="2"
@selected(old('flight_type', $flight->flight_type) == 2)
>
رفت و برگشت
</option>
</select>
@error('flight_type')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مبدأ</label>
<select class="form-control" name="departure_airport_id">
<option value="">فرودگاه مبدأ را انتخاب کنید</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('departure_airport_id', $flight->departure_airport_id) == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('departure_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Arrival Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مقصد</label>
<select class="form-control" name="arrival_airport_id">
<option value="">فرودگاه مقصد را انتخاب کنید</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('arrival_airport_id', $flight->arrival_airport_id) == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('arrival_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali', $flight->departure_time ? verta($flight->departure_time)->format('Y/m/d H:i') : '') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time', optional($flight->departure_time)->format('Y-m-d H:i:s')) }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت پرواز را وارد کنید"
value="{{ old('price', $flight->price) }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Capacity -->
<div class="col-xl-6">
<label class="form-label">ظرفیت</label>
<input
type="number"
class="form-control"
name="capacity"
placeholder="ظرفیت پرواز را وارد کنید"
value="{{ old('capacity', $flight->capacity) }}"
>
@error('capacity')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status', $flight->status) == 0)
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', $flight->status) == 1)
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از پرواز"
value="{{ old('summary', $flight->summary) }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات پرواز را وارد کنید"
>{{ old('description', $flight->description) }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر پرواز</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
@if($flight->file)
<div class="mt-3">
<img
src="{{ getFileUrl($flight->file->id) }}"
alt="{{ $flight->title }}"
style="width:150px;height:150px;object-fit:cover;border-radius:8px;"
>
</div>
@endif
</div>
</div> </div>
</div>
<div class="card-footer text-end"> <!-- Airline -->
<div class="col-xl-6">
<label class="form-label">شرکت هواپیمایی</label>
<button type="submit" class="btn btn-primary"> <select class="form-control" name="airline_id">
ذخیره تغییرات <option value="">یک شرکت هواپیمایی انتخاب کنید</option>
</button>
@foreach($airlines as $airline)
<option
value="{{ $airline->id }}"
@selected(old('airline_id', $flight->airline_id) == $airline->id)
>
{{ $airline->name }}
</option>
@endforeach
</select>
@error('airline_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Flight Type -->
<div class="col-xl-6">
<label class="form-label">نوع پرواز</label>
<select class="form-control" name="flight_type">
<option
value="0"
@selected(old('flight_type', $flight->flight_type) == 0)
>
رفت
</option>
<option
value="1"
@selected(old('flight_type', $flight->flight_type) == 1)
>
برگشت
</option>
<option
value="2"
@selected(old('flight_type', $flight->flight_type) == 2)
>
رفت و برگشت
</option>
</select>
@error('flight_type')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مبدأ</label>
<select class="form-control" name="departure_airport_id">
<option value="">فرودگاه مبدأ را انتخاب کنید</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('departure_airport_id', $flight->departure_airport_id) == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('departure_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Arrival Airport -->
<div class="col-xl-6">
<label class="form-label">فرودگاه مقصد</label>
<select class="form-control" name="arrival_airport_id">
<option value="">فرودگاه مقصد را انتخاب کنید</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
@selected(old('arrival_airport_id', $flight->arrival_airport_id) == $airport->id)
>
{{ $airport->name }}
@if($airport->city)
- {{ $airport->city->name }}
@endif
</option>
@endforeach
</select>
@error('arrival_airport_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali', $flight->departure_time ? verta($flight->departure_time)->format('Y/m/d H:i') : '') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time', optional($flight->departure_time)->format('Y-m-d H:i:s')) }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت پرواز را وارد کنید"
value="{{ old('price', $flight->price) }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Capacity -->
<div class="col-xl-6">
<label class="form-label">ظرفیت</label>
<input
type="number"
class="form-control"
name="capacity"
placeholder="ظرفیت پرواز را وارد کنید"
value="{{ old('capacity', $flight->capacity) }}"
>
@error('capacity')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status', $flight->status) == 0)
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', $flight->status) == 1)
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از پرواز"
value="{{ old('summary', $flight->summary) }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات پرواز را وارد کنید"
>{{ old('description', $flight->description) }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر پرواز</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
@if($flight->file)
<div class="mt-3">
<img
src="{{ getFileUrl($flight->file->id) }}"
alt="{{ $flight->title }}"
style="width:150px;height:150px;object-fit:cover;border-radius:8px;"
>
</div>
@endif
</div>
</div> </div>
</div> </div>
</form> <div class="card-footer text-end">
<button type="submit" class="btn btn-primary">
ذخیره تغییرات
</button>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div> </div>
<link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css"> <link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css">
+208 -210
View File
@@ -19,145 +19,144 @@
@endsection @endsection
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4"> @error('success')
@error('success') <span class="text-success">{{ $message }}</span>
<span class="text-success">{{ $message }}</span> @enderror
@enderror
@error('error') @error('error')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<div class="card custom-card"> <div class="card custom-card">
<div class="card-body p-3"> <div class="card-body p-3">
<form method="GET"> <form method="GET">
<div class="d-flex align-items-center justify-content-between flex-wrap gap-3"> <div class="d-flex align-items-center justify-content-between flex-wrap gap-3">
<div class="d-flex flex-wrap gap-1 project-list-main align-items-center"> <div class="d-flex flex-wrap gap-1 project-list-main align-items-center">
<div class="d-flex me-2"> <div class="d-flex me-2">
<input <input
class="form-control me-2" class="form-control me-2"
type="search" type="search"
name="search" name="search"
placeholder="جستجو پرواز" placeholder="جستجو پرواز"
value="{{ request()->input('search') }}" value="{{ request()->input('search') }}"
aria-label="جستجو" aria-label="جستجو"
>
<button class="btn btn-light" type="submit">
جستجو
</button>
</div>
<select
id="choices-single-default"
class="form-control"
name="sort"
> >
<option value="" selected>
مرتب‌سازی بر اساس
</option>
<option
value="created_at"
@selected(request()->input('sort') == 'created_at')
>
جدیدترین
</option>
<option
value="price_asc"
@selected(request()->input('sort') == 'price_asc')
>
قیمت (کم به زیاد)
</option>
<option
value="price_desc"
@selected(request()->input('sort') == 'price_desc')
>
قیمت (زیاد به کم)
</option>
<option
value="departure_time_asc"
@selected(request()->input('sort') == 'departure_time_asc')
>
زمان حرکت (زودترین)
</option>
<option
value="departure_time_desc"
@selected(request()->input('sort') == 'departure_time_desc')
>
زمان حرکت (دیرترین)
</option>
</select>
<button class="btn btn-light" type="submit">
جستجو
</button>
</div> </div>
@if(auth('admin')->user()->permission?->flight_create) <select
<div class="d-flex"> id="choices-single-default"
<a class="form-control"
href="{{ route('admin.flights.create') }}" name="sort"
class="btn btn-primary me-2" >
> <option value="" selected>
<i class="ri-add-line me-1 fw-medium align-middle"></i> مرتب‌سازی بر اساس
ایجاد پرواز </option>
</a>
</div> <option
@endif value="created_at"
@selected(request()->input('sort') == 'created_at')
>
جدیدترین
</option>
<option
value="price_asc"
@selected(request()->input('sort') == 'price_asc')
>
قیمت (کم به زیاد)
</option>
<option
value="price_desc"
@selected(request()->input('sort') == 'price_desc')
>
قیمت (زیاد به کم)
</option>
<option
value="departure_time_asc"
@selected(request()->input('sort') == 'departure_time_asc')
>
زمان حرکت (زودترین)
</option>
<option
value="departure_time_desc"
@selected(request()->input('sort') == 'departure_time_desc')
>
زمان حرکت (دیرترین)
</option>
</select>
</div> </div>
</form>
</div> @if(auth('admin')->user()->permission?->flight_create)
<div class="d-flex">
<a
href="{{ route('admin.flights.create') }}"
class="btn btn-primary me-2"
>
<i class="ri-add-line me-1 fw-medium align-middle"></i>
ایجاد پرواز
</a>
</div>
@endif
</div>
</form>
</div> </div>
</div> </div>
</div> </div>
</div>
<!-- Flights Table --> <!-- Flights Table -->
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<div class="card custom-card"> <div class="card custom-card">
<div class="table-responsive"> <div class="table-responsive">
<table class="table text-nowrap table-bordered"> <table class="table text-nowrap table-bordered">
<thead>
<tr>
<th>عکس</th>
<th>عنوان</th>
<th>ایرلاین</th>
<th>نوع پرواز</th>
<th>زمان حرکت</th>
<th>مبدا</th>
<th>مقصد</th>
<th>قیمت</th>
<th>ظرفیت</th>
<th>وضعیت</th>
<th>تاریخ ثبت</th>
<th>تاریخ ویرایش</th>
<th>عملیات</th>
</tr>
</thead>
<tbody>
@foreach($flights as $flight)
<thead>
<tr> <tr>
<th>عکس</th>
<th>عنوان</th>
<th>ایرلاین</th>
<th>نوع پرواز</th>
<th>زمان حرکت</th>
<th>مبدا</th>
<th>مقصد</th>
<th>قیمت</th>
<th>ظرفیت</th>
<th>وضعیت</th>
<th>تاریخ ثبت</th>
<th>تاریخ ویرایش</th>
<th>عملیات</th>
</tr>
</thead>
<tbody>
@foreach($flights as $flight)
<tr>
<td> <td>
<span class="avatar avatar-md avatar-square bg-light"> <span class="avatar avatar-md avatar-square bg-light">
@if($flight->file?->id) @if($flight->file?->id)
@@ -175,147 +174,146 @@
@endif @endif
</span> </span>
</td> </td>
<td> <td>
<span class="fw-semibold"> <span class="fw-semibold">
{{ $flight->title }} {{ $flight->title }}
</span> </span>
</td> </td>
<td> <td>
{{ $flight->airline?->name}} {{ $flight->airline?->name}}
</td> </td>
<td> <td>
@switch($flight->flight_type) @switch($flight->flight_type)
@case(0) @case(0)
<span class="badge bg-primary-transparent"> <span class="badge bg-primary-transparent">
رفت رفت
</span> </span>
@break @break
@case(1) @case(1)
<span class="badge bg-warning-transparent"> <span class="badge bg-warning-transparent">
برگشت برگشت
</span> </span>
@break @break
@case(2) @case(2)
<span class="badge bg-success-transparent"> <span class="badge bg-success-transparent">
رفت و برگشت رفت و برگشت
</span> </span>
@break @break
@default @default
- -
@endswitch @endswitch
</td> </td>
<td> <td>
{{ $flight->departure_time->toJalali()->format('H:i Y-m-d') }} {{ $flight->departure_time->toJalali()->format('H:i Y-m-d') }}
</td> </td>
<td> <td>
{{ $flight->departureAirport?->city?->name }} {{ $flight->departureAirport?->city?->name }}
</td> </td>
<td> <td>
{{ $flight->arrivalAirport?->city?->name }} {{ $flight->arrivalAirport?->city?->name }}
</td> </td>
<td> <td>
{{ number_format($flight->price) }} {{ number_format($flight->price) }}
تومان تومان
</td> </td>
<td> <td>
{{ $flight->capacity }} {{ $flight->capacity }}
</td> </td>
<td> <td>
@if($flight->status == \App\Enums\FlightStatus::ENABLE) @if($flight->status == \App\Enums\FlightStatus::ENABLE)
<span class="badge bg-primary-transparent"> <span class="badge bg-primary-transparent">
فعال فعال
</span> </span>
@elseif($flight->status == \App\Enums\FlightStatus::DISABLE ) @elseif($flight->status == \App\Enums\FlightStatus::DISABLE )
<span class="badge bg-warning-transparent"> <span class="badge bg-warning-transparent">
غیرفعال غیرفعال
</span> </span>
@endif
</td>
<td>
{{ $flight->created_at->toJalali()->format('H:i Y-m-d') }}
</td>
<td>
{{ $flight->updated_at->toJalali()->format('H:i Y-m-d') }}
</td>
<td>
<div class="hstack gap-2 fs-15">
@if(auth('admin')->user()->permission?->flight_edit)
<a
href="{{ route('admin.flights.edit', $flight->id) }}"
class="btn btn-secondary-light btn-icon btn-sm"
data-bs-toggle="tooltip"
data-bs-placement="top"
title="ویرایش"
>
<i class="ti ti-pencil"></i>
</a>
@endif @endif
</td>
<td>
{{ $flight->created_at->toJalali()->format('H:i Y-m-d') }}
</td>
<td> @if(auth('admin')->user()->permission?->flight_delete)
{{ $flight->updated_at->toJalali()->format('H:i Y-m-d') }}
</td>
<td> <form
<div class="hstack gap-2 fs-15"> action="{{ route('admin.flights.destroy', $flight->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این پرواز مطمئن هستید؟')"
>
@if(auth('admin')->user()->permission?->flight_edit) @csrf
@method('DELETE')
<a <button
href="{{ route('admin.flights.edit', $flight->id) }}" type="submit"
class="btn btn-secondary-light btn-icon btn-sm" class="btn btn-icon btn-sm btn-danger-light"
data-bs-toggle="tooltip" title="حذف"
data-bs-placement="top"
title="ویرایش"
> >
<i class="ti ti-pencil"></i> <i class="ri-delete-bin-line"></i>
</a> </button>
@endif </form>
@endif
@if(auth('admin')->user()->permission?->flight_delete) </div>
</td>
<form </tr>
action="{{ route('admin.flights.destroy', $flight->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این پرواز مطمئن هستید؟')"
>
@csrf @endforeach
@method('DELETE')
<button </tbody>
type="submit"
class="btn btn-icon btn-sm btn-danger-light"
title="حذف"
>
<i class="ri-delete-bin-line"></i>
</button>
</form> </table>
@endif
</div>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div> </div>
{{ $flights->links() }}
</div> </div>
</div>
{{ $flights->links() }}
</div>
</div> </div>
</div> </div>
@endsection @endsection
+23 -86
View File
@@ -31,139 +31,76 @@
</div> </div>
<ul class="main-menu mx-0"> <ul class="main-menu mx-0">
<!-- Start::slide --> <!-- Start::slide -->
<li class="slide "> <!-- داشبورد -->
<li class="slide">
<a href="{{route('admin.dashboard.index')}}" <a href="{{route('admin.dashboard.index')}}"
class="side-menu__item {{activeAdminSidebar('admin.dashboard.index')}}"> class="side-menu__item {{activeAdminSidebar('admin.dashboard.index')}}">
<svg xmlns="http://www.w3.org/2000/svg" class="side-menu__icon" width="1em" <i class="ri-dashboard-line side-menu__icon"></i>
height="1em" viewBox="0 0 24 24">
<g fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5" color="currentColor">
<path d="m9 22l-.251-3.509a3.259 3.259 0 1 1 6.501 0L15 22"></path>
<path
d="M2.352 13.214c-.354-2.298-.53-3.446-.096-4.465s1.398-1.715 3.325-3.108L7.021 4.6C9.418 2.867 10.617 2 12.001 2c1.382 0 2.58.867 4.978 2.6l1.44 1.041c1.927 1.393 2.89 2.09 3.325 3.108c.434 1.019.258 2.167-.095 4.464l-.301 1.96c-.5 3.256-.751 4.884-1.919 5.856S16.554 22 13.14 22h-2.28c-3.415 0-5.122 0-6.29-.971c-1.168-.972-1.418-2.6-1.918-5.857z"></path>
</g>
</svg>
<span class="side-menu__label">داشبورد</span> <span class="side-menu__label">داشبورد</span>
</a> </a>
</li> </li>
<!-- End::slide -->
<!-- Start::slide --> <!-- مدیریت کاربران -->
@if(auth('admin')->user()->permission?->admin_view) @if(auth('admin')->user()->permission?->admin_view)
<li class="slide "> <li class="slide">
<a href="{{ route('admin.users.index') }}" <a href="{{ route('admin.users.index') }}"
class="side-menu__item {{activeAdminSidebar(['admin.users.index', 'admin.users.edit'])}}"> class="side-menu__item {{activeAdminSidebar(['admin.users.index', 'admin.users.edit'])}}">
<i class="ri-group-line side-menu__icon"></i>
<svg xmlns="http://www.w3.org/2000/svg" class="side-menu__icon"
width="1em"
height="1em" viewBox="0 0 24 24">
<path fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5"
d="M13 2h-2C7.229 2 5.343 2 4.172 3.172S3 6.229 3 10v4c0 3.771 0 5.657 1.172 6.828S7.229 22 11 22h2c3.771 0 5.657 0 6.828-1.172S21 17.771 21 14v-4c0-3.771 0-5.657-1.172-6.828S16.771 2 13 2m8 10H3m12-5H9m6 10H9"
color="currentColor"></path>
</svg>
<span class="side-menu__label">مدیریت کاربران</span> <span class="side-menu__label">مدیریت کاربران</span>
</a> </a>
</li> </li>
@endif @endif
<!-- End::slide -->
<!-- Start::slide --> <!-- مدیریت تورها -->
@if(auth('admin')->user()->permission?->admin_view) @if(auth('admin')->user()->permission?->admin_view)
<li class="slide "> <li class="slide">
<a href="{{ route('admin.tours.index') }}" <a href="{{ route('admin.tours.index') }}"
class="side-menu__item {{activeAdminSidebar(['admin.tour.index' , 'admin.tour.create', 'admin.tour.edit'])}}"> class="side-menu__item {{activeAdminSidebar(['admin.tours.index' , 'admin.tours.create', 'admin.tours.edit'])}}">
<svg xmlns="http://www.w3.org/2000/svg" class="side-menu__icon" <i class="ri-suitcase-line side-menu__icon"></i>
width="1em"
height="1em" viewBox="0 0 24 24">
<path fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5"
d="M2.5 12c0-4.478 0-6.718 1.391-8.109S7.521 2.5 12 2.5c4.478 0 6.718 0 8.109 1.391S21.5 7.521 21.5 12c0 4.478 0 6.718-1.391 8.109S16.479 21.5 12 21.5c-4.478 0-6.718 0-8.109-1.391S2.5 16.479 2.5 12M11 7h6M7 7h1m-1 5h1m-1 5h1m3-5h6m-6 5h6"
color="currentColor"></path>
</svg>
<span class="side-menu__label">مدیریت تورها</span> <span class="side-menu__label">مدیریت تورها</span>
</a> </a>
</li> </li>
@endif @endif
<!-- End::slide -->
<!-- Start::slide --> <!-- مدیریت پروازها -->
@if(auth('admin')->user()->permission?->admin_view) @if(auth('admin')->user()->permission?->admin_view)
<li class="slide "> <li class="slide">
<a href="{{ route('admin.flights.index') }}" <a href="{{ route('admin.flights.index') }}"
class="side-menu__item {{activeAdminSidebar(['admin.product.index', 'admin.product.show', 'admin.product.edit' , 'admin.product.create'])}}"> class="side-menu__item {{activeAdminSidebar(['admin.flights.index', 'admin.flights.edit' , 'admin.flights.create'])}}">
<svg xmlns="http://www.w3.org/2000/svg" class="side-menu__icon" <i class="ri-flight-takeoff-line side-menu__icon"></i>
width="1em" height="1em" viewBox="0 0 24 24">
<path fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5"
d="M4 11v4c0 3.3 0 4.95 1.025 5.975S7.7 22 11 22h2c3.3 0 4.95 0 5.975-1.025S20 18.3 20 15v-4M3 9c0-.748 0-1.122.201-1.4a1.4 1.4 0 0 1 .549-.44C4.098 7 4.565 7 5.5 7h13c.935 0 1.402 0 1.75.16c.228.106.417.258.549.44C21 7.878 21 8.252 21 9s0 1.121-.201 1.4a1.4 1.4 0 0 1-.549.44c-.348.16-.815.16-1.75.16h-13c-.935 0-1.402 0-1.75-.16a1.4 1.4 0 0 1-.549-.44C3 10.121 3 9.748 3 9m3-5.214C6 2.799 6.8 2 7.786 2h.357A3.857 3.857 0 0 1 12 5.857V7H9.214A3.214 3.214 0 0 1 6 3.786m12 0C18 2.799 17.2 2 16.214 2h-.357A3.857 3.857 0 0 0 12 5.857V7h2.786A3.214 3.214 0 0 0 18 3.786M12 11v11"
color="currentColor"></path>
</svg>
<span class="side-menu__label">مدیریت پروازها</span> <span class="side-menu__label">مدیریت پروازها</span>
</a> </a>
</li> </li>
@endif @endif
<!-- End::slide -->
<!-- Start::slide --> <!-- مدیریت دسته‌بندی‌ها -->
<li class="slide "> <li class="slide">
<a href="" <a href=""
class="side-menu__item {{activeAdminSidebar(['admin.categories.index', 'admin.categories.show','admin.categories.edit', 'admin.categories.create'])}}"> class="side-menu__item {{activeAdminSidebar(['admin.categories.index', 'admin.categories.show','admin.categories.edit', 'admin.categories.create'])}}">
<svg xmlns="http://www.w3.org/2000/svg" class="side-menu__icon" width="1em" <i class="ri-price-tag-3-line side-menu__icon"></i>
height="1em" viewBox="0 0 24 24">
<g fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5" color="currentColor">
<path
d="m8.643 3.146l-1.705.788C4.313 5.147 3 5.754 3 6.75s1.313 1.603 3.938 2.816l1.705.788c1.652.764 2.478 1.146 3.357 1.146s1.705-.382 3.357-1.146l1.705-.788C19.687 8.353 21 7.746 21 6.75s-1.313-1.603-3.938-2.816l-1.705-.788C13.705 2.382 12.879 2 12 2s-1.705.382-3.357 1.146"></path>
<path
d="M20.788 11.097c.141.199.212.406.212.634c0 .982-1.313 1.58-3.938 2.776l-1.705.777c-1.652.753-2.478 1.13-3.357 1.13s-1.705-.377-3.357-1.13l-1.705-.777C4.313 13.311 3 12.713 3 11.731c0-.228.07-.435.212-.634"></path>
<path
d="M20.377 16.266c.415.331.623.661.623 1.052c0 .981-1.313 1.58-3.938 2.776l-1.705.777C13.705 21.624 12.879 22 12 22s-1.705-.376-3.357-1.13l-1.705-.776C4.313 18.898 3 18.299 3 17.318c0-.391.208-.72.623-1.052"></path>
</g>
</svg>
<span class="side-menu__label">مدیریت دسته‌بندی‌ها</span> <span class="side-menu__label">مدیریت دسته‌بندی‌ها</span>
</a> </a>
</li> </li>
<!-- End::slide -->
<!-- Start::slide --> <!-- مدیریت مدیران -->
@if(auth('admin')->user()->permission?->admin_view) @if(auth('admin')->user()->permission?->admin_view)
<li class="slide active"> <li class="slide active">
<a href="{{route('admin.admins.index')}}" <a href="{{route('admin.admins.index')}}"
class="side-menu__item {{activeAdminSidebar(['admin.admins.index','admin.admins.show', 'admin.admins.edit', 'admin.admins.create'])}}"> class="side-menu__item {{activeAdminSidebar(['admin.admins.index','admin.admins.show', 'admin.admins.edit', 'admin.admins.create'])}}">
<svg xmlns="http://www.w3.org/2000/svg" <i class="ri-shield-user-line side-menu__icon"></i>
class="side-menu__icon"
width="1em"
height="1em"
viewBox="0 0 24 24">
<path fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5"
d="M12 12a5 5 0 1 0-5-5a5 5 0 0 0 5 5Zm-7 9a7 7 0 0 1 14 0Z"/>
</svg>
<span class="side-menu__label">مدیریت مدیران</span> <span class="side-menu__label">مدیریت مدیران</span>
</a> </a>
</li> </li>
@endif @endif
<!-- End::slide -->
<!-- مدیریت اطلاعات -->
<li class="slide active"> <li class="slide active">
<a href="" <a href=""
class="side-menu__item {{activeAdminSidebar(['admin.setting.index', 'admin.settings.edit'])}}"> class="side-menu__item {{activeAdminSidebar(['admin.setting.index', 'admin.settings.edit'])}}">
<svg xmlns="http://www.w3.org/2000/svg" <i class="ri-settings-3-line side-menu__icon"></i>
class="side-menu__icon"
width="1em"
height="1em"
viewBox="0 0 24 24">
<path fill="none" stroke="currentColor" stroke-linecap="round"
stroke-linejoin="round" stroke-width="1.5"
d="M12 12a5 5 0 1 0-5-5a5 5 0 0 0 5 5Zm-7 9a7 7 0 0 1 14 0Z"/>
</svg>
<span class="side-menu__label">مدیریت اطلاعات</span> <span class="side-menu__label">مدیریت اطلاعات</span>
</a> </a>
</li> </li>
</ul> </ul>
<div class="slide-right d-none" id="slide-right"> <div class="slide-right d-none" id="slide-right">
<svg xmlns="http://www.w3.org/2000/svg" fill="#7b8191" width="24" height="24" <svg xmlns="http://www.w3.org/2000/svg" fill="#7b8191" width="24" height="24"
+220 -221
View File
@@ -1,253 +1,252 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<form action="{{ route('admin.tours.store') }}" method="POST" enctype="multipart/form-data"> <form action="{{ route('admin.tours.store') }}" method="POST" enctype="multipart/form-data">
@csrf @csrf
@error('general') @error('general')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header"> <div class="card-header">
<div class="card-title"> <div class="card-title">
ایجاد تور ایجاد تور
</div>
</div> </div>
</div>
<div class="card-body pt-0"> <div class="card-body pt-0">
<div class="row gy-3"> <div class="row gy-3">
<!-- Title --> <!-- Title -->
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">عنوان تور</label> <label class="form-label">عنوان تور</label>
<input <input
type="text" type="text"
class="form-control" class="form-control"
name="title" name="title"
placeholder="عنوان تور را وارد کنید" placeholder="عنوان تور را وارد کنید"
value="{{ old('title') }}" value="{{ old('title') }}"
> >
@error('title')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Origin -->
<div class="col-xl-6">
<label class="form-label">مبدأ</label>
<input
type="text"
class="form-control"
name="origin"
placeholder="مبدأ تور را وارد کنید"
value="{{ old('origin') }}"
>
@error('origin')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Destination -->
<div class="col-xl-6">
<label class="form-label">مقصد</label>
<input
type="text"
class="form-control"
name="destination"
placeholder="مقصد تور را وارد کنید"
value="{{ old('destination') }}"
>
@error('destination')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">تاریخ و زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time') }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Duration -->
<div class="col-xl-6">
<label class="form-label">مدت تور</label>
<input
type="number"
class="form-control"
name="duration"
placeholder="مدت تور را وارد کنید"
value="{{ old('duration') }}"
>
@error('duration')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت تور را وارد کنید"
value="{{ old('price') }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status') == '0')
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', '1') == '1')
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از تور"
value="{{ old('summary') }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات تور را وارد کنید"
>{{ old('description') }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر تور</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
@error('title')
<span class="text-danger">{{ $message }}</span>
@enderror
</div> </div>
</div>
<div class="card-footer text-end"> <!-- Origin -->
<div class="col-xl-6">
<label class="form-label">مبدأ</label>
<button type="submit" class="btn btn-primary"> <input
ایجاد تور type="text"
</button> class="form-control"
name="origin"
placeholder="مبدأ تور را وارد کنید"
value="{{ old('origin') }}"
>
@error('origin')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Destination -->
<div class="col-xl-6">
<label class="form-label">مقصد</label>
<input
type="text"
class="form-control"
name="destination"
placeholder="مقصد تور را وارد کنید"
value="{{ old('destination') }}"
>
@error('destination')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">تاریخ و زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time') }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Duration -->
<div class="col-xl-6">
<label class="form-label">مدت تور</label>
<input
type="number"
class="form-control"
name="duration"
placeholder="مدت تور را وارد کنید"
value="{{ old('duration') }}"
>
@error('duration')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت تور را وارد کنید"
value="{{ old('price') }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status') == '0')
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', '1') == '1')
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از تور"
value="{{ old('summary') }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات تور را وارد کنید"
>{{ old('description') }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر تور</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div> </div>
</div> </div>
</form> <div class="card-footer text-end">
<button type="submit" class="btn btn-primary">
ایجاد تور
</button>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div> </div>
<link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css"> <link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css">
<script src="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.js"></script> <script src="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.js"></script>
+231 -232
View File
@@ -1,264 +1,263 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
@error('error') @error('error')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<form action="{{ route('admin.tours.update', $tour) }}" method="POST" enctype="multipart/form-data"> <form action="{{ route('admin.tours.update', $tour) }}" method="POST" enctype="multipart/form-data">
@csrf @csrf
@method('put') @method('put')
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header"> <div class="card-header">
<div class="card-title"> <div class="card-title">
ویرایش تور ویرایش تور
</div>
</div> </div>
</div>
<div class="card-body pt-0"> <div class="card-body pt-0">
<div class="row gy-3"> <div class="row gy-3">
<!-- Title --> <!-- Title -->
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">عنوان تور</label> <label class="form-label">عنوان تور</label>
<input <input
type="text" type="text"
class="form-control" class="form-control"
name="title" name="title"
placeholder="عنوان تور را وارد کنید" placeholder="عنوان تور را وارد کنید"
value="{{ old('title', $tour->title) }}" value="{{ old('title', $tour->title) }}"
> >
@error('title')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Origin -->
<div class="col-xl-6">
<label class="form-label">مبدأ</label>
<input
type="text"
class="form-control"
name="origin"
placeholder="مبدأ تور را وارد کنید"
value="{{ old('origin', $tour->origin) }}"
>
@error('origin')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Destination -->
<div class="col-xl-6">
<label class="form-label">مقصد</label>
<input
type="text"
class="form-control"
name="destination"
placeholder="مقصد تور را وارد کنید"
value="{{ old('destination', $tour->destination) }}"
>
@error('destination')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">تاریخ و زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali', $tour->departure_time ? verta($tour->departure_time)->format('Y/m/d H:i') : '') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time', optional($tour->departure_time)->format('Y-m-d H:i:s')) }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Duration -->
<div class="col-xl-6">
<label class="form-label">مدت تور</label>
<input
type="number"
class="form-control"
name="duration"
placeholder="مدت تور را وارد کنید"
value="{{ old('duration', $tour->duration) }}"
>
@error('duration')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت تور را وارد کنید"
value="{{ old('price', $tour->price) }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status', $tour->status) == 0)
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', $tour->status) == 1)
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از تور"
value="{{ old('summary', $tour->summary) }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات تور را وارد کنید"
>{{ old('description', $tour->description) }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر تور</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
@if($tour->file)
<div class="mt-3">
<img
src="{{ getFileUrl($tour->file->id) }}"
alt="{{ $tour->title }}"
style="width:150px;height:150px;object-fit:cover;border-radius:8px;"
>
</div>
@endif
</div>
@error('title')
<span class="text-danger">{{ $message }}</span>
@enderror
</div> </div>
</div>
<div class="card-footer text-end"> <!-- Origin -->
<div class="col-xl-6">
<label class="form-label">مبدأ</label>
<button type="submit" class="btn btn-primary"> <input
ذخیره تغییرات type="text"
</button> class="form-control"
name="origin"
placeholder="مبدأ تور را وارد کنید"
value="{{ old('origin', $tour->origin) }}"
>
@error('origin')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Destination -->
<div class="col-xl-6">
<label class="form-label">مقصد</label>
<input
type="text"
class="form-control"
name="destination"
placeholder="مقصد تور را وارد کنید"
value="{{ old('destination', $tour->destination) }}"
>
@error('destination')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Departure Time -->
<div class="col-xl-6">
<label class="form-label">تاریخ و زمان حرکت</label>
<input
type="text"
class="form-control"
name="departure_time_jalali"
id="departure_time_jalali"
data-jdp
data-jdp-target-value-input="#departure_time_gregorian"
data-jdp-target-value-type="gregorian"
autocomplete="off"
placeholder="مثلاً 1403/05/29 14:30"
value="{{ old('departure_time_jalali', $tour->departure_time ? verta($tour->departure_time)->format('Y/m/d H:i') : '') }}"
>
<input
type="hidden"
name="departure_time"
id="departure_time_gregorian"
value="{{ old('departure_time', optional($tour->departure_time)->format('Y-m-d H:i:s')) }}"
>
@error('departure_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Duration -->
<div class="col-xl-6">
<label class="form-label">مدت تور</label>
<input
type="number"
class="form-control"
name="duration"
placeholder="مدت تور را وارد کنید"
value="{{ old('duration', $tour->duration) }}"
>
@error('duration')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Price -->
<div class="col-xl-6">
<label class="form-label">قیمت</label>
<input
type="number"
class="form-control"
name="price"
placeholder="قیمت تور را وارد کنید"
value="{{ old('price', $tour->price) }}"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Status -->
<div class="col-xl-6">
<label class="form-label">وضعیت</label>
<select class="form-control" name="status">
<option
value="0"
@selected(old('status', $tour->status) == 0)
>
غیرفعال
</option>
<option
value="1"
@selected(old('status', $tour->status) == 1)
>
فعال
</option>
</select>
@error('status')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Summary -->
<div class="col-xl-12">
<label class="form-label">خلاصه</label>
<input
type="text"
class="form-control"
name="summary"
placeholder="خلاصه‌ای از تور"
value="{{ old('summary', $tour->summary) }}"
>
@error('summary')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Description -->
<div class="col-xl-12">
<label class="form-label">توضیحات</label>
<textarea
class="form-control"
name="description"
rows="4"
placeholder="توضیحات تور را وارد کنید"
>{{ old('description', $tour->description) }}</textarea>
@error('description')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
<!-- Image -->
<div class="col-xl-12">
<label class="form-label">تصویر تور</label>
<input
type="file"
class="form-control"
name="image"
accept=".jpg,.jpeg,.png,.webp"
>
@error('image')
<span class="text-danger">{{ $message }}</span>
@enderror
@if($tour->file)
<div class="mt-3">
<img
src="{{ getFileUrl($tour->file->id) }}"
alt="{{ $tour->title }}"
style="width:150px;height:150px;object-fit:cover;border-radius:8px;"
>
</div>
@endif
</div>
</div> </div>
</div> </div>
</form> <div class="card-footer text-end">
<button type="submit" class="btn btn-primary">
ذخیره تغییرات
</button>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div> </div>
<link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css"> <link rel="stylesheet" href="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.css">
<script src="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.js"></script> <script src="https://unpkg.com/@majidh1/jalalidatepicker/dist/jalalidatepicker.min.js"></script>
+190 -192
View File
@@ -19,161 +19,160 @@
@endsection @endsection
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
@error('success') @error('success')
<span class="text-success">{{ $message }}</span> <span class="text-success">{{ $message }}</span>
@enderror @enderror
@error('errors') @error('errors')
<span class="text-danger">{{ $message }}</span> <span class="text-danger">{{ $message }}</span>
@enderror @enderror
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<div class="card custom-card"> <div class="card custom-card">
<div class="card-body p-3"> <div class="card-body p-3">
<form method="GET"> <form method="GET">
<div class="d-flex align-items-center justify-content-between flex-wrap gap-3"> <div class="d-flex align-items-center justify-content-between flex-wrap gap-3">
<div class="d-flex flex-wrap gap-1 project-list-main align-items-center"> <div class="d-flex flex-wrap gap-1 project-list-main align-items-center">
<div class="d-flex me-2"> <div class="d-flex me-2">
<input <input
class="form-control me-2" class="form-control me-2"
type="search" type="search"
name="search" name="search"
placeholder="جستجو تور" placeholder="جستجو تور"
value="{{ request()->input('search') }}" value="{{ request()->input('search') }}"
aria-label="جستجو" aria-label="جستجو"
>
<button class="btn btn-light" type="submit">
جستجو
</button>
</div>
<select
id="choices-single-default"
class="form-control"
name="sort"
> >
<option value="" selected> <button class="btn btn-light" type="submit">
مرتب‌سازی بر اساس جستجو
</option> </button>
<option
value="created_at"
@selected(request()->input('sort') == 'created_at')
>
جدیدترین
</option>
<option
value="price_asc"
@selected(request()->input('sort') == 'price_asc')
>
قیمت (کم به زیاد)
</option>
<option
value="price_desc"
@selected(request()->input('sort') == 'price_desc')
>
قیمت (زیاد به کم)
</option>
<option
value="duration_asc"
@selected(request()->input('sort') == 'duration_asc')
>
مدت زمان (کم به زیاد)
</option>
<option
value="duration_desc"
@selected(request()->input('sort') == 'duration_desc')
>
مدت زمان (زیاد به کم)
</option>
</select>
</div> </div>
<select
id="choices-single-default"
class="form-control"
name="sort"
>
@if(auth('admin')->user()->permission?->tour_create) <option value="" selected>
مرتب‌سازی بر اساس
</option>
<div class="d-flex"> <option
value="created_at"
@selected(request()->input('sort') == 'created_at')
>
جدیدترین
</option>
<a <option
href="{{ route('admin.tours.create') }}" value="price_asc"
class="btn btn-primary me-2" @selected(request()->input('sort') == 'price_asc')
> >
<i class="ri-add-line me-1 fw-medium align-middle"></i> قیمت (کم به زیاد)
ایجاد تور </option>
</a>
</div> <option
value="price_desc"
@selected(request()->input('sort') == 'price_desc')
>
قیمت (زیاد به کم)
</option>
@endif <option
value="duration_asc"
@selected(request()->input('sort') == 'duration_asc')
>
مدت زمان (کم به زیاد)
</option>
<option
value="duration_desc"
@selected(request()->input('sort') == 'duration_desc')
>
مدت زمان (زیاد به کم)
</option>
</select>
</div> </div>
</form>
</div> @if(auth('admin')->user()->permission?->tour_create)
<div class="d-flex">
<a
href="{{ route('admin.tours.create') }}"
class="btn btn-primary me-2"
>
<i class="ri-add-line me-1 fw-medium align-middle"></i>
ایجاد تور
</a>
</div>
@endif
</div>
</form>
</div> </div>
</div> </div>
</div> </div>
</div>
<!-- Tours Table --> <!-- Tours Table -->
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<div class="card custom-card"> <div class="card custom-card">
<div class="table-responsive"> <div class="table-responsive">
<table class="table text-nowrap table-bordered"> <table class="table text-nowrap table-bordered">
<thead> <thead>
<tr>
<th>عکس</th>
<th>عنوان</th>
<th>مبدا</th>
<th>مقصد</th>
<th>زمان حرکت</th>
<th>مدت زمان</th>
<th>قیمت</th>
<th>وضعیت</th>
<th>تاریخ ثبت</th>
<th>تاریخ ویرایش</th>
<th>عملیات</th>
</tr>
</thead>
<tbody>
@foreach($tours as $tour)
<tr> <tr>
<th>عکس</th>
<th>عنوان</th>
<th>مبدا</th>
<th>مقصد</th>
<th>زمان حرکت</th>
<th>مدت زمان</th>
<th>قیمت</th>
<th>وضعیت</th>
<th>تاریخ ثبت</th>
<th>تاریخ ویرایش</th>
<th>عملیات</th>
</tr>
</thead> {{-- Image --}}
<td>
<tbody>
@foreach($tours as $tour)
<tr>
{{-- Image --}}
<td>
<span class="avatar avatar-md avatar-square bg-light"> <span class="avatar avatar-md avatar-square bg-light">
@@ -197,117 +196,116 @@
</span> </span>
</td> </td>
<td> <td>
<span class="fw-semibold"> <span class="fw-semibold">
{{ $tour->title }} {{ $tour->title }}
</span> </span>
</td> </td>
<td> <td>
{{ $tour->origin }} {{ $tour->origin }}
</td> </td>
<td> <td>
{{ $tour->destination }} {{ $tour->destination }}
</td> </td>
<td> <td>
{{ $tour->departure_time->toJalali()->format('H:i Y-m-d') }} {{ $tour->departure_time->toJalali()->format('H:i Y-m-d') }}
</td> </td>
<td> <td>
{{ $tour->duration }} روز {{ $tour->duration }} روز
</td> </td>
<td> <td>
{{ number_format($tour->price) }} {{ number_format($tour->price) }}
تومان تومان
</td> </td>
<td> <td>
@if($tour->status == \App\Enums\TourStatus::ENABLE)
<span class="badge bg-primary-transparent">فعال</span>
@elseif($tour->status == \App\Enums\TourStatus::DISABLE)
<span class="badge bg-warning-transparent">غیرفعال</span>
@endif
</td>
<td>{{ $tour->created_at->toJalali()->format('H:i Y-m-d') }}</td>
<td>{{ $tour->updated_at->toJalali()->format('H:i Y-m-d') }}</td>
{{-- Actions --}}
<td>
<div class="hstack gap-2 fs-15">
@if(auth('admin')->user()->permission?->tour_edit)
<a
href="{{ route('admin.tours.edit', $tour->id) }}"
class="btn btn-secondary-light btn-icon btn-sm"
data-bs-toggle="tooltip"
data-bs-placement="top"
title="ویرایش"
>
<i class="ti ti-pencil"></i>
</a>
@if($tour->status == \App\Enums\TourStatus::ENABLE)
<span class="badge bg-primary-transparent">فعال</span>
@elseif($tour->status == \App\Enums\TourStatus::DISABLE)
<span class="badge bg-warning-transparent">غیرفعال</span>
@endif @endif
</td>
<td>{{ $tour->created_at->toJalali()->format('H:i Y-m-d') }}</td>
<td>{{ $tour->updated_at->toJalali()->format('H:i Y-m-d') }}</td>
@if(auth('admin')->user()->permission?->tour_delete)
{{-- Actions --}} <form
<td> action="{{ route('admin.tours.destroy', $tour->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این تور مطمئن هستید؟')"
>
<div class="hstack gap-2 fs-15"> @csrf
@method('DELETE')
@if(auth('admin')->user()->permission?->tour_edit) <button
type="submit"
<a class="btn btn-icon btn-sm btn-danger-light"
href="{{ route('admin.tours.edit', $tour->id) }}" title="حذف"
class="btn btn-secondary-light btn-icon btn-sm"
data-bs-toggle="tooltip"
data-bs-placement="top"
title="ویرایش"
> >
<i class="ti ti-pencil"></i> <i class="ri-delete-bin-line"></i>
</a> </button>
@endif </form>
@endif
@if(auth('admin')->user()->permission?->tour_delete) </div>
<form </td>
action="{{ route('admin.tours.destroy', $tour->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این تور مطمئن هستید؟')"
>
@csrf </tr>
@method('DELETE')
<button @endforeach
type="submit"
class="btn btn-icon btn-sm btn-danger-light"
title="حذف"
>
<i class="ri-delete-bin-line"></i>
</button>
</form> </tbody>
@endif </table>
</div>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div> </div>
{{ $tours->links() }}
</div> </div>
{{ $tours->links() }}
</div> </div>
</div> </div>
</div> </div>
@endsection @endsection
+72 -73
View File
@@ -1,89 +1,88 @@
@extends('admin.layouts.app') @extends('admin.layouts.app')
@section('content') @section('content')
<div class="main-content app-content"> <div class="container-fluid pt-4">
<div class="container-fluid pt-4">
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<form <form
action="{{ route('admin.users.update', $user) }}" action="{{ route('admin.users.update', $user) }}"
method="POST" method="POST"
enctype="multipart/form-data" enctype="multipart/form-data"
> >
@csrf @csrf
@method('PUT') @method('PUT')
<div class="card custom-card"> <div class="card custom-card">
<div class="card-header"> <div class="card-header">
<div class="card-title">ویرایش کاربر</div> <div class="card-title">ویرایش کاربر</div>
</div> </div>
<div class="card-body"> <div class="card-body">
<!-- User Fields --> <!-- User Fields -->
<div class="row gy-3"> <div class="row gy-3">
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">نام</label> <label class="form-label">نام</label>
<input <input
type="text" type="text"
class="form-control" class="form-control"
name="first_name" name="first_name"
value="{{old('first_name', $user->first_name)}}" value="{{old('first_name', $user->first_name)}}"
placeholder="نام را وارد کنید" placeholder="نام را وارد کنید"
> >
@error('first_name') @error('first_name')
<span style="color: red">{{ $message }}</span> <span style="color: red">{{ $message }}</span>
@enderror @enderror
</div> </div>
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">نام خانوادگی</label> <label class="form-label">نام خانوادگی</label>
<input type="text" class="form-control" name="last_name" <input type="text" class="form-control" name="last_name"
value="{{old('last_name', $user->last_name)}}" value="{{old('last_name', $user->last_name)}}"
placeholder="نام خانوادگی را وارد کنید"> placeholder="نام خانوادگی را وارد کنید">
@error('last_name') @error('last_name')
<span style="color: red">{{ $message }}</span> <span style="color: red">{{ $message }}</span>
@enderror @enderror
</div> </div>
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">ایمیل</label> <label class="form-label">ایمیل</label>
<input type="email" class="form-control" name="email" <input type="email" class="form-control" name="email"
value="{{old('email', $user->email)}}" value="{{old('email', $user->email)}}"
placeholder="ایمیل را وارد کنید"> placeholder="ایمیل را وارد کنید">
@error('email') @error('email')
<span style="color: red">{{ $message }}</span> <span style="color: red">{{ $message }}</span>
@enderror @enderror
</div> </div>
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">شماره موبایل</label> <label class="form-label">شماره موبایل</label>
<input type="text" class="form-control" name="mobile" <input type="text" class="form-control" name="mobile"
value="{{old('mobile', $user->mobile)}}" value="{{old('mobile', $user->mobile)}}"
placeholder="شماره موبایل را وارد کنید"> placeholder="شماره موبایل را وارد کنید">
@error('mobile') @error('mobile')
<span style="color: red">{{ $message }}</span> <span style="color: red">{{ $message }}</span>
@enderror @enderror
</div> </div>
<div class="col-xl-6"> <div class="col-xl-6">
<label class="form-label">رمز عبور (در صورت تغییر)</label> <label class="form-label">رمز عبور (در صورت تغییر)</label>
<input type="text" class="form-control" name="password" value="{{ old('password') }}" <input type="text" class="form-control" name="password"
placeholder="رمز عبور را وارد کنید"> value="{{ old('password') }}"
@error('password') placeholder="رمز عبور را وارد کنید">
<span style="color: red">{{ $message }}</span> @error('password')
@enderror <span style="color: red">{{ $message }}</span>
</div> @enderror
</div> </div>
</div> </div>
<div class="card-footer text-end">
<button type="submit" class="btn btn-primary">ذخیره تغییرات</button>
</div>
</div> </div>
</form>
</div>
</div>
<div class="card-footer text-end">
<button type="submit" class="btn btn-primary">ذخیره تغییرات</button>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
@endsection @endsection
+156 -158
View File
@@ -19,112 +19,111 @@
@endsection @endsection
@section('content') @section('content')
<div class="main-content app-content">
@error('general') @error('general')
<span class="alert alert-danger">{{ $message }}</span> <span class="alert alert-danger">{{ $message }}</span>
@enderror @enderror
<div class="container-fluid pt-4"> <div class="container-fluid pt-4">
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<div class="card custom-card"> <div class="card custom-card">
<div class="card-body p-3"> <div class="card-body p-3">
<form method="GET"> <form method="GET">
<div class="d-flex align-items-center justify-content-between flex-wrap gap-3"> <div class="d-flex align-items-center justify-content-between flex-wrap gap-3">
<div class="d-flex flex-wrap gap-1 project-list-main align-items-center"> <div class="d-flex flex-wrap gap-1 project-list-main align-items-center">
<div class="d-flex me-2"> <div class="d-flex me-2">
<input <input
class="form-control me-2" class="form-control me-2"
type="search" type="search"
name="search" name="search"
placeholder="جستجوی کاربر" placeholder="جستجوی کاربر"
value="{{ request()->input('search') }}" value="{{ request()->input('search') }}"
aria-label="جستجوی کاربر" aria-label="جستجوی کاربر"
>
<button class="btn btn-light" type="submit">
جستجو
</button>
</div>
<select
id="choices-single-default"
class="form-control"
name="sort"
> >
<option value="" selected>
مرتب‌سازی بر اساس
</option>
<option
value="newest"
@selected(request()->input('sort') == 'newest')
>
جدیدترین
</option>
<option
value="name_asc"
@selected(request()->input('sort') == 'name_asc')
>
الفبا (الف - ی)
</option>
<option
value="name_desc"
@selected(request()->input('sort') == 'name_desc')
>
الفبا (ی - الف)
</option>
</select>
<button class="btn btn-light" type="submit">
جستجو
</button>
</div> </div>
</div> <select
</form> id="choices-single-default"
class="form-control"
name="sort"
>
<option value="" selected>
مرتب‌سازی بر اساس
</option>
<option
value="newest"
@selected(request()->input('sort') == 'newest')
>
جدیدترین
</option>
<option
value="name_asc"
@selected(request()->input('sort') == 'name_asc')
>
الفبا (الف - ی)
</option>
<option
value="name_desc"
@selected(request()->input('sort') == 'name_desc')
>
الفبا (ی - الف)
</option>
</select>
</div>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div> </div>
</div>
<!-- Users Table --> <!-- Users Table -->
<div class="row"> <div class="row">
<div class="col-xl-12"> <div class="col-xl-12">
<div class="card custom-card"> <div class="card custom-card">
<div class="table-responsive"> <div class="table-responsive">
<table class="table text-nowrap table-bordered"> <table class="table text-nowrap table-bordered">
<thead>
<tr>
<th scope="col">عکس</th>
<th scope="col">نام و نام خانوادگی</th>
<th scope="col">وضعیت تأهل</th>
<th scope="col">نام و نام خانوادگی همسر</th>
<th scope="col">ایمیل</th>
<th scope="col">استان</th>
<th scope="col">شهر</th>
<th scope="col">شماره موبایل</th>
<th scope="col">تاریخ ثبت نام</th>
<th scope="col">عملیات</th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<thead>
<tr> <tr>
<th scope="col">عکس</th> <td>
<th scope="col">نام و نام خانوادگی</th>
<th scope="col">وضعیت تأهل</th>
<th scope="col">نام و نام خانوادگی همسر</th>
<th scope="col">ایمیل</th>
<th scope="col">استان</th>
<th scope="col">شهر</th>
<th scope="col">شماره موبایل</th>
<th scope="col">تاریخ ثبت نام</th>
<th scope="col">عملیات</th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<tr>
<td>
<span class="avatar avatar-md avatar-square bg-light"> <span class="avatar avatar-md avatar-square bg-light">
@if($user->file?->id) @if($user->file?->id)
@@ -142,113 +141,112 @@
</span> </span>
</td> </td>
<td> <td>
<div class="d-flex align-items-center"> <div class="d-flex align-items-center">
<div class="flex-fill"> <div class="flex-fill">
<span class="fw-medium fs-14 d-block"> <span class="fw-medium fs-14 d-block">
{{ getUserFullName($user) }} {{ getUserFullName($user) }}
</span> </span>
</div>
</div> </div>
</td>
</div>
</td>
<td> <td>
@if($user->marital_status == \App\Enums\UserMaritalStatus::SINGLE) @if($user->marital_status == \App\Enums\UserMaritalStatus::SINGLE)
<span class="badge bg-primary-transparent"> <span class="badge bg-primary-transparent">
مجرد مجرد
</span> </span>
@elseif($user->marital_status == \App\Enums\UserMaritalStatus::MARRIED) @elseif($user->marital_status == \App\Enums\UserMaritalStatus::MARRIED)
<span class="badge bg-success-transparent"> <span class="badge bg-success-transparent">
متأهل متأهل
</span> </span>
@elseif($user->marital_status == \App\Enums\UserMaritalStatus::SEPARATED) @elseif($user->marital_status == \App\Enums\UserMaritalStatus::SEPARATED)
<span class="badge bg-warning-transparent"> <span class="badge bg-warning-transparent">
جداشده جداشده
</span> </span>
@else @else
- -
@endif
</td>
<td>
@if($user->spouse_name)
{{ $user->spouse_name }}
@else
-
@endif
</td>
<td>
{{ $user->email }}
</td>
<td>
{{$user->province}}
</td>
<td>
{{$user->city}}
</td>
<td>
{{ $user->mobile }}
</td>
<td>
{{ $user->created_at->toJalali()->format('H:i Y-m-d') }}
</td>
<td>
<div class="hstack gap-2 fs-15">
@if(auth('admin')->user()->permission?->user_edit)
<a href="{{ route('admin.users.edit', $user->id) }}"
class="btn btn-secondary-light btn-icon btn-sm"
title="ویرایش">
<i class="ti ti-pencil"></i>
</a>
@endif @endif
</td> @if(auth('admin')->user()->permission?->user_delete)
<td> <form action="{{ route('admin.users.destroy', $user->id) }}"
@if($user->spouse_name) method="POST"
{{ $user->spouse_name }} onsubmit="return confirm('آیا از حذف این کاربر مطمئن هستید؟')">
@else @csrf
- @method('DELETE')
<button type="submit"
class="btn btn-icon btn-sm btn-danger-light">
<i class="ri-delete-bin-line"></i>
</button>
</form>
@endif @endif
</td>
<td>
{{ $user->email }}
</td>
<td>
{{$user->province}}
</td>
<td>
{{$user->city}}
</td>
<td>
{{ $user->mobile }}
</td>
<td>
{{ $user->created_at->toJalali()->format('H:i Y-m-d') }}
</td>
<td>
<div class="hstack gap-2 fs-15">
@if(auth('admin')->user()->permission?->user_edit) </div>
<a href="{{ route('admin.users.edit', $user->id) }}" </td>
class="btn btn-secondary-light btn-icon btn-sm"
title="ویرایش">
<i class="ti ti-pencil"></i>
</a>
@endif
@if(auth('admin')->user()->permission?->user_delete) </tr>
<form action="{{ route('admin.users.destroy', $user->id) }}"
method="POST"
onsubmit="return confirm('آیا از حذف این کاربر مطمئن هستید؟')">
@csrf
@method('DELETE')
<button type="submit" @endforeach
class="btn btn-icon btn-sm btn-danger-light">
<i class="ri-delete-bin-line"></i>
</button>
</form>
@endif
</div> </tbody>
</td>
</tr> </table>
@endforeach
</tbody>
</table>
</div>
</div> </div>
{{ $users->links() }}
</div> </div>
</div>
{{ $users->links() }}
</div>
</div> </div>
</div> </div>
@endsection @endsection