feat: update edit for flights and add create flights in admin panel

This commit is contained in:
2026-08-20 14:18:28 +03:30
parent 6cde2328c1
commit 87e0fc16f8
6 changed files with 428 additions and 52 deletions
@@ -0,0 +1,275 @@
@extends('dashboard.layouts.app')
@section('title', 'ثبت پرواز جدید')
@section('account-content')
<div class="user-profile-wrapper">
@if(session('success'))
<div class="col-lg-12 mb-3">
<div class="alert alert-success">
{{ session('success') }}
</div>
</div>
@endif
<div class="col-lg-12">
<div class="user-profile-card">
<h4 class="user-profile-card-title">
ثبت پرواز جدید
</h4>
<div class="user-profile-form">
<form action="{{ route('admin.flights.store') }}" method="POST">
@csrf
<div class="row">
<div class="col-md-6 mb-3">
<div class="form-group">
<label>شماره پرواز</label>
<input
type="text"
name="flight_number"
class="form-control"
value="{{ old('flight_number') }}"
placeholder="شماره پرواز"
>
@error('flight_number')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>ایرلاین</label>
<select name="airline_id" class="form-control">
<option value="">
انتخاب ایرلاین
</option>
@foreach($airlines as $airline)
<option
value="{{ $airline->id }}"
{{ old('airline_id') == $airline->id ? 'selected' : '' }}
>
{{ $airline->name }}
</option>
@endforeach
</select>
@error('airline_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>مبدأ</label>
<select name="origin_airports_id" class="form-control">
<option value="">
انتخاب مبدأ
</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
{{ old('origin_airports_id') == $airport->id ? 'selected' : '' }}
>
{{ $airport->city }}
</option>
@endforeach
</select>
@error('origin_airports_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>مقصد</label>
<select name="destination_airports_id" class="form-control">
<option value="">
انتخاب مقصد
</option>
@foreach($airports as $airport)
<option
value="{{ $airport->id }}"
{{ old('destination_airports_id') == $airport->id ? 'selected' : '' }}
>
{{ $airport->city }}
</option>
@endforeach
</select>
@error('destination_airports_id')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>تاریخ و ساعت حرکت</label>
<input
type="text"
name="start_time"
id="start_time"
class="form-control"
value="{{ old('start_time') }}"
placeholder="تاریخ و ساعت حرکت"
autocomplete="off"
>
@error('start_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>تاریخ و ساعت رسیدن</label>
<input
type="text"
name="end_time"
id="end_time"
class="form-control"
value="{{ old('end_time') }}"
placeholder="تاریخ و ساعت رسیدن"
autocomplete="off"
>
@error('end_time')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>قیمت</label>
<input
type="number"
name="price"
class="form-control"
value="{{ old('price') }}"
placeholder="قیمت"
>
@error('price')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
<div class="col-md-6 mb-3">
<div class="form-group">
<label>ظرفیت</label>
<input
type="number"
name="capacity"
class="form-control"
value="{{ old('capacity') }}"
placeholder="ظرفیت"
>
@error('capacity')
<span class="text-danger">{{ $message }}</span>
@enderror
</div>
</div>
</div>
<button type="submit" class="theme-btn mt-4">
ثبت پرواز
<i class="far fa-plus"></i>
</button>
</form>
</div>
</div>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function () {
const startTime = document.getElementById('start_time');
const endTime = document.getElementById('end_time');
if (typeof $ !== 'undefined' && typeof $.fn.persianDatepicker !== 'undefined') {
$(startTime).persianDatepicker({
format: 'YYYY/MM/DD HH:mm',
autoClose: true,
initialValue: false,
timePicker: {
enabled: true
}
});
$(endTime).persianDatepicker({
format: 'YYYY/MM/DD HH:mm',
autoClose: true,
initialValue: false,
timePicker: {
enabled: true
}
});
}
});
</script>
@endsection
+26 -19
View File
@@ -155,6 +155,7 @@
class="form-control"
value="{{ old('start_time', verta($flight->start_time)->format('Y/m/d H:i')) }}"
placeholder="تاریخ و ساعت حرکت"
autocomplete="off"
>
@error('start_time')
@@ -176,6 +177,7 @@
class="form-control"
value="{{ old('end_time', verta($flight->end_time)->format('Y/m/d H:i')) }}"
placeholder="تاریخ و ساعت رسیدن"
autocomplete="off"
>
@error('end_time')
@@ -240,28 +242,33 @@
</div>
@endsection
@section('scripts')
<script>
$(document).ready(function () {
document.addEventListener('DOMContentLoaded', function () {
$('#start_time').persianDatepicker({
format: 'YYYY/MM/DD HH:mm',
autoClose: true,
timePicker: {
enabled: true
}
});
const startTime = document.getElementById('start_time');
const endTime = document.getElementById('end_time');
$('#end_time').persianDatepicker({
format: 'YYYY/MM/DD HH:mm',
autoClose: true,
timePicker: {
enabled: true
}
});
if (typeof $ !== 'undefined' && typeof $.fn.persianDatepicker !== 'undefined') {
$(startTime).persianDatepicker({
format: 'YYYY/MM/DD HH:mm',
autoClose: true,
initialValue: false,
timePicker: {
enabled: true
}
});
$(endTime).persianDatepicker({
format: 'YYYY/MM/DD HH:mm',
autoClose: true,
initialValue: false,
timePicker: {
enabled: true
}
});
}
});
</script>