{{--
    "Bağlı Olduğu Rehberler Odası" seçimi (create + edit ortak).

    Odalar guide_chambers tanımlarından gelir; listede olmayan bir oda için
    "Diğer" seçilir ve serbest metin girilir.

    Gönderim: guide_chamber_select (kod | __other__ | boş) + guide_chamber_other (serbest metin)
    Sunucuda tek bir guide_chamber değerine indirgenir → ResourceController::resolveGuideChamber()

    Beklenen değişkenler:
      $chambers  — ['İRO' => 'İRO — İstanbul', …]
      $resource  — yalnızca edit'te
--}}
@php
    $other = \App\Models\Definition\GuideChamber::OTHER;
    $current = old('guide_chamber_select', (function () use ($chambers, $other) {
        $saved = isset($resource) ? $resource->guide_chamber : null;
        if (!$saved) return '';
        // Kayıtlı değer bir oda kodu ise onu seç; değilse (eski serbest metin) "Diğer".
        return array_key_exists($saved, $chambers) ? $saved : $other;
    })());
    $otherValue = old('guide_chamber_other', (function () use ($chambers) {
        $saved = isset($resource) ? $resource->guide_chamber : null;
        return ($saved && !array_key_exists($saved, $chambers)) ? $saved : '';
    })());
@endphp

<label class="f-label">Bağlı Olduğu Rehberler Odası</label>
<select name="guide_chamber_select" id="guide_chamber_select" class="f-input" onchange="gcToggleOther()">
    <option value="">— Seçin —</option>
    @foreach($chambers as $code => $label)
        <option value="{{ $code }}" @selected($current === $code)>{{ $label }}</option>
    @endforeach
    <option value="{{ $other }}" @selected($current === $other)>Diğer (elle yaz)</option>
</select>
@error('guide_chamber_select')<div class="f-error">{{ $message }}</div>@enderror

<div id="guide_chamber_other_wrap" class="mt-2" style="{{ $current === $other ? '' : 'display:none' }}">
    <input type="text" name="guide_chamber_other" id="guide_chamber_other" class="f-input"
           placeholder="Oda adını yazın" value="{{ $otherValue }}" maxlength="150">
    @error('guide_chamber_other')<div class="f-error">{{ $message }}</div>@enderror
</div>

@once
@push('scripts')
<script>
// "Diğer" seçilince serbest metin alanını aç. Gizliyken disabled yapılır ki
// forma gönderilmesin ve sunucuda boş bir "Diğer" değeri oluşmasın.
function gcToggleOther() {
    var sel = document.getElementById('guide_chamber_select');
    var wrap = document.getElementById('guide_chamber_other_wrap');
    var input = document.getElementById('guide_chamber_other');
    if (!sel || !wrap || !input) return;

    var isOther = sel.value === '{{ \App\Models\Definition\GuideChamber::OTHER }}';
    wrap.style.display = isOther ? '' : 'none';
    input.disabled = !isOther;
    if (isOther) input.focus();
}
document.addEventListener('DOMContentLoaded', gcToggleOther);
</script>
@endpush
@endonce
