refactor(profile): Men-disable input profil untuk role_id kecuali 1 dan 2

This commit is contained in:
Yoga Pangestu 2024-11-30 19:26:57 +07:00
parent 90b154f18a
commit e1dcfd4849
2 changed files with 26 additions and 15 deletions

View File

@ -21,7 +21,7 @@ public function index(): View
{ {
return view('pages.admin.setting.account', [ return view('pages.admin.setting.account', [
'pageTitle' => 'Profil', 'pageTitle' => 'Profil',
'profile' => User::with(['attachment', 'biography', 'role'])->findOrFail(Auth::id()), 'profile' => User::with(['attachments', 'biography', 'role'])->findOrFail(Auth::id()),
]); ]);
} }
@ -41,7 +41,10 @@ public function updateProfile(User $user, UserRequest $request): RedirectRespons
->toArray(); ->toArray();
$user->biography()->update($biographyData); $user->biography()->update($biographyData);
if (isset($validatedData['avatar'])) { if (isset($validatedData['avatar'])) {
$this->uploadAttachment($validatedData['avatar'], 'users', User::class, $user->id); $this->uploadAttachment($validatedData['avatar'], 'users', User::class, $user->id, 'avatar');
}
if (isset($validatedData['ktp'])) {
$this->uploadAttachment($validatedData['ktp'], 'users', User::class, $user->id, 'ktp');
} }
}); });

View File

