snipe_it/resources/views/blade/input/location-select.blade.php
Marcus Moore 71d93ca3c3
Use dedicated location select component
Copy/paste/modify from partials.forms.edit.location-select
2025-03-11 11:41:26 -07:00

62 lines
1.9 KiB
PHP

@use('App\Models\Location', 'Location')
@use('Illuminate\Support\Arr', 'Arr')
@props([
'label',
'name',
'selected',
'required' => false,
'multiple' => false,
'helpText' => null,
'hideNewButton' => false,
])
<div
@class([
'form-group',
'has-error' => $errors->has($name),
])
>
<label for="{{ $name }}" class="col-md-3 control-label">{{ $label }}</label>
<div class="col-md-7">
<select
class="js-data-ajax"
data-endpoint="locations"
data-placeholder="{{ trans('general.select_location') }}"
name="{{ $name }}"
style="width: 100%"
id="{{ $name }}_location_select"
aria-label="{{ $name }}"
@required($required)
@if ($multiple)
multiple
@endif
>
@if ($selected)
@foreach(Arr::wrap($selected) as $id)
<option value="{{ $id }}" selected="selected" role="option" aria-selected="true" role="option">
{{ (Location::find($id))->name }}
</option>
@endforeach
@endif
</select>
</div>
<div class="col-md-1 col-sm-1 text-left">
@unless($hideNewButton)
@can('create', Location::class)
<a href='{{ route('modal.show', 'location') }}' data-toggle="modal" data-target="#createModal" data-select='{{ $name }}_location_select' class="btn btn-sm btn-primary">{{ trans('button.new') }}</a>
@endcan
@endunless
</div>
{!! $errors->first($name, '<div class="col-md-8 col-md-offset-3"><span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span></div>') !!}
@if ($helpText)
<div class="col-md-7 col-sm-11 col-md-offset-3">
<p class="help-block">{{ $helpText }}</p>
</div>
@endif
</div>