339 lines
19 KiB
PHP
339 lines
19 KiB
PHP
@extends('layouts.app')
|
|
|
|
@section('content')
|
|
<main class="main">
|
|
|
|
<div class="site-breadcrumb" style="background: url(assets/img/breadcrumb/02.jpg)">
|
|
<div class="container">
|
|
<h2 class="breadcrumb-title">ثبت نام</h2>
|
|
<ul class="breadcrumb-menu">
|
|
<li><a href="{{ route('index') }}">صفحه اصلی</a></li>
|
|
<li class="active">ثبت نام</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="login-area py-120">
|
|
<div class="container">
|
|
@if(session('error'))
|
|
<span style="color: red" >{{session('error')}}</span>
|
|
@endif
|
|
@if(session('success'))
|
|
<span style="color: red" >{{session('success')}}</span>
|
|
@endif
|
|
<div class="col-md-8 mx-auto">
|
|
<div class="login-form">
|
|
<div class="login-header">
|
|
<a href="{{ route('index') }}">
|
|
<img src="{{ asset('assets/img/logo/logo-dark.png') }}" alt="Logo">
|
|
</a>
|
|
<p>حساب MyTrip خود را ایجاد کنید</p>
|
|
</div>
|
|
|
|
<form action="{{route('auth.register.post')}}" method="POST" enctype="multipart/form-data">
|
|
@csrf
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="first_name">نام <span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="text" id="first_name" name="first_name" class="form-control" placeholder="نام" value="{{ old('first_name') }}">
|
|
<i class="far fa-user"></i>
|
|
</div>
|
|
@error('first_name')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="last_name">نام خانوادگی<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="text" id="last_name" name="last_name" class="form-control" placeholder="نام خانوادگی" value="{{ old('last_name') }}">
|
|
<i class="far fa-user"></i>
|
|
</div>
|
|
@error('last_name')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="national_code">کد ملی<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="text" id="national_code" name="national_code" class="form-control" placeholder="کد ملی" value="{{ old('national_code') }}">
|
|
<i class="far fa-id-card"></i>
|
|
</div>
|
|
@error('national_code')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="gender">جنسیت<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<select id="gender" name="gender" class="form-control">
|
|
<option value="" @selected(old('gender') === null || old('gender') === '')>انتخاب کنید</option>
|
|
<option value="{{ \App\Enums\UserGender::UNKNOWN->value }}" @selected(old('gender') !== null && old('gender') !== '' && old('gender') == \App\Enums\UserGender::UNKNOWN->value)>نامشخص</option>
|
|
<option value="{{ \App\Enums\UserGender::MALE->value }}" @selected(old('gender') !== null && old('gender') !== '' && old('gender') == \App\Enums\UserGender::MALE->value)>آقا</option>
|
|
<option value="{{ \App\Enums\UserGender::FEMALE->value }}" @selected(old('gender') !== null && old('gender') !== '' && old('gender') == \App\Enums\UserGender::FEMALE->value)>خانم</option>
|
|
</select>
|
|
<i class="far fa-venus-mars"></i>
|
|
</div>
|
|
@error('gender')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="marital_status">وضعیت تاهل<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<select id="marital_status" name="marital_status" class="form-control">
|
|
<option value="" @selected(old('marital_status') === null || old('marital_status') === '')>انتخاب کنید</option>
|
|
<option value="{{ \App\Enums\UserMarital::SINGLE->value }}" @selected(old('marital_status') !== null && old('marital_status') !== '' && old('marital_status') == \App\Enums\UserMarital::SINGLE->value)>مجرد</option>
|
|
<option value="{{ \App\Enums\UserMarital::MARRIED->value }}" @selected(old('marital_status') !== null && old('marital_status') !== '' && old('marital_status') == \App\Enums\UserMarital::MARRIED->value)>متأهل</option>
|
|
<option value="{{ \App\Enums\UserMarital::DIVORCED->value }}" @selected(old('marital_status') !== null && old('marital_status') !== '' && old('marital_status') == \App\Enums\UserMarital::DIVORCED->value)>جدا شده</option>
|
|
</select>
|
|
<i class="fas fa-ring"></i>
|
|
</div>
|
|
@error('marital_status')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="spouse_name">نام و نام خانوادگی همسر</label>
|
|
<div class="form-group-icon">
|
|
<input type="text" id="spouse_name" name="spouse_name" class="form-control" placeholder="نام همسر" value="{{ old('spouse_name') }}">
|
|
<i class="far fa-user-friends"></i>
|
|
</div>
|
|
@error('spouse_name')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="mobile">شماره همراه<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="text" id="mobile" name="mobile" class="form-control" placeholder="0912..." value="{{ old('mobile') }}">
|
|
<i class="fas fa-phone"></i>
|
|
</div>
|
|
@error('mobile')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="email">آدرس ایمیل<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="email" id="email" name="email" class="form-control" placeholder="ایمیل خود را وارد کنید" value="{{ old('email') }}">
|
|
<i class="far fa-envelope"></i>
|
|
</div>
|
|
@error('email')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="username">نام کاربری<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="text" id="username" name="username" class="form-control" placeholder="Username" value="{{ old('username') }}">
|
|
<i class="far fa-user-circle"></i>
|
|
</div>
|
|
@error('username')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="avatar">عکس پروفایل</label>
|
|
<div class="form-group-icon">
|
|
<input type="file" id="avatar" name="avatar" class="form-control">
|
|
<i class="far fa-image"></i>
|
|
</div>
|
|
@error('avatar')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="password">رمز عبور<span style="color: red">*</span></label>
|
|
<div class="form-group-icon">
|
|
<input type="password" id="password" name="password" class="form-control" placeholder="رمز عبور">
|
|
<i class="far fa-lock"></i>
|
|
</div>
|
|
@error('password')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="form-group">
|
|
<label for="password_confirmation">تایید رمز عبور</label>
|
|
<div class="form-group-icon">
|
|
<input type="password" id="password_confirmation" name="password_confirmation" class="form-control" placeholder="تکرار رمز عبور">
|
|
<i class="far fa-check-circle"></i>
|
|
</div>
|
|
@error('password_confirmation')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<label for="province_id">استان</label>
|
|
|
|
<select id="province_id" name="province_id" class="form-control">
|
|
<option value="">انتخاب استان</option>
|
|
|
|
@foreach ($provinces as $id => $name)
|
|
<option value="{{ $id }}" @selected(old('province_id') == $id)>
|
|
{{ $name }}
|
|
</option>
|
|
@endforeach
|
|
</select>
|
|
|
|
@error('province_id')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<label for="city_id">شهر</label>
|
|
<select id="city_id" name="city_id" class="form-control" disabled>
|
|
<option value="">ابتدا استان را انتخاب کنید</option>
|
|
</select>
|
|
@error('city_id')
|
|
<span style="color: red">{{ $message }}</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="form-check form-group mt-3">
|
|
<input class="form-check-input" type="checkbox" name="terms" value="1" id="agree" required>
|
|
<label class="form-check-label" for="agree">
|
|
من موافقم با <a href="#">شرایط استفاده از خدمات.</a>
|
|
</label>
|
|
</div>
|
|
|
|
<div class="d-flex align-items-center mt-4">
|
|
<button type="submit" class="theme-btn"><i class="far fa-paper-plane"></i> ثبت نام</button>
|
|
</div>
|
|
</form>
|
|
|
|
<div class="login-footer">
|
|
<div class="login-divider"><span>یا</span></div>
|
|
<p>از قبل حساب کاربری دارید؟ <a href="{{ route('auth.login.index') }}">وارد شدن.</a></p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</main>
|
|
@push('scripts')
|
|
<script>
|
|
$(document).ready(function () {
|
|
const provinceSelect = $('#province_id');
|
|
const citySelect = $('#city_id');
|
|
|
|
|
|
const oldProvinceId = "{{ old('province_id') }}";
|
|
const oldCityId = "{{ old('city_id') }}";
|
|
|
|
function loadCities(provinceId, selectedCityId = null) {
|
|
if (!provinceId) {
|
|
citySelect.html('<option value="">ابتدا استان را انتخاب کنید</option>');
|
|
citySelect.prop('disabled', true);
|
|
return;
|
|
}
|
|
|
|
citySelect.html('<option value="">در حال بارگذاری شهرها...</option>');
|
|
citySelect.prop('disabled', true);
|
|
|
|
let url = "{{ route('locations.cities', ':provinceId') }}".replace(':provinceId', provinceId);
|
|
|
|
$.ajax({
|
|
url: url,
|
|
type: 'GET',
|
|
dataType: 'json',
|
|
success: function (cities) {
|
|
citySelect.empty();
|
|
citySelect.append('<option value="">انتخاب شهر</option>');
|
|
|
|
$.each(cities, function (index, city) {
|
|
let isSelected = (selectedCityId && selectedCityId == city.id) ? 'selected' : '';
|
|
citySelect.append(
|
|
`<option value="${city.id}" ${isSelected}>${city.name}</option>`
|
|
);
|
|
});
|
|
|
|
citySelect.prop('disabled', false);
|
|
},
|
|
error: function (xhr) {
|
|
console.error('Error:', xhr.responseText);
|
|
citySelect.html('<option value="">خطا در دریافت لیست شهرها</option>');
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
provinceSelect.on('change', function () {
|
|
let provinceId = $(this).val();
|
|
loadCities(provinceId);
|
|
});
|
|
|
|
|
|
if (oldProvinceId) {
|
|
loadCities(oldProvinceId, oldCityId);
|
|
}
|
|
});
|
|
</script>
|
|
@endpush
|
|
|
|
|
|
|
|
|
|
|
|
@endsection
|