From 64a7d1d2f48d9bd26a80e0572208df4f4f9710f6 Mon Sep 17 00:00:00 2001 From: Jon Brookes Date: Sun, 15 Feb 2026 18:10:20 +0100 Subject: [PATCH] feat: add navigation items for Preview and Live sites in AdminPanelProvider (#21) Co-authored-by: jon brookes Reviewed-on: https://codeberg.org/headshed/share-lt/pulls/21 --- app/Providers/Filament/AdminPanelProvider.php | 20 +++++++++++++++++++ cmd/curl_send_user_toast_message.sh | 2 +- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/app/Providers/Filament/AdminPanelProvider.php b/app/Providers/Filament/AdminPanelProvider.php index f263644..8ea5759 100644 --- a/app/Providers/Filament/AdminPanelProvider.php +++ b/app/Providers/Filament/AdminPanelProvider.php @@ -25,6 +25,25 @@ class AdminPanelProvider extends PanelProvider { public function panel(Panel $panel): Panel { + $previewSiteUrl = env('PREVIEW_SITE_URL'); + $liveSiteUrl = env('LIVE_SITE_URL'); + + $navigationItems = []; + if ($previewSiteUrl && $liveSiteUrl) { + $navigationItems = [ + \Filament\Navigation\NavigationItem::make('Preview Site') + ->url($previewSiteUrl, shouldOpenInNewTab: true) + ->icon('heroicon-o-eye') + ->group('External Links') + ->sort(1), + \Filament\Navigation\NavigationItem::make('Live Site') + ->url($liveSiteUrl, shouldOpenInNewTab: true) + ->icon('heroicon-o-rocket-launch') + ->group('External Links') + ->sort(2), + ]; + } + return $panel ->default() ->sidebarCollapsibleOnDesktop() @@ -49,6 +68,7 @@ class AdminPanelProvider extends PanelProvider AccountWidget::class, FilamentInfoWidget::class, ]) + ->navigationItems($navigationItems) ->middleware([ EncryptCookies::class, AddQueuedCookiesToResponse::class, diff --git a/cmd/curl_send_user_toast_message.sh b/cmd/curl_send_user_toast_message.sh index 3b6589f..339d3d9 100755 --- a/cmd/curl_send_user_toast_message.sh +++ b/cmd/curl_send_user_toast_message.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -URL='http://127.0.0.1:8000' +# URL='http://127.0.0.1:8000' curl -X POST $URL/api/notifications/preview-site-built \ -H "Authorization: Bearer $TOKEN" \