<?php
    $domId = $id . '_' . random_string('alnum', 5);
    $attributes = [
        'id' => $domId . "-sel", 'class' => 'form-control',
        'data-toggle' => (isset($errors) && $errors->has($errorKey) ? 'tooltip': null),
        'title' => (isset($errors) && $errors->has($errorKey) ? $errors->first($errorKey): null),
    ];
    if (!$enabled) {
        $attributes['disabled'] = true;
    }
?>
@if(isset($language))
<div class="form-group form-language-group {{ $blocksMode ? "blocks-mode--$blocksMode" : 'blocks-mode--hide' }} {{$isVersionable ? 'is-versionable' : '' }} form-language-{{ $language }}{{ $language == $defaultLang ? ' default-lang' : '' }} @error($errorKey) has-error @enderror {{ $parentHidden ? ' parent-hidden' : '' }}" id="select-box-{{$domId}}" style="{{ !empty($hide) ? 'display:none' : '' }}">
@else
<div class="form-group {{ $blocksMode ? "blocks-mode--$blocksMode" : 'blocks-mode--hide' }} {{$isVersionable ? 'is-versionable' : '' }}  @error($errorKey) has-error @enderror {{ $parentHidden ? ' parent-hidden' : '' }}" id="select-box-{{$domId}}" style="{{ !empty($hide) ? 'display:none' : '' }}">
@endif
    {!! html()->label(ucfirst($label))->for($domId)->attributes(['class' => 'control-label']) !!}
    @if(isset($language))
        <div class="form-group-translation-tools pull-right">
            @include('admin.generic.components.forms.copy-translation')
        </div>
    @endif
    @if(!empty($contentType))
        <button type="button" class="btn btn-xs btn-default command-add-item pull-right">
            <span class="icon glyphicon glyphicon-plus"></span>
        </button>
    @endif
    @if($enabled)
        <div id="select-box-{{$domId}}-wrapper" class="form-select-field" @error($errorKey) data-toggle="tooltip" title="{{$message}}" @enderror>
            {{ html()->select($name, $list, $value)->attributes([
                'id' => $domId, 'class' => 'form-control']) }}

            @if($browser != null)
                <button type="button" class="btn btn-default command-browse" data-browser="{{ $browser }}">
                    Browse...
                </button>
            @endif
        </div>
    @else
        {{ html()->select($name . "-sel", $list, $value)->attributes($attributes) }}
        {!! html()->hidden($name)->value($value)->attributes(["id" => $id]) !!}
    @endif
    @if(!empty($info))
        <span id="helpBlock" class="help-block">{{ $info }}</span>
    @endif
</div>

<script>
    $(function(){
        new Eae.View.BackendGenericSelectBox({
            el: $("#generic_form_{{getRequestContext('generic_form_timestamp')}} #select-box-{{$domId}}"),
            parent:  {!! empty($parent) ? 'false': json_encode($parent) !!},
            fieldName: @json($fieldName),
            search: @json($searchable),
            @if(isset($language))
            language: @json($language),
            @endif
            contentType:  {!! empty($contentType) ? 'false': json_encode($contentType)  !!}
        });
    });
</script>
