Skip to content

Commit 237b278

Browse files
Add field prefix & suffix to (grouped) select
1 parent 3228170 commit 237b278

File tree

2 files changed

+62
-54
lines changed

2 files changed

+62
-54
lines changed

src/resources/views/crud/fields/select.blade.php

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,25 +21,29 @@
2121
<label>{!! $field['label'] !!}</label>
2222
@include('crud::fields.inc.translatable_icon')
2323

24-
<select
25-
name="{{ $field['name'] }}"
26-
@include('crud::fields.inc.attributes')
27-
>
28-
29-
@if ($field['allows_null'])
30-
<option value="">-</option>
31-
@endif
32-
33-
@if (count($options))
34-
@foreach ($options as $connected_entity_entry)
35-
@if($current_value == $connected_entity_entry->getKey())
36-
<option value="{{ $connected_entity_entry->getKey() }}" selected>{{ $connected_entity_entry->{$field['attribute']} }}</option>
37-
@else
38-
<option value="{{ $connected_entity_entry->getKey() }}">{{ $connected_entity_entry->{$field['attribute']} }}</option>
39-
@endif
40-
@endforeach
41-
@endif
42-
</select>
24+
@if(isset($field['prefix']) || isset($field['suffix'])) <div class="input-group"> @endif
25+
@if(isset($field['prefix'])) <div class="input-group-prepend"><span class="input-group-text">{!! $field['prefix'] !!}</span></div> @endif
26+
<select
27+
name="{{ $field['name'] }}"
28+
@include('crud::fields.inc.attributes')
29+
>
30+
31+
@if ($field['allows_null'])
32+
<option value="">-</option>
33+
@endif
34+
35+
@if (count($options))
36+
@foreach ($options as $connected_entity_entry)
37+
@if($current_value == $connected_entity_entry->getKey())
38+
<option value="{{ $connected_entity_entry->getKey() }}" selected>{{ $connected_entity_entry->{$field['attribute']} }}</option>
39+
@else
40+
<option value="{{ $connected_entity_entry->getKey() }}">{{ $connected_entity_entry->{$field['attribute']} }}</option>
41+
@endif
42+
@endforeach
43+
@endif
44+
</select>
45+
@if(isset($field['suffix'])) <div class="input-group-append"><span class="input-group-text">{!! $field['suffix'] !!}</span></div> @endif
46+
@if(isset($field['prefix']) || isset($field['suffix'])) </div> @endif
4347

4448
{{-- HINT --}}
4549
@if (isset($field['hint']))

src/resources/views/crud/fields/select_grouped.blade.php

Lines changed: 39 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -16,43 +16,47 @@
1616
$categorylessEntries = $related_model::doesnthave($field['group_by'])->get();
1717
}
1818
@endphp
19-
<select
20-
name="{{ $field['name'] }}"
21-
style="width: 100%"
22-
@include('crud::fields.inc.attributes', ['default_class' => 'form-control'])
23-
>
24-
25-
@if ($field['allows_null'])
26-
<option value="">-</option>
27-
@endif
28-
29-
@if (isset($field['model']) && isset($field['group_by']))
30-
@foreach ($categories as $category)
31-
<optgroup label="{{ $category->{$field['group_by_attribute']} }}">
32-
@foreach ($category->{$field['group_by_relationship_back']} as $subEntry)
33-
<option value="{{ $subEntry->getKey() }}"
34-
@if ( ( old($field['name']) && old($field['name']) == $subEntry->getKey() ) || (isset($field['value']) && $subEntry->getKey()==$field['value']))
35-
selected
19+
20+
@if(isset($field['prefix']) || isset($field['suffix'])) <div class="input-group"> @endif
21+
@if(isset($field['prefix'])) <div class="input-group-prepend"><span class="input-group-text">{!! $field['prefix'] !!}</span></div> @endif
22+
<select
23+
name="{{ $field['name'] }}"
24+
@include('crud::fields.inc.attributes', ['default_class' => 'form-control'])
25+
>
26+
27+
@if ($field['allows_null'])
28+
<option value="">-</option>
29+
@endif
30+
31+
@if (isset($field['model']) && isset($field['group_by']))
32+
@foreach ($categories as $category)
33+
<optgroup label="{{ $category->{$field['group_by_attribute']} }}">
34+
@foreach ($category->{$field['group_by_relationship_back']} as $subEntry)
35+
<option value="{{ $subEntry->getKey() }}"
36+
@if ( ( old($field['name']) && old($field['name']) == $subEntry->getKey() ) || (isset($field['value']) && $subEntry->getKey()==$field['value']))
37+
selected
38+
@endif
39+
>{{ $subEntry->{$field['attribute']} }}</option>
40+
@endforeach
41+
</optgroup>
42+
@endforeach
43+
44+
@if ($categorylessEntries->count())
45+
<optgroup label="-">
46+
@foreach ($categorylessEntries as $subEntry)
47+
48+
@if($current_value == $subEntry->getKey())
49+
<option value="{{ $subEntry->getKey() }}" selected>{{ $subEntry->{$field['attribute']} }}</option>
50+
@else
51+
<option value="{{ $subEntry->getKey() }}">{{ $subEntry->{$field['attribute']} }}</option>
3652
@endif
37-
>{{ $subEntry->{$field['attribute']} }}</option>
38-
@endforeach
39-
</optgroup>
40-
@endforeach
41-
42-
@if ($categorylessEntries->count())
43-
<optgroup label="-">
44-
@foreach ($categorylessEntries as $subEntry)
45-
46-
@if($current_value == $subEntry->getKey())
47-
<option value="{{ $subEntry->getKey() }}" selected>{{ $subEntry->{$field['attribute']} }}</option>
48-
@else
49-
<option value="{{ $subEntry->getKey() }}">{{ $subEntry->{$field['attribute']} }}</option>
50-
@endif
51-
@endforeach
52-
</optgroup>
53+
@endforeach
54+
</optgroup>
55+
@endif
5356
@endif
54-
@endif
55-
</select>
57+
</select>
58+
@if(isset($field['suffix'])) <div class="input-group-append"><span class="input-group-text">{!! $field['suffix'] !!}</span></div> @endif
59+
@if(isset($field['prefix']) || isset($field['suffix'])) </div> @endif
5660

5761
{{-- HINT --}}
5862
@if (isset($field['hint']))

0 commit comments

Comments
 (0)