/home/optimumoperation/digitalcard.optimumoperations.top/app/Models/BusinessDirectorySetting.php
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class BusinessDirectorySetting extends Model
{
    protected $fillable = [
        'title', 'description', 'menu_items', 'config_sections'
    ];

    protected $casts = [
        'menu_items' => 'array',
        'config_sections' => 'array'
    ];

    public static function getSettings()
    {
        $settings = self::first();
        
        if (!$settings) {
            $defaultConfig = [
                'theme' => [
                    'primary_color' => '#3b82f6',
                    'secondary_color' => '#8b5cf6',
                    'accent_color' => '#10b981'
                ],

                'hero' => [
                    'trust_badge' => 'Trusted by 10,000+ Businesses',
                    'main_title' => 'Discover Amazing Businesses',
                    'subtitle' => 'Connect with professionals, explore services, and grow your network in our comprehensive business directory',
                    'features' => [
                        ['icon' => 'verified', 'text' => 'Verified Businesses'],
                        ['icon' => 'location', 'text' => 'Local & Global'],
                        ['icon' => 'contact', 'text' => 'Instant Contact']
                    ]
                ],
                'section_order' => ['hero', 'search', 'categories', 'businesses'],
                'section_visibility' => [
                    'hero' => true,
                    'search' => true,
                    'categories' => true,
                    'businesses' => true,
                    'filters' => true,
                ]
            ];
            
            $settings = self::create([
                'title' => 'Business Directory',
                'description' => 'Discover amazing businesses and connect with professionals',
                'config_sections' => $defaultConfig
            ]);
        }
        
        return $settings;
    }

    public function customPages()
    {
        return $this->hasMany(\App\Models\BusinessDirectoryCustomPage::class, 'id', 'id');
    }

    public static function getActiveCustomPages()
    {
        return \App\Models\BusinessDirectoryCustomPage::active()->ordered()->get();
    }
}