@php $settingsService = app(\App\Services\SettingsService::class); $siteName = $settingsService->get('site_name', config('app.name')); $siteDescription = $settingsService->get('site_description', 'A powerful content management system built with Laravel'); $contactEmail = $settingsService->get('contact_email', config('mail.from.address')); $contactPhone = $settingsService->get('contact_phone', '+123 (4567) 890'); $contactAddress = $settingsService->get('contact_address', '10th Street, 18 floor, Melbourne, Australia'); $logoSetting = $settingsService->get('primary_logo') ?: $settingsService->get('logo_url'); $logo = $logoSetting ? asset('storage/' . $logoSetting) : asset('frontend/images/logo/ndarama-logo.svg'); $logoLight = $logoSetting ? asset('storage/' . $logoSetting) : asset('frontend/images/logo/ndarama-logo.svg'); $menuJson = $settingsService->get('frontend_menu'); $configuredMenu = is_string($menuJson) ? json_decode($menuJson, true) : $menuJson; $currentUrl = url()->current(); $normaliseMenu = function ($items) use (&$normaliseMenu, $currentUrl) { return collect(is_array($items) ? $items : []) ->filter(fn ($item) => is_array($item) && ($item['enabled'] ?? true) && !empty($item['label']) && !empty($item['href'])) ->sortBy(fn ($item) => (int) ($item['sort_order'] ?? 0)) ->map(function ($item) use ($normaliseMenu, $currentUrl) { $href = trim((string) $item['href']); $resolvedHref = $href === '#' ? '#' : (preg_match('/^(?:https?:|mailto:|tel:)/i', $href) ? $href : url('/' . ltrim($href, '/'))); $children = $normaliseMenu($item['children'] ?? []); return [ 'label' => trim((string) $item['label']), 'href' => $resolvedHref, 'active' => $currentUrl === $resolvedHref || $children->contains('active', true), 'children' => $children, ]; }) ->values(); }; $frontendNavigation = $normaliseMenu($configuredMenu); if ($frontendNavigation->isNotEmpty() && !$frontendNavigation->contains(fn ($item) => rtrim((string) $item['href'], '/') === rtrim(route('frontend.events.index'), '/'))) { $frontendNavigation->push([ 'label' => 'Events', 'href' => route('frontend.events.index'), 'active' => request()->routeIs('frontend.events.*'), 'children' => collect(), ]); } if ($frontendNavigation->isEmpty()) { $defaultMenuItems = [ [ 'label' => 'Home', 'href' => route('home'), 'active' => request()->routeIs('home'), 'children' => collect(), ], [ 'label' => 'Pages', 'href' => '#', 'active' => request()->routeIs('frontend.about', 'frontend.teams.*', 'frontend.departments.*', 'frontend.galleries.*', 'frontend.documents.*', 'frontend.faq', 'frontend.privacy', 'frontend.terms'), 'children' => collect([ ['label' => 'About Us', 'href' => route('frontend.about'), 'active' => request()->routeIs('frontend.about'), 'children' => collect()], ['label' => 'Departments', 'href' => route('frontend.departments.index'), 'active' => request()->routeIs('frontend.departments.*'), 'children' => collect()], ['label' => 'Our Team', 'href' => route('frontend.teams.index'), 'active' => request()->routeIs('frontend.teams.*'), 'children' => collect()], ['label' => 'Gallery', 'href' => route('frontend.galleries.index'), 'active' => request()->routeIs('frontend.galleries.*'), 'children' => collect()], ['label' => 'Documents', 'href' => route('frontend.documents.index'), 'active' => request()->routeIs('frontend.documents.*'), 'children' => collect()], ['label' => 'FAQ', 'href' => route('frontend.faq'), 'active' => request()->routeIs('frontend.faq'), 'children' => collect()], ]), ], [ 'label' => 'Services', 'href' => route('frontend.services.index'), 'active' => request()->routeIs('frontend.services.*'), 'children' => \App\Models\Service::active() ->orderBy('sort_order') ->orderBy('name') ->take(6) ->get(['name', 'slug']) ->map(fn ($service) => [ 'label' => $service->name, 'href' => route('frontend.services.show', $service), 'active' => request()->routeIs('frontend.services.show') && request()->route('service')?->is($service), 'children' => collect(), ]), ], [ 'label' => 'Portfolio', 'href' => route('frontend.projects.index'), 'active' => request()->routeIs('frontend.projects.*'), 'children' => collect(), ], [ 'label' => 'Events', 'href' => route('frontend.events.index'), 'active' => request()->routeIs('frontend.events.*'), 'children' => collect(), ], [ 'label' => 'Blog', 'href' => route('frontend.news.index'), 'active' => request()->routeIs('frontend.news.*'), 'children' => collect(), ], ]; $defaultMenuItems[] = [ 'label' => 'Contact', 'href' => route('frontend.contact'), 'active' => request()->routeIs('frontend.contact'), 'children' => collect(), ]; $frontendNavigation = collect($defaultMenuItems); } $socialLinks = [ 'facebook_url' => ['icon' => 'fa-brands fa-facebook-f', 'label' => 'Facebook'], 'twitter_url' => ['icon' => 'fa-brands fa-x-twitter', 'label' => 'X'], 'linkedin_url' => ['icon' => 'fa-brands fa-linkedin-in', 'label' => 'LinkedIn'], 'instagram_url' => ['icon' => 'fa-brands fa-instagram', 'label' => 'Instagram'], ]; @endphp
x

Browse updates by category and tags on our News page.

Go to NewsGo to News