@extends('layouts.app') @section('content')
@php $profileImage = null; if (!empty($user->profile_image)) { // If stored path is relative, build a public URL; if already absolute, use as-is $profileImage = \Illuminate\Support\Str::startsWith($user->profile_image, ['http://', 'https://']) ? $user->profile_image : asset('storage/' . ltrim($user->profile_image, '/')); } @endphp
@php $mediaProfile = $user->getFirstMediaUrl('profile', 'thumb') ?: $user->getFirstMediaUrl('profile'); $profileImage = $mediaProfile ?: $profileImage; @endphp @if ($profileImage) Admin @else
No Image
@endif

@if ($errors->any())
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
Edit Admin
@csrf @method('PUT')
Full Name
Email
New Password
Confirm Password
Profile Image
JPG, PNG, or WebP up to 5 MB.
@error('profile_image')
{{ $message }}
@enderror
Roles
@php // Hide Super Admin regardless of spacing/casing (e.g., "Super Admin", "superadmin", "super-admin") $assignableRoles = $roles->reject(function ($role) { $normalizedName = preg_replace('/[^a-z0-9]/i', '', strtolower($role->name ?? '')); $normalizedSlug = preg_replace('/[^a-z0-9]/i', '', strtolower($role->slug ?? '')); return $normalizedName === 'superadmin' || $normalizedSlug === 'superadmin'; }); $selectedRoles = old('role_ids', $user->roles->pluck('id')->toArray()); @endphp @if ($assignableRoles->count())
@foreach ($assignableRoles as $role)
id, $selectedRoles) ? 'checked' : '' }}>
@endforeach
@if($isSelfEdit && !$canEditOwnAssignedRole)
You do not have permission to change your own assigned role.
@endif @else
No roles available.
@endif @error('role_ids')
{{ $message }}
@enderror
@endsection