<?php
    $domId = $id . random_string('alnum', 5);
    $attributes = [
        'id' => $id ,
        'class' => 'form-control multiple-picker-search-field' . (isset($language) && $language == $defaultLang ? ' default-lang' : ''),
        '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 id="multiple-picker-{{ $domId }}" class="form-group form-language-group {{ $blocksMode ? "blocks-mode--$blocksMode" : 'blocks-mode--hide' }} form-language-{{ $language }}{{ $language == $defaultLang ? ' default-lang' : '' }} multiple-picker-wrapper{{(isset($errors) && $errors->has($errorKey) ? ' has-error' : '')}}{{ $parentHidden ? ' parent-hidden' : '' }}" style="{{ !empty($hide) ? 'display:none' : '' }}">
@else
    <div id="multiple-picker-{{ $domId }}" class="form-group {{ $blocksMode ? "blocks-mode--$blocksMode" : 'blocks-mode--hide' }} multiple-picker-wrapper{{(isset($errors) && $errors->has($errorKey) ? ' has-error' : '')}}{{ $parentHidden ? ' parent-hidden' : '' }}" style="{{ !empty($hide) ? 'display:none' : '' }}">
@endif
    {!! html()->hidden($name)->value('')->attributes(['id' => $id, 'class' => 'multiple-picker-values']) !!}
    {!! html()->label(ucfirst($label))->for($id)->attributes(['class' => 'control-label']) !!}
    @if($allowInsert)
        <button type="button" class="btn btn-xs btn-default command-add-content pull-right">
            <span class="icon glyphicon glyphicon-plus"></span>
        </button>
    @endif
    @if(isset($language))
        <div class="form-group-translation-tools pull-right">
            @include('admin.generic.components.forms.copy-translation')
        </div>
    @endif
    <div class="row">
        <div class="col-sm-12">
            <div class="panel panel-default"{{ isset($errors) && $errors->has($errorKey) ? ' data-toggle="tooltip" title="' . $errors->first($errorKey) . '"' : '' }}>
                <div class="panel-heading">
                    <select name="{{ '_' . $name . '_search-type' }}" class="form-control search-type-select {{ sizeof($objectTypes) <=1 ? 'hidden' : '' }}">
                        <option value="">All Types</option>
                        @foreach ($objectTypes as $objectTypes)
                            <option value="{{ $objectTypes }}">{{ $objectTypes }}</option>
                        @endforeach
                    </select>
                    {{ html()->text('_' . $name . '_search')->attributes($attributes)->placeholder('Search...') }}
                </div>
                <div class="panel-body multiple-picker-list multiple-picker-picked-list">
                    <div class="panel panel-default picker-panel">
                        <ol class="list-group"></ol>
                    </div>
                </div>
            </div>
        </div>

    </div>
    @if(!empty($info))
        <span id="helpBlock" class="help-block">{{ $info }}</span>
    @endif
</div>

<script>
    $(function(){
        new Eae.View.BackendMultiplePickerSearch({
            el: $("#generic_form_{{getRequestContext('generic_form_timestamp')}} #multiple-picker-{{$domId}}"),
            pickedList: @json($pickedList),
            order: {{ $order ? 'true': 'false' }},
            multipleTypes: {{ $multipleTypes ? 'true': 'false' }},
            contentType: @json($contentType),
            disabled: {{ $enabled ? 'false': 'true' }},
            parent:  {!! empty($parent) ? 'false': json_encode($parent) !!},
            websiteFiltered: {{ $websiteFiltered ? 'true': 'false' }},
            editable: @json($allowInsert),
            searchUrl: @json($searchUrl),
            fieldName: '{{ $fieldName }}',
            @if($maxSize)
                maxSize: {{ $maxSize }},
            @endif
            @if(isset($language))
                language: '{{ $language }}',
            @endif
        });
    });
</script>


