Update Role fasilitator, kordinator

This commit is contained in:
2026-11-04 14:24:51 +07:00
parent b5b046ed86
commit 41da3a71ee
48 changed files with 586 additions and 164 deletions
+20 -1
View File
@@ -47,7 +47,7 @@
<option value="">Pilih Role</option>
@foreach($roles as $roleEnum)
<option value="{{ $roleEnum->value }}" {{ old('role', \App\Enums\Role::PETANI->value) === $roleEnum->value ? 'selected' : '' }}>
{{ ucfirst(str_replace('_', ' ', $roleEnum->value)) }}
{{ $roleEnum->label() }}
</option>
@endforeach
</select>
@@ -55,6 +55,19 @@
</div>
</div>
{{-- Hanya untuk role Koordinator --}}
<div class="row {{ old('role') === \App\Enums\Role::KOORDINATOR->value ? '' : 'd-none' }}" id="koordinator-komoditas-wrapper">
<div class="col-md-12 mb-4 form-control-validation">
<label class="form-label" for="add-koordinator-komoditas">Komoditas yang Dikoordinasikan<span class="text-danger">*</span></label>
<select id="add-koordinator-komoditas" name="komoditas_ids[]" class="select2 form-select @error('komoditas_ids') is-invalid @enderror" multiple data-placeholder="Pilih Komoditas" style="width: 100%">
@foreach($komoditasOptions as $komoditas)
<option value="{{ $komoditas->id }}" @selected(in_array($komoditas->id, old('komoditas_ids', [])))>{{ $komoditas->nama }}</option>
@endforeach
</select>
@error('komoditas_ids')<div class="invalid-feedback d-block">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-4 form-control-validation">
<label class="form-label" for="add-profile-telepon">No. Telepon<span class="text-danger">*</span></label>
@@ -183,6 +196,12 @@
$(document).ready(function () {
$('.select2').select2();
// Pilihan komoditas hanya tampil untuk role Koordinator
$('#add-profile-role').on('change', function () {
const isKoordinator = $(this).val() === @json(\App\Enums\Role::KOORDINATOR->value);
$('#koordinator-komoditas-wrapper').toggleClass('d-none', !isKoordinator);
});
$(document).on('click', '.password-toggle', function () {
const input = this.closest('.input-group').querySelector('input');
const icon = this.querySelector('i');