fix: update admin management views

This commit is contained in:
2026-08-18 08:03:11 +03:30
parent a31375a20f
commit c6919bcead
3 changed files with 1545 additions and 203 deletions
+308 -3
View File
@@ -1,3 +1,308 @@
<div> @extends('admin.layouts.app')
<!-- Nothing worth having comes easy. - Theodore Roosevelt -->
</div> @section('title', 'ایجاد مدیر جدید')
@section('breadcrumb')
<div>
<h1 class="page-title fw-medium fs-18 mb-2">
ایجاد مدیر جدید
</h1>
<nav>
<ol class="breadcrumb mb-0">
<li class="breadcrumb-item">
<a href="{{ route('admin.dashboard.index') }}">
داشبورد
</a>
</li>
<li class="breadcrumb-item">
<a href="{{ route('admin.admins.index') }}">
مدیران
</a>
</li>
<li class="breadcrumb-item active">
ایجاد مدیر
</li>
</ol>
</nav>
</div>
@endsection
@section('content')
<div class="container-fluid pt-4">
<form
action="{{ route('admin.admins.store') }}"
method="POST"
>
@csrf
<div class="row">
<div class="col-xl-8">
<div class="card custom-card">
<div class="card-header">
<h5 class="mb-0">
اطلاعات مدیر
</h5>
</div>
<div class="card-body">
<div class="row">
{{-- نام کامل --}}
<div class="col-md-6 mb-3">
<label class="form-label">
نام و نام خانوادگی
</label>
<input
type="text"
name="full_name"
class="form-control @error('full_name') is-invalid @enderror"
value="{{ old('full_name') }}"
>
@error('full_name')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- نام کاربری --}}
<div class="col-md-6 mb-3">
<label class="form-label">
نام کاربری
</label>
<input
type="text"
name="username"
class="form-control @error('username') is-invalid @enderror"
value="{{ old('username') }}"
>
@error('username')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- ایمیل --}}
<div class="col-md-6 mb-3">
<label class="form-label">
ایمیل
</label>
<input
type="email"
name="email"
class="form-control @error('email') is-invalid @enderror"
value="{{ old('email') }}"
>
@error('email')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- موبایل --}}
<div class="col-md-6 mb-3">
<label class="form-label">
موبایل
</label>
<input
type="text"
name="mobile"
class="form-control @error('mobile') is-invalid @enderror"
value="{{ old('mobile') }}"
>
@error('mobile')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- رمز --}}
<div class="col-md-6 mb-3">
<label class="form-label">
رمز عبور
</label>
<input
type="password"
name="password"
class="form-control @error('password') is-invalid @enderror"
>
@error('password')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- تکرار رمز --}}
<div class="col-md-6 mb-3">
<label class="form-label">
تکرار رمز عبور
</label>
<input
type="password"
name="password_confirmation"
class="form-control"
>
</div>
</div>
</div>
</div>
</div>
{{-- ستون سمت چپ --}}
<div class="col-xl-4">
{{-- وضعیت --}}
<div class="card custom-card mb-3">
<div class="card-header">
وضعیت
</div>
<div class="card-body">
<select
name="status"
class="form-select"
>
<option value="1">
فعال
</option>
<option value="0">
غیرفعال
</option>
</select>
</div>
</div>
{{-- دسترسی‌ها --}}
<div class="card custom-card mb-3">
<div class="card-header">
دسترسی‌ها
</div>
<div class="card-body">
@foreach($permissions ?? [] as $permission)
<div class="form-check mb-2">
<input
class="form-check-input"
type="checkbox"
name="permissions[]"
value="{{ $permission->id }}"
>
<label class="form-check-label">
{{ $permission->title }}
</label>
</div>
@endforeach
</div>
</div>
{{-- دکمه ها --}}
<div class="card custom-card">
<div class="card-body d-grid gap-2">
<button
type="submit"
class="btn btn-primary"
>
<i class="ri-save-line me-1"></i>
ذخیره مدیر
</button>
<a
href="{{ route('admin.admins.index') }}"
class="btn btn-light"
>
بازگشت
</a>
</div>
</div>
</div>
</div>
</form>
</div>
@endsection
+427 -3
View File
@@ -1,3 +1,427 @@
<div> @extends('admin.layouts.app')
<!-- He who is contented is rich. - Laozi -->
</div> @section('title', 'ویرایش مدیر')
@section('breadcrumb')
<div>
<h1 class="page-title fw-medium fs-18 mb-2">
ویرایش مدیر
</h1>
<nav>
<ol class="breadcrumb mb-0">
<li class="breadcrumb-item">
<a href="{{ route('admin.dashboard.index') }}">
داشبورد
</a>
</li>
<li class="breadcrumb-item">
<a href="{{ route('admin.admins.index') }}">
مدیریت مدیران
</a>
</li>
<li class="breadcrumb-item active">
ویرایش مدیر
</li>
</ol>
</nav>
</div>
@endsection
@section('content')
<div class="container-fluid pt-4">
<form action="{{ route('admin.admins.update', $admin) }}"
method="POST">
@csrf
@method('PUT')
<div class="row">
{{-- اطلاعات مدیر --}}
<div class="col-xl-8">
<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">
نام و نام خانوادگی
<span class="text-danger">*</span>
</label>
<input type="text"
name="full_name"
value="{{ old('full_name', $admin->full_name) }}"
class="form-control @error('full_name') is-invalid @enderror"
placeholder="نام و نام خانوادگی">
@error('full_name')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- username --}}
<div class="col-xl-6">
<label class="form-label">
نام کاربری
<span class="text-danger">*</span>
</label>
<input type="text"
name="username"
value="{{ old('username', $admin->username) }}"
class="form-control @error('username') is-invalid @enderror"
placeholder="نام کاربری">
@error('username')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- email --}}
<div class="col-xl-6">
<label class="form-label">
ایمیل
<span class="text-danger">*</span>
</label>
<input type="email"
name="email"
value="{{ old('email', $admin->email) }}"
class="form-control @error('email') is-invalid @enderror"
placeholder="example@gmail.com"
dir="ltr">
@error('email')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- mobile --}}
<div class="col-xl-6">
<label class="form-label">
موبایل
<span class="text-danger">*</span>
</label>
<input type="text"
name="mobile"
value="{{ old('mobile', $admin->mobile) }}"
class="form-control @error('mobile') is-invalid @enderror"
placeholder="09123456789"
dir="ltr">
@error('mobile')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- password --}}
<div class="col-xl-6">
<label class="form-label">
رمز عبور جدید
</label>
<input type="password"
name="password"
class="form-control @error('password') is-invalid @enderror"
placeholder="در صورت تغییر وارد کنید">
<small class="text-muted d-block mt-1">
اگر نمی‌خواهید رمز تغییر کند، این قسمت را خالی بگذارید.
</small>
@error('password')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
{{-- password confirmation --}}
<div class="col-xl-6">
<label class="form-label">
تکرار رمز عبور جدید
</label>
<input type="password"
name="password_confirmation"
class="form-control"
placeholder="تکرار رمز جدید">
</div>
{{-- status --}}
<div class="col-xl-6">
<label class="form-label">
وضعیت
</label>
<select name="status"
class="form-select @error('status') is-invalid @enderror">
<option value="1"
@selected(old('status', $admin->status) == 1)>
فعال
</option>
<option value="0"
@selected(old('status', $admin->status) == 0)>
غیرفعال
</option>
</select>
@error('status')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>
</div>
</div>
{{-- دسترسی‌ها --}}
<div class="col-xl-4">
<div class="card custom-card">
<div class="card-header">
<div>
<div class="card-title mb-1">
سطح دسترسی
</div>
<small class="text-muted">
دسترسی‌های مدیر را مدیریت کنید.
</small>
</div>
</div>
<div class="card-body">
@php
$selectedPermissions = old(
'permissions',
$admin->permissions->pluck('id')->toArray()
);
@endphp
@error('permissions')
<div class="alert alert-danger py-2">
{{ $message }}
</div>
@enderror
@forelse($permissions as $permission)
<div class="form-check form-check-lg mb-3">
<input class="form-check-input"
type="checkbox"
name="permissions[]"
value="{{ $permission->id }}"
id="permission_{{ $permission->id }}"
@checked(in_array(
$permission->id,
$selectedPermissions
))>
<label class="form-check-label"
for="permission_{{ $permission->id }}">
<span class="fw-semibold">
{{ $permission->name }}
</span>
@if($permission->description)
<small class="text-muted d-block mt-1">
{{ $permission->description }}
</small>
@endif
</label>
</div>
@empty
<div class="text-center text-muted py-4">
<i class="ri-shield-keyhole-line fs-2 d-block mb-2"></i>
هنوز دسترسی‌ای تعریف نشده است.
</div>
@endforelse
</div>
</div>
</div>
</div>
{{-- دکمه‌ها --}}
<div class="card custom-card">
<div class="card-body">
<div class="d-flex justify-content-between align-items-center">
<div class="text-muted fs-12">
<i class="ri-information-line me-1"></i>
آخرین ویرایش:
@if($admin->updated_at)
<td>{{ $type->updated_at ? $type->updated_at->toJalali()->format('Y/m/d H:i') : '-' }}</td>
@else
-
@endif
</div>
<div class="d-flex gap-2">
<a href="{{ route('admin.admins.index') }}"
class="btn btn-light">
انصراف
</a>
<button type="submit"
class="btn btn-primary">
<i class="ri-save-line me-1"></i>
ذخیره تغییرات
</button>
</div>
</div>
</div>
</div>
</form>
</div>
@endsection
File diff suppressed because it is too large Load Diff