-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add Footer component. * Refactored footer.blade.php to dynamically display social media links and legal links based on the current route.
- Loading branch information
1 parent
8192fac
commit f11f3f6
Showing
24 changed files
with
401 additions
and
85 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
8 changes: 5 additions & 3 deletions
8
resources/views/components/desktop/desktop-dropdown-button.blade.php
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,8 @@ | ||
<button class="flex items-center text-sm leading-5 font-medium hover:text-gray-400 focus:outline-none transition ease-in-out duration-150 uppercase"> | ||
<div class="{{ Navigation::isDropdownRouteActive($links) ? 'border-prime-400' : 'border-transparent' }} border-b-2 hover:border-gray-300 hover:border-b-2 py-2"> | ||
<button | ||
class="flex items-center text-sm leading-5 font-medium hover:text-gray-400 focus:outline-none transition ease-in-out duration-150 uppercase"> | ||
<div | ||
class="{{ Navigation::isDropdownRouteActive($links) ? 'border-prime-400' : 'border-transparent' }} border-b-2 hover:border-gray-300 hover:border-b-2 py-2"> | ||
{{ $name }} | ||
</div> | ||
<x-navigation::dropdown-icon /> | ||
<x-navigation::dropdown-icon/> | ||
</button> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
8 changes: 5 additions & 3 deletions
8
resources/views/components/desktop/desktop-navigation.blade.php
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
11 changes: 11 additions & 0 deletions
11
resources/views/components/footer/footer-navigation-link.blade.php
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
@props(['active']) | ||
|
||
@php | ||
$classes = ($active ?? false) | ||
? 'text-sm font-medium leading-5 hover:text-gray-400 underline underline-2 underline-offset-8 decoration-prime-400 hover:decoration-gray-300 focus:outline-none focus:text-gray-700 transition duration-150 ease-in-out py-2 uppercase' | ||
: 'text-sm font-medium leading-5 hover:text-gray-400 hover:underline hover:underline-2 hover:underline-offset-8 hover:decoration-gray-300 focus:outline-none focus:text-gray-700 transition duration-150 ease-in-out py-2 uppercase'; | ||
@endphp | ||
|
||
<a {{ $attributes->merge(['class' => $classes]) }}> | ||
{{ $slot }} | ||
</a> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,153 @@ | ||
<div> | ||
@php | ||
/* social media accounts */ | ||
if (config('businessinfo.social_media') !== null) { | ||
$socialMedia = config('businessinfo.social_media'); | ||
} | ||
$logoShape = Navigation::getLogoShape(); | ||
$logoClasses = ''; | ||
if ($logoShape === 'horizontal') { | ||
$logoClasses = 'mx-auto w-64 lg:w-72'; | ||
} elseif ($logoShape === 'vertical') { | ||
$logoClasses = 'mx-auto w-32 lg:w-48'; | ||
} elseif ($logoShape === 'square') { | ||
$logoClasses = 'mx-auto w-48 lg:w-64'; | ||
} | ||
@endphp | ||
|
||
<footer class="bg-footer-back"> | ||
<!-- this is important --> | ||
<div class="mx-auto max-w-waistline px-4 pb-6 pt-16 sm:px-6 lg:px-3 lg:pt-24"> | ||
<div class="grid grid-cols-1 gap-8 lg:grid-cols-2"> | ||
<div> | ||
<div class="flex justify-start text-footer-type"> | ||
@if (Navigation::isLogoSwapEnabled() && Navigation::isTransparentNavBackground()) | ||
<img | ||
{{ glide()->src(Navigation::getTransparencyLogo()) }} | ||
class="{{ $logoClasses }}" | ||
alt="{{ config('app.name') }}" | ||
/> | ||
@else | ||
<img | ||
{{ glide()->src(Navigation::getDefaultLogo()) }} | ||
class="{{ $logoClasses }}" | ||
alt="{{ config('app.name') }}" | ||
/> | ||
@endif | ||
</div> | ||
|
||
<div class="mx-auto flex justify-center gap-x-9 pt-16 lg:pt-8"> | ||
@isset($socialMedia) | ||
<x-navigation::social.youtube :socialMedia="$socialMedia['youtube']" /> | ||
<x-navigation::social.facebook :socialMedia="$socialMedia['facebook']" /> | ||
<x-navigation::social.instagram :socialMedia="$socialMedia['instagram']" /> | ||
<x-navigation::social.xitter :socialMedia="$socialMedia['xitter']" /> | ||
<x-navigation::social.linkedin :socialMedia="$socialMedia['linkedin']" /> | ||
<x-navigation::social.tiktok :socialMedia="$socialMedia['tiktok']" /> | ||
@endisset | ||
</div> | ||
</div> | ||
|
||
<div> | ||
<p class="mx-auto mt-4 max-w-md text-center leading-relaxed text-footer-type"> | ||
@if (config('businessinfo.elevator-pitch') !== null) | ||
{{ config('businessinfo.elevator-pitch') }} | ||
@endif | ||
</p> | ||
|
||
<div class="flex"> | ||
<div | ||
class="mx-auto flex flex-col justify-center gap-6 pt-6 md:flex-row lg:flex-col xl:flex-row" | ||
> | ||
<x-navigation::free-estimate-button /> | ||
<x-navigation::phone-button /> | ||
</div> | ||
</div> | ||
</div> | ||
</div> | ||
|
||
<div | ||
class="flex flex-col justify-center md:flex-row md:justify-between md:flex-wrap py-6 md:py-12 text-footer-type gap-8"> | ||
<!-- Column 1: Menu (Non-Dropdown Links) --> | ||
<div class="flex flex-col items-center md:items-start"> | ||
<p class="font-bold text-xl mt-8 mb-4 md:my-4 pb-2 border-b border-gray-400/75">{{ __('Menu') }}</p> | ||
@foreach (Navigation::getNavigationItems() as $item) | ||
@if ($item['type'] === 'link') | ||
<!-- Non-Dropdown Links --> | ||
<x-navigation::footer.footer-navigation-link :href="route($item['route'])" | ||
:active="request()->routeIs($item['route'])"> | ||
{{ __($item['name']) }} | ||
</x-navigation::footer.footer-navigation-link> | ||
@endif | ||
@endforeach | ||
</div> | ||
|
||
@foreach (Navigation::getNavigationItems() as $item) | ||
<!-- Render Dropdowns (e.g., Locations, Services) --> | ||
@if ($item['type'] === 'dropdown') | ||
<div class="flex flex-col items-center md:items-start"> | ||
<p class="font-bold text-xl mt-8 mb-4 md:my-4 pb-2 border-b border-gray-400/75">{{ __($item['name']) }}</p> | ||
@foreach ($item['links'] as $link) | ||
<x-navigation::footer.footer-navigation-link :href="route($link['route'])" | ||
:active="request()->routeIs($link['route'])"> | ||
{{ __($link['name']) }} | ||
</x-navigation::footer.footer-navigation-link> | ||
@endforeach | ||
</div> | ||
@endif | ||
@endforeach | ||
</div> | ||
|
||
<div class="mt-6 border-t border-legal-type pt-6"> | ||
<div class="text-center sm:flex sm:justify-between sm:text-left text-gray-400/75"> | ||
<p class="text-sm text-legal-type"> | ||
<span class="block sm:inline text-gray-400/75"> | ||
All rights reserved | ||
<span>·</span> | ||
</span> | ||
|
||
@if(Route::is('terms-and-conditions')) | ||
<a class="inline-block text-legal-link underline transition hover:text-legal-link/75" | ||
href="{{ route('terms-and-conditions') }}" | ||
title="Terms & Conditions" | ||
> | ||
Terms & Conditions | ||
</a> | ||
|
||
<span>·</span> | ||
@endif | ||
|
||
@if(Route::is('privacy-policy')) | ||
<a class="inline-block text-legal-link underline transition hover:text-legal-link/75" | ||
href="{{ route('privacy-policy') }}" | ||
title="Privacy Policy" | ||
> | ||
Privacy Policy | ||
</a> | ||
|
||
<span>·</span> | ||
@endif | ||
|
||
|
||
@if(Route::is('sitemap')) | ||
<a class="inline-block text-legal-link underline transition hover:text-legal-link/75" | ||
href="{{ route('sitemap') }}" | ||
title="Sitemap" | ||
> | ||
Sitemap | ||
</a> | ||
@endif | ||
</p> | ||
|
||
<p class="mt-4 text-sm sm:order-first sm:mt-0"> | ||
© {{ date('Y') }} | ||
@if (config('businessinfo.legal-name') !== null) | ||
{{ config('businessinfo.legal-name') }} | ||
@endif | ||
</p> | ||
</div> | ||
</div> | ||
</div> | ||
</footer> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,11 @@ | ||
<button @click="open = !open" onclick="Livewire.dispatch('openModal')" class="font-brand flex rounded-md bg-alt px-2 py-2 text-md md:text-lg font-bold text-white hover:bg-cta hover:text-black break-keep text-nowrap"> | ||
<button @click="open = !open" onclick="Livewire.dispatch('openModal')" | ||
class="font-brand flex rounded-md bg-alt px-2 py-2 text-md md:text-lg font-bold text-white hover:bg-cta hover:text-black break-keep text-nowrap"> | ||
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" | ||
class="my-auto mr-2" | ||
height="1.2em" | ||
viewBox="0 0 384 512"><path d="M145.5 68c5.3-20.7 24.1-36 46.5-36s41.2 15.3 46.5 36l3.1 12H254h34v48H192 96V80h34 12.4l3.1-12zM192 0c-32.8 0-61 19.8-73.3 48H80 64V64 80H32 0v32V480v32H32 352h32V480 112 80H352 320V64 48H304 265.3C253 19.8 224.8 0 192 0zM320 144V112h32V480H32V112H64v32 16H80 192 304h16V144zM208 80a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm91.3 171.3L310.6 240 288 217.4l-11.3 11.3L160 345.4l-52.7-52.7L96 281.4 73.4 304l11.3 11.3 64 64L160 390.6l11.3-11.3 128-128z"/> | ||
viewBox="0 0 384 512"> | ||
<path | ||
d="M145.5 68c5.3-20.7 24.1-36 46.5-36s41.2 15.3 46.5 36l3.1 12H254h34v48H192 96V80h34 12.4l3.1-12zM192 0c-32.8 0-61 19.8-73.3 48H80 64V64 80H32 0v32V480v32H32 352h32V480 112 80H352 320V64 48H304 265.3C253 19.8 224.8 0 192 0zM320 144V112h32V480H32V112H64v32 16H80 192 304h16V144zM208 80a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm91.3 171.3L310.6 240 288 217.4l-11.3 11.3L160 345.4l-52.7-52.7L96 281.4 73.4 304l11.3 11.3 64 64L160 390.6l11.3-11.3 128-128z"/> | ||
</svg> | ||
Free Estimate | ||
</button> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,9 @@ | ||
<button @click="dropdownOpen = !dropdownOpen" class="inline-flex items-center justify-center rounded-standard text-gray-900 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 focus:text-gray-500 transition duration-150 ease-in-out"> | ||
<button @click="dropdownOpen = !dropdownOpen" | ||
class="inline-flex items-center justify-center rounded-standard text-gray-900 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 focus:text-gray-500 transition duration-150 ease-in-out"> | ||
<svg class="h-9 w-9" stroke="currentColor" fill="none" viewBox="0 0 24 24"> | ||
<path :class="{'hidden': dropdownOpen, 'inline-flex': ! dropdownOpen }" class="inline-flex" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16" /> | ||
<path :class="{'hidden': !dropdownOpen, 'inline-flex': dropdownOpen }" class="hidden" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" /> | ||
<path :class="{'hidden': dropdownOpen, 'inline-flex': ! dropdownOpen }" class="inline-flex" | ||
stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16"/> | ||
<path :class="{'hidden': !dropdownOpen, 'inline-flex': dropdownOpen }" class="hidden" stroke-linecap="round" | ||
stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"/> | ||
</svg> | ||
</button> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.