Skip to content

Commit 0a62ea8

Browse files
committed
Improve menu item page breadcrumbs
Improve menu form
1 parent 2fcfd8b commit 0a62ea8

File tree

2 files changed

+23
-25
lines changed

2 files changed

+23
-25
lines changed

src/Resources/MenuResource.php

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,12 @@ public static function form(Form $form): Form
6969
->helperText(flexiblePagesTrans('menus.form.code_help')),
7070
];
7171

72+
$formFields[] = Textarea::make('description')
73+
->label(flexiblePagesTrans('menus.form.description_lbl'))
74+
->rows(3)
75+
->helperText(flexiblePagesTrans('menus.form.description_help'))
76+
->columnSpan(2);
77+
7278
// Only show style field if there are multiple styles available
7379
if ($showStyleField) {
7480
$formFields[] = Select::make('style')
@@ -87,16 +93,11 @@ public static function form(Form $form): Form
8793
->placeholder(FilamentFlexibleContentBlockPages::config()->getMenuMaxDepth())
8894
->helperText(flexiblePagesTrans('menus.form.max_depth_help'));
8995

90-
$formFields[] = Textarea::make('description')
91-
->label(flexiblePagesTrans('menus.form.description_lbl'))
92-
->rows(3)
93-
->helperText(flexiblePagesTrans('menus.form.description_help'));
94-
9596
return $form
9697
->schema([
9798
Section::make(flexiblePagesTrans('menus.form.general_section'))
9899
->schema($formFields)
99-
->columns(1),
100+
->columns(2),
100101
]);
101102
}
102103

@@ -123,24 +124,6 @@ public static function table(Table $table): Table
123124
->badge()
124125
->color('gray')
125126
->visible(fn () => count(FilamentFlexibleContentBlockPages::config()->getMenuStyles()) > 1),
126-
127-
TextColumn::make('max_depth')
128-
->label(flexiblePagesTrans('menus.table.max_depth_col'))
129-
->formatStateUsing(function (?int $state): string {
130-
return $state ? (string) $state : flexiblePagesTrans('menus.table.default_depth');
131-
})
132-
->sortable(),
133-
134-
TextColumn::make('menuItems_count')
135-
->label(flexiblePagesTrans('menus.table.items_count_col'))
136-
->counts('menuItems')
137-
->sortable(),
138-
139-
TextColumn::make('created_at')
140-
->label(flexiblePagesTrans('menus.table.created_at_col'))
141-
->dateTime()
142-
->sortable()
143-
->toggleable(isToggledHiddenByDefault: true),
144127
])
145128
->filters([
146129
//
@@ -149,7 +132,7 @@ public static function table(Table $table): Table
149132
Action::make('manage_items')
150133
->label(flexiblePagesTrans('menus.actions.manage_items'))
151134
->icon('heroicon-o-bars-3')
152-
->color('primary')
135+
->color('secondary')
153136
->url(fn ($record) => static::getUrl('items', ['record' => $record])),
154137
EditAction::make(),
155138
])

src/Resources/MenuResource/Pages/ManageMenuItems.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,21 @@ public function getBreadcrumb(): string
5353
return flexiblePagesTrans('menu_items.manage.breadcrumb');
5454
}
5555

56+
/**
57+
* Add an extra breadcrumb to the edit page of the menu.
58+
* @inheritDoc
59+
*/
60+
public function getBreadcrumbs(): array
61+
{
62+
$breadcrumbs = collect(parent::getBreadcrumbs());
63+
64+
$breadcrumbs->pop();
65+
$breadcrumbs->put(MenuResource::getUrl('edit', ['record' => $this->menu->id]), $this->menu->name ?? 'Menu');
66+
$breadcrumbs->push(static::getBreadcrumb());
67+
68+
return $breadcrumbs->toArray();
69+
}
70+
5671
protected function getActions(): array
5772
{
5873
return [

0 commit comments

Comments
 (0)