improve searchbox extra

This commit is contained in:
xiaomlove
2022-11-05 01:08:04 +08:00
parent 7b65d84752
commit 8dd2880e76
16 changed files with 96 additions and 71 deletions
@@ -40,7 +40,7 @@ class CategoryResource extends Resource
return $form
->schema([
Forms\Components\Select::make('mode')
->options(SearchBox::query()->pluck('name', 'id')->toArray())
->options(SearchBox::listModeOptions())
->label(__('label.search_box.label'))
->required()
,
@@ -84,6 +84,7 @@ class IconResource extends Resource
])
->actions([
Tables\Actions\EditAction::make(),
Tables\Actions\DeleteAction::make(),
])
->bulkActions([
Tables\Actions\DeleteBulkAction::make(),
@@ -44,7 +44,7 @@ class SecondIconResource extends Resource
$specialMode = Setting::get('main.specialcat');
$torrentTaxonomySchema = $searchBoxRep->listTaxonomyFormSchema($torrentMode);
$specialTaxonomySchema = $searchBoxRep->listTaxonomyFormSchema($specialMode);
$modeOptions = SearchBox::query()->whereIn('id', [$torrentMode, $specialMode])->pluck('name', 'id')->toArray();
$modeOptions = SearchBox::listModeOptions();
return $form
->schema([
Forms\Components\TextInput::make('name')
@@ -52,12 +52,6 @@ class SecondIconResource extends Resource
->required()
->helperText(__('label.second_icon.name_help'))
,
Forms\Components\Select::make('mode')
->label(__('label.search_box.label'))
->options($modeOptions)
->required()
->reactive()
,
Forms\Components\TextInput::make('image')
->label(__('label.second_icon.image'))
->required()
@@ -79,6 +73,11 @@ class SecondIconResource extends Resource
->columns(4)
->hidden(fn (\Closure $get) => $get('mode') != $specialMode)
,
Forms\Components\Select::make('mode')
->options($modeOptions)
->label(__('label.search_box.taxonomy.mode'))
->helperText(__('label.search_box.taxonomy.mode_help'))
,
]);
}
@@ -109,6 +108,7 @@ class SecondIconResource extends Resource
])
->actions([
Tables\Actions\EditAction::make(),
Tables\Actions\DeleteAction::make(),
])
->bulkActions([
Tables\Actions\DeleteBulkAction::make(),
@@ -87,6 +87,12 @@ class SectionResource extends Resource
->label(__('label.search_box.custom_fields_display'))
->helperText(__('label.search_box.custom_fields_display_help'))
,
Forms\Components\CheckboxList::make('other')
->options(SearchBox::listExtraText())
->columns(2)
->label(__('label.search_box.other'))
,
Forms\Components\Section::make(__('label.search_box.section_name'))
->schema($sectionNameLocalSchema)
->columns(count($sectionNameLocalSchema))
@@ -28,4 +28,15 @@ class EditSection extends EditRecord
clear_search_box_cache($this->record->id);
}
protected function mutateFormDataBeforeFill(array $data): array
{
foreach (SearchBox::$extras as $field => $text) {
if (!empty($data['extra'][$field])) {
$data['other'][] = $field;
}
unset($data['extra'][$field]);
}
return $data;
}
}