Products Admin Panel
Products are managed through two Filament resources in the admin panel under “Product Management”.
Product Templates Resource
Section titled “Product Templates Resource”Path: Admin > Product Management > Product Templates
Source: backend/app/Filament/Resources/ProductTemplates/ProductTemplateResource.php
Create/Edit Workflow
Section titled “Create/Edit Workflow”The form uses a wizard with three steps:
-
General Data
- AI Trip Parser (paste raw trip info)
- Core info: title, subtitle, SKU (auto-generated), source locale
- Descriptive content: descriptions, highlights, requirements
- Hero image upload
-
Itinerary & Logistics
- Trip itinerary repeater (city, nights, title, details, image)
- Optional activities and free time
- Accessibility options
- Duration (auto-calculated), accommodation, meal plans
-
SEO
- Meta title and description
AI Features
Section titled “AI Features”Trip Parser: Paste raw trip info like:
Asia India 9 nights - 2 Delhi - 1 Jodhpur - 2 Udaipur - 2 Jaipur - 1 Agra - 1 DelhiAI generates all fields including itinerary with titles and descriptions.
Title-based Generation: Enter a title, click sparkle icon to generate all content.
Table Columns
Section titled “Table Columns”- Hero image
- Title, subtitle, SKU
- Markets count (shows lock icon if > 0)
- Short description
- Created date
Templates with market products show a lock badge - these cannot have their core structure modified.
Products by Market Resource
Section titled “Products by Market Resource”Path: Admin > Product Management > Products by Market
Source: backend/app/Filament/Resources/ProductsByMarket/ProductByMarketResource.php
Create Workflow
Section titled “Create Workflow”-
Product & Market Selection
- Select product template
- Select market (auto-fills locale, airports, search dates)
- Select language from market’s supported locales
- Set status and sort order
-
Flight Search Configuration
- Departure airports (multi-select from market’s active airports)
- Route type: Multi-City or Separate Flights
- Search period (start/end dates)
- Excluded dates repeater
-
Core Translation
- “Translate from Product” button for AI translation
- Title, subtitle, descriptions
- Categories, highlights, destination info
-
Itinerary & Activities
- Per-day translations (city/nights from template, title/details editable)
- Optional activities, free time
-
Logistics & Practical Details
- Accommodation, meal plans, not included
-
SEO & URL
- Meta title, URL slug, meta description
Auto-fill Behavior
Section titled “Auto-fill Behavior”When selecting a market:
- Locale defaults to market’s default locale
- Departure airports auto-filled with all active market airports
- Search dates default to 3 months out + 60 days
AI Translation
Section titled “AI Translation”Click “Translate from Product” to:
- Load ProductTemplate content
- Call OpenRouter API for translation
- Populate all translation fields
Configuration: OPENROUTER_API_KEY, OPENROUTER_API_URL, OPENROUTER_MODEL
Source: backend/app/Services/ProductByMarketTranslationService.php
Table Columns
Section titled “Table Columns”- Product template title
- Market code
- Locale
- Status badge
- SKU
- Search date range
- Created date
Navigation
Section titled “Navigation”Both resources appear under “Product Management” navigation group:
| Resource | Icon | Sort Order |
|---|---|---|
| Product Templates | rectangle-stack | default |
| Products by Market | globe-alt | 20 |
Permissions
Section titled “Permissions”Resources use HasResourcePermissions trait for RBAC integration.
Source: backend/app/Filament/Traits/HasResourcePermissions.php
Related
Section titled “Related”- Product Templates - Data model
- Products by Market - Configuration details