@ -21,7 +21,7 @@
<div class="profile-title"> <div class="profile-title">
<div class="media profile-media-md"> <div class="media profile-media-md">
<img alt="image" <img alt="image"
src="{{ Storage::url("users/{$profile->attachment->formatted_attachment}") }}"> src="{{ optional($profile->attachments()->where('type', 'avatar')->first())->formatted_attachment ? Storage::url('users/' . optional($profile->attachments()->where('type', 'avatar')->first())->formatted_attachment) : '' }}">
<div class="media-body"> <div class="media-body">
<h5 class="mb-1">{{ $profile->biography->full_name ?? '' }}</h5> <h5 class="mb-1">{{ $profile->biography->full_name ?? '' }}</h5>
<p>{{ $profile->role->name ?? '' }}</p> <p>{{ $profile->role->name ?? '' }}</p>
@ -110,7 +110,8 @@ class="form-control @error('repeat_new_password') is-invalid @enderror"
<input name="full_name" <input name="full_name"
class="form-control @error('full_name') is-invalid @enderror" type="text" class="form-control @error('full_name') is-invalid @enderror" type="text"
placeholder="Masukan Nama Lengkap" placeholder="Masukan Nama Lengkap"
value="{{ old('full_name', $profile->biography->full_name) }}" id="full_name"> value="{{ old('full_name', $profile->biography->full_name) }}" id="full_name"
@disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
@error('full_name') @error('full_name')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -124,7 +125,8 @@ class="form-control @error('full_name') is-invalid @enderror" type="text"
<input name="username" <input name="username"
class="form-control @error('username') is-invalid @enderror" type="text" class="form-control @error('username') is-invalid @enderror" type="text"
placeholder="Masukan Nama Pengguna" placeholder="Masukan Nama Pengguna"
value="{{ old('username', $profile->username) }}" id="username"> value="{{ old('username', $profile->username) }}" id="username"
@disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
@error('username') @error('username')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -137,7 +139,8 @@ class="form-control @error('username') is-invalid @enderror" type="text"
<label class="form-label" for="email">Email</label> <label class="form-label" for="email">Email</label>
<input name="email" class="form-control @error('email') is-invalid @enderror" <input name="email" class="form-control @error('email') is-invalid @enderror"
type="text" placeholder="Masukan Email" type="text" placeholder="Masukan Email"
value="{{ old('email', $profile->email) }}" id="email"> value="{{ old('email', $profile->email) }}" id="email"
@disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
@error('email') @error('email')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -154,7 +157,7 @@ class="form-control @error('username') is-invalid @enderror" type="text"
class="form-control @error('contact_number') is-invalid @enderror" class="form-control @error('contact_number') is-invalid @enderror"
type="text" placeholder="Masukan Kontak" type="text" placeholder="Masukan Kontak"
value="{{ old('contact_number', $profile->biography->contact_number) }}" value="{{ old('contact_number', $profile->biography->contact_number) }}"
id="contact_number"> id="contact_number" @disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
@error('contact_number') @error('contact_number')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -167,7 +170,8 @@ class="form-control @error('contact_number') is-invalid @enderror"
<label class="form-label" for="pob">Tempat Lahir</label> <label class="form-label" for="pob">Tempat Lahir</label>
<input name="pob" class="form-control @error('pob') is-invalid @enderror" <input name="pob" class="form-control @error('pob') is-invalid @enderror"
type="text" placeholder="Masukan Tempat Lahir" type="text" placeholder="Masukan Tempat Lahir"
value="{{ old('pob', $profile->biography->pob) }}" id="pob"> value="{{ old('pob', $profile->biography->pob) }}" id="pob"
@disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
@error('pob') @error('pob')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -182,7 +186,8 @@ class="form-control @error('contact_number') is-invalid @enderror"
<input name="dob" <input name="dob"
class="form-control @error('dob') is-invalid @enderror human-friendly" class="form-control @error('dob') is-invalid @enderror human-friendly"
type="date" placeholder="Masukan Tanggal Lahir" type="date" placeholder="Masukan Tanggal Lahir"
value="{{ old('dob', $profile->biography->dob) }}" id="dob"> value="{{ old('dob', $profile->biography->dob) }}" id="dob"
@disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
</div> </div>
@error('dob') @error('dob')
<div class="invalid-feedback"> <div class="invalid-feedback">
@ -237,7 +242,7 @@ class="form-control @error('base_salary') is-invalid @enderror"
<div class="mb-3"> <div class="mb-3">
<label class="form-label" for="address">Alamat</label> <label class="form-label" for="address">Alamat</label>
<textarea name="address" class="form-control @error('address') is-invalid @enderror" id="address" rows="3" <textarea name="address" class="form-control @error('address') is-invalid @enderror" id="address" rows="3"
placeholder="Masukan Alamat">{{ old('address', $profile->biography->address) }}</textarea> placeholder="Masukan Alamat" @disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>{{ old('address', $profile->biography->address) }}</textarea>
@error('address') @error('address')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -252,7 +257,8 @@ class="form-control @error('base_salary') is-invalid @enderror"
</label> </label>
<input name="avatar" class="form-control @error('avatar') is-invalid @enderror" <input name="avatar" class="form-control @error('avatar') is-invalid @enderror"
id="avatar" type="file" value="{{ old('avatar') }}" id="avatar" type="file" value="{{ old('avatar') }}"
accept="image/jpeg,image/png,image/jpg,image/gif,image/svg"> accept="image/jpeg,image/png,image/jpg,image/gif,image/svg"
@disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
@error('avatar') @error('avatar')
<div class="invalid-feedback"> <div class="invalid-feedback">
{{ $message }} {{ $message }}
@ -266,7 +272,7 @@ class="form-control @error('base_salary') is-invalid @enderror"
</label> </label>
<select name="gender" <select name="gender"
class="form-control @error('gender') is-invalid @enderror select2" class="form-control @error('gender') is-invalid @enderror select2"
id="gender"> id="gender" @disabled(auth()->user()->role_id !== 1 && auth()->user()->role_id !== 2)>
<option value=""></option> <option value=""></option>
<option value="1" @selected($profile->biography->gender == '1')>Laki-laki</option> <option value="1" @selected($profile->biography->gender == '1')>Laki-laki</option>
<option value="2" @selected($profile->biography->gender == '2')>Perempuan</option> <option value="2" @selected($profile->biography->gender == '2')>Perempuan</option>
@ -291,9 +297,11 @@ class="form-control @error('gender') is-invalid @enderror select2"
@enderror @enderror
</div> </div>
</div> </div>
<div class="col-md-12"> @if (auth()->user()->role_id === 1 || auth()->user()->role_id === 2)
<button class="btn btn-primary button-disable" type="submit">Simpan</button> <div class="col-md-12">
</div> <button class="btn btn-primary button-disable" type="submit">Simpan</button>
</div>
@endif
</div> </div>
</div> </div>
</form> </form>