{{-- ==================================================================================================== FILE : resources/views/profile/edit.blade.php PEMBUAT : Joudie Posumah (Dipercantik oleh AI Assistant) MODUL : Profile - Edit Profil + Upload Foto + Ubah Password TAHUN : 2026 PERBAIKAN: - Responsive design mobile-first (Android optimal) - Layout 2-kolom mobile, 3-kolom desktop - Visual modern dengan gradient, shadow, hover effects - Spacing & typography yang lebih nyaman - Loading states & micro-interactions - Performance optimization ==================================================================================================== --}} @extends('layouts.dashboard') @section('title', 'Profil Saya') @section('page-title', 'Profil Saya') @section('content')
{{-- Notifikasi --}} @if(session('success')) @endif @if ($errors->any()) @endif @php /** @var \App\Models\Anggota $user */ $user = $user ?? auth()->user(); $fotoSrc = null; if (!empty($user->foto_render)) { $fotoSrc = $user->foto_render; } elseif (!empty($user->foto)) { $filename = basename((string) $user->foto); $fotoSrc = route('pasfoto.show', ['filename' => $filename]); } @endphp
{{-- FOTO PROFIL - FULL WIDTH MOBILE --}}
Foto Profil
@if(!empty($fotoSrc)) Foto {{ $user->nama_lengkap }}
@else
Tambahkan Foto Profil
@endif @if(!empty($user->foto))
@endif
{{-- Upload Form --}}
@csrf
@error('foto')
{{ $message }}
@enderror
{{-- Preview --}}
Preview foto
Preview
JPG/PNG, maksimal 2MB, ukuran persegi disarankan
{{-- DATA UTAMA & PASSWORD - 50/50 MOBILE, 1/3 DESKTOP --}}
{{-- DATA UTAMA --}}
Data Utama
@if ($errors->utama->any())
    @foreach ($errors->utama->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
@csrf @method('PATCH')
@error('nama_lengkap','utama')
{{ $message }}
@enderror
@error('nomor_wa','utama')
{{ $message }}
@enderror
@error('email','utama')
{{ $message }}
@enderror
@error('detail_alamat','utama')
{{ $message }}
@enderror
{{-- UBAH PASSWORD --}}
Ubah Password
@csrf
@error('current_password')
{{ $message }}
@enderror
@error('password')
{{ $message }}
@enderror
Minimal 8 karakter, kombinasi huruf & angka
{{-- INFORMASI TAMBAHAN - FULL WIDTH MOBILE, 1/3 DESKTOP --}}
Informasi Tambahan
@if ($errors->tambahan->any())
    @foreach ($errors->tambahan->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
@csrf @method('PATCH')
@php $fields = [ ['status_rumah', 'Status Rumah', [ '' => 'Pilih', 'M' => 'Milik Sendiri', 'S' => 'Sewa', 'N' => 'Menumpang' ]], ['status_tanah_pekarangan', 'Status Tanah', [ '' => 'Pilih', 'M' => 'Memiliki', 'B' => 'Belum Memiliki' ]], ['akses_listrik', 'Listrik', [ '' => 'Pilih', 'A' => 'Ada', 'T' => 'Tidak' ]], ['akses_air_bersih', 'Air Bersih', [ '' => 'Pilih', 'A' => 'Ada', 'T' => 'Tidak' ]], ['bpjs_kesehatan', 'BPJS Kesehatan', [ '' => 'Pilih', 'Y' => 'Peserta', 'T' => 'Tidak' ]], ['bpjs_ketenagakerjaan', 'BPJS Ketenagakerjaan', [ '' => 'Pilih', 'Y' => 'Peserta', 'T' => 'Tidak' ]], ['kartu_kusuka', 'Kartu Kusuka', [ '' => 'Pilih', 'Y' => 'Memiliki', 'T' => 'Belum Memiliki' ]] ]; @endphp @foreach($fields as $field)
@error($field[0],'tambahan')
{{ $message }}
@enderror
@endforeach
@endsection @push('styles') @endpush @push('scripts') @endpush