{"id":2690,"date":"2024-04-18T19:32:53","date_gmt":"2024-04-18T19:32:53","guid":{"rendered":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/?post_type=avada_portfolio&#038;p=2690"},"modified":"2025-03-31T17:32:50","modified_gmt":"2025-03-31T17:32:50","slug":"lafayette-parish","status":"publish","type":"avada_portfolio","link":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/portfolio-items\/lafayette-parish\/","title":{"rendered":"Lafayette Parish LA"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--link_hover_color: #434549;--link_color: #141617;--awb-border-sizes-top:0px;--awb-border-sizes-bottom:0px;--awb-border-sizes-left:0px;--awb-border-sizes-right:0px;--awb-border-color:#fcf4ec;--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:19px;--awb-padding-right:30px;--awb-padding-bottom:0px;--awb-padding-left:30px;--awb-padding-top-small:60px;--awb-padding-bottom-small:60px;--awb-margin-top:-50px;--awb-margin-bottom:0px;--awb-background-color:#fcf4ec;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"max-width:calc( 1170px + 100px );margin-left: calc(-100px \/ 2 );margin-right: calc(-100px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column fusion-animated\" style=\"--awb-padding-right:58px;--awb-padding-left:55px;--awb-padding-right-small:2px;--awb-padding-left-small:0px;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:0px;--awb-margin-bottom-large:16px;--awb-spacing-left-large:0px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:0px;--awb-spacing-left-medium:0px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:50px;--awb-margin-bottom-small:44px;--awb-spacing-left-small:50px;\" data-animationType=\"fadeInUp\" data-animationDuration=\"1.3\" data-animationOffset=\"top-into-view\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div ><a class=\"fusion-button button-3d button-large button-custom fusion-button-default button-1 fusion-button-default-span \" style=\"--button_bevel_color:var(--awb-color5);--button_bevel_color_hover:var(--awb-custom_color_12);--button_accent_color:var(--awb-color2);--button_border_color:var(--awb-color2);--button_accent_hover_color:var(--awb-color1);--button_border_hover_color:var(--awb-color1);--button_gradient_top_color:var(--awb-custom_color_4);--button_gradient_bottom_color:var(--awb-custom_color_4);--button_gradient_top_color_hover:var(--awb-custom_color_6);--button_gradient_bottom_color_hover:var(--awb-custom_color_6);\" target=\"_self\" data-hover=\"text_slide_up\" href=\"#yelp\"><span class=\"fusion-button-icon-divider button-icon-divider-left\"><i class=\"fa-yelp fab awb-button__icon awb-button__icon--default\" aria-hidden=\"true\"><\/i><\/span><div class=\"awb-button-text-transition \"><span class=\"fusion-button-text awb-button__text awb-button__text--default fusion-button-text-left\">Local Yelp Search<\/span><span class=\"fusion-button-text awb-button__text awb-button__text--default fusion-button-text-left\">Local Yelp Search<\/span><\/div><\/a><\/div><div class=\"fusion-title title fusion-title-1 fusion-title-center fusion-title-text fusion-title-size-one\" style=\"--awb-text-color:#141617;--awb-margin-top:2px;--awb-margin-bottom:-50px;--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:-20px;--awb-margin-left-small:0px;--awb-sep-color:#fcf4ec;--awb-font-size:65px;\"><div class=\"title-sep-container title-sep-container-left\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:#fcf4ec;\"><\/div><\/div><span class=\"awb-title-spacer\"><\/span><h1 class=\"fusion-title-heading title-heading-center\" style=\"font-family:&quot;Unna&quot;;font-style:normal;font-weight:400;margin:0;text-transform:var(--awb-typography1-text-transform);font-size:1em;line-height:1.2;\"><h2 class=\"fusion-title-heading title-heading-left fusion-live-editable fusion-responsive-typography-calculated medium-editor-element\" role=\"textbox\" contenteditable=\"true\" spellcheck=\"true\" data-inline-parent-cid=\"10\" data-inline-override-color=\"text_color\" data-inline-override-font-size=\"font_size\" data-inline-override-line-height=\"line_height\" data-inline-override-letter-spacing=\"letter_spacing\" data-inline-override-tag=\"size\" data-toolbar=\"full\" data-param=\"element_content\" data-fontsize=\"26\" data-lineheight=\"28.8667px\" data-medium-editor-element=\"true\" aria-multiline=\"true\" data-medium-editor-editor-index=\"1\" data-placeholder=\"Your Content Goes Here\" data-medium-focused=\"true\"><strong><b>Lafayette Parish, LA<\/b><\/strong><\/h2><\/h1><span class=\"awb-title-spacer\"><\/span><div class=\"title-sep-container title-sep-container-right\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:#fcf4ec;\"><\/div><\/div><\/div><div class=\"fusion-text fusion-text-1 fusion-text-no-margin\" style=\"--awb-content-alignment:center;--awb-font-size:15px;--awb-line-height:24px;--awb-letter-spacing:0px;--awb-text-transform:var(--awb-typography4-text-transform);--awb-text-color:#141617;--awb-margin-right:0px;--awb-margin-bottom:0px;--awb-margin-left:0px;--awb-text-font-family:&quot;Montserrat&quot;;--awb-text-font-style:normal;--awb-text-font-weight:400;\"><p style=\"text-align: left;\">With a vibrant culture, rich history, and a warm community spirit, this area offers an exceptional quality of life. Residents enjoy a mix of small-town charm and modern conveniences, with lively festivals, delicious Cajun cuisine, and a thriving arts scene creating an energetic atmosphere. Outdoor enthusiasts can explore scenic parks, bayous, and nature trails, while families appreciate top-rated schools and friendly neighborhoods. The cost of living is reasonable, and job opportunities continue to grow in healthcare, education, and technology. Whether savoring live Zydeco music, indulging in fresh seafood, or simply soaking up the welcoming Southern hospitality, life here is both exciting and fulfilling.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_1_1 1_1 fusion-flex-column fusion-animated\" style=\"--awb-padding-right:37px;--awb-padding-left:8px;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:calc( 0.051 * calc( 100% - 100px ) );--awb-margin-bottom-large:80px;--awb-spacing-left-large:50px;--awb-width-medium:33.333333333333%;--awb-order-medium:0;--awb-spacing-right-medium:calc( 0.153 * calc( 100% - 100px ) );--awb-spacing-left-medium:50px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:50px;--awb-margin-bottom-small:40px;--awb-spacing-left-small:50px;\" data-animationType=\"fadeInUp\" data-animationDuration=\"1.3\" data-animationOffset=\"top-into-view\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-2\"><p><a href=\"https:\/\/www.cityofbroussard.com\"><strong><b>Broussard<\/b><\/strong><\/a><br \/>Offering a perfect blend of small-town charm and modern conveniences, this community provides a high quality of life with a welcoming and family-friendly atmosphere. Residents enjoy a thriving local economy, excellent schools, and a variety of outdoor recreational opportunities, from scenic parks to golf courses. The area embraces its Cajun heritage with vibrant festivals, delicious cuisine, and a strong sense of community, making it a lively and enriching place to call home. With growing business opportunities, convenient access to nearby cities, and a relaxed pace of life, it\u2019s an ideal spot for families, professionals, and retirees looking for a place to settle down.<\/p>\n<p><a href=\"https:\/\/carencro.org\"><strong><b>Carencaro<\/b><\/strong><\/a><br \/>Embracing a warm, small-town atmosphere with a strong sense of community, this area offers a relaxed yet vibrant lifestyle. Residents enjoy a blend of peaceful country living and convenient access to nearby cities, making it ideal for families and individuals seeking both tranquility and opportunity. The local culture is rich with Cajun traditions, celebrated through food, music, and festivals that bring neighbors together. Outdoor enthusiasts appreciate the scenic landscapes, open spaces, and recreational activities, while excellent schools and growing local businesses contribute to a well-rounded quality of life. With friendly faces and a welcoming spirit, it\u2019s a place where people truly feel at home.<\/p>\n<p><a href=\"http:\/\/townofduson.com\"><strong><b>Duson<\/b><\/strong><\/a><br \/>With a charming rural atmosphere and a strong sense of community, this town offers a peaceful and family-friendly lifestyle. Residents enjoy a slower pace of life while still having easy access to larger cities for work and entertainment. The area is rich in Cajun culture, with local festivals, delicious food, and welcoming neighbors who make everyone feel at home. Outdoor activities, open spaces, and small businesses contribute to a close-knit environment where people look out for one another. Affordable living, good schools, and a relaxed way of life make it an ideal place for those seeking comfort, tradition, and community spirit.<\/p>\n<p><a href=\"https:\/\/www.lafayettela.gov\"><strong><b>Lafayette<\/b><\/strong><\/a><br \/>With a vibrant mix of culture, cuisine, and community, this city offers an energetic and welcoming lifestyle. Known as the heart of Cajun and Creole heritage, it boasts lively music, world-class festivals, and a food scene that attracts visitors from all over. Residents enjoy a strong sense of local pride, with friendly neighborhoods, top-rated schools, and plenty of outdoor activities, from scenic bayous to well-maintained parks. A growing economy in healthcare, education, and technology provides ample job opportunities, while the cost of living remains affordable. Whether embracing the excitement of a festival, dining on fresh seafood, or enjoying the warmth of Southern hospitality, life here is both fulfilling and full of charm.<\/p>\n<p><a href=\"https:\/\/www.cityofscott.org\"><strong><b>Scott<\/b><\/strong><\/a><br \/>Offering a perfect balance of small-town charm and modern convenience, this community is known for its welcoming atmosphere and rich Cajun heritage. Residents enjoy a relaxed lifestyle with easy access to local festivals, delicious cuisine, and a strong sense of community. With well-kept parks, family-friendly neighborhoods, and a growing economy, it provides a great environment for families, professionals, and retirees alike. The town takes pride in its local businesses, thriving food scene, and cultural traditions, making everyday life both enjoyable and fulfilling. Its proximity to larger cities ensures that residents have access to everything they need while still enjoying a peaceful, hometown feel.<\/p>\n<p><a href=\"https:\/\/www.youngsville.us\"><strong><b>Youngsville<\/b><\/strong><\/a><br \/>Combining modern growth with small-town charm, this community offers a high quality of life with excellent schools, beautiful parks, and a welcoming atmosphere. Residents enjoy a family-friendly environment with top-notch recreational facilities, thriving local businesses, and a strong sense of community. The area hosts lively events and embraces its Cajun culture through food, music, and traditions. With a growing economy, safe neighborhoods, and convenient access to nearby cities, it provides the perfect balance of tranquility and opportunity. Whether enjoying outdoor activities, dining at local restaurants, or attending community events, life here is both vibrant and fulfilling.<\/p>\n<\/div><\/div><\/div><\/div><\/div><div id=\"yelp\" class=\"fusion-container-anchor\"><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:26px;--awb-flex-wrap:wrap;--awb-flex-wrap-small:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1216.8px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:20px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-2 fusion-title-center fusion-title-text fusion-title-size-one\" style=\"--awb-text-color:var(--awb-custom_color_4);--awb-margin-bottom:-10px;--awb-margin-top-small:0px;--awb-margin-right-small:0px;--awb-margin-bottom-small:20px;--awb-margin-left-small:0px;\"><div class=\"title-sep-container title-sep-container-left\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:var(--awb-color3);\"><\/div><\/div><span class=\"awb-title-spacer\"><\/span><h1 class=\"fusion-title-heading title-heading-center\" style=\"margin:0;\"><h1 style=\"text-align: center;\">Local Activities &amp; Information<\/h1><\/h1><span class=\"awb-title-spacer\"><\/span><div class=\"title-sep-container title-sep-container-right\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:var(--awb-color3);\"><\/div><\/div><\/div><div class=\"fusion-text fusion-text-3\"><p style=\"text-align: center;\"><span style=\"color: var(--awb-custom_color_5);\">Use the search box below to find listings on anything from Restaurants and Coffee Shops, to Grocery Stores, Schools and much more.<br \/>\nThe <\/span><b style=\"color: var(--awb-custom_color_5);\">More<\/b><span style=\"color: var(--awb-custom_color_5);\"> menu will give you some options as well. <\/span><\/p>\n<\/div><!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>Yelp Store Locator<\/title>\n<style>\nbody {\n    font-family: Arial, sans-serif;\n    margin: 0;\n    padding: 0;\n    background: #f8f8f8; \/* Slight grey background *\/\n}\n\n\/* Flex container for the whole page content *\/\n.form-wrapper {\n    display: flex;\n    justify-content: space-around; \/* Evenly distribute space around items *\/\n    flex-wrap: wrap; \/* Allow items to wrap if not enough space *\/\n    margin: 20px;\n}\n\n\/* Search form and results container *\/\n.form-wrapper .form-container {\n    flex-basis: 47%;\n    margin-bottom: 20px;\n}\n\n\/* Search bar at the top *\/\n.search-top {\n    margin-top: 20px;\n}\n.search-bar {\n    max-width: 1024px;\n    padding:0 20px;\n    padding: 10px;\n    border-radius: 4px;\n    margin: 0 auto 20px;\n}\n.search-bar #searchForm {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    box-shadow: rgba(0,0,0,0.15) 0px 2px 18px 0px;\n}\n.search-field {\n    flex: 1;\n}\n.search-field.desc {\n    position: relative;\n}\n.search-field.desc::after {\n    content: '';\n    position: absolute;\n    top: 10px;\n    bottom: 10px;\n    right: 0;\n    width: 2px;\n    background-color: rgba(0, 0, 0, 0.2);\n}\n#searchForm .search-field input {\n    border: 0;\n  \n}\n.search-field.category-dropdown select {\n    width: auto;\n    background: transparent;\n    margin-top:15px;\n}\n.search-field input[type=\"text\"],\n.search-field select {\n    width: 100%; \/* Full width of parent *\/\n    padding: 15px 10px;\n    border: 1px solid #ddd;\n    font-size: 14px;\n    box-sizing: border-box;\n}\n\n\/* Search button styling *\/\n.search-button button {\n    padding: 17px 20px;\n    background-color: #ff0000; \/* Yelp red *\/\n    color: #fff;\n    border: none;\n    border-radius: 4px;\n    cursor: pointer;\n    text-transform: uppercase;\n    font-weight: bold;\n}\n\n\/* Style the pagination buttons *\/\n.pagination{\n    border-top: 1px solid #e3d8d8;\n    padding: 15px 0;\n    margin-top: 20px;\n    border-bottom: 1px solid #e3d8d8;\n}\n\n\n.pagination button {\n    background: none;\n    padding: 5px 10px;\n    border-radius: 4px;\n    margin-right: 5px;\n    border: none;\n    cursor: pointer;\n    font-size: 16px;\n}\n\n.pagination button.active,\n.pagination button:hover {\n    font-weight: bold;\n}\n\n\/* Map container styling *\/\n#map {\n    flex: 1;\n    height: 700px; \/* Adjusted height for consistency *\/\n    border-radius: 4px; \/* Rounded corners *\/\n    overflow: hidden; \/* Clip the content *\/\n    margin-left: 20px; \/* Space from the form container *\/\n}\n\n\/* Search results card styles *\/\n.card {\n    display: flex;\n    background: #fff;\n    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n    border-radius: 4px;\n    overflow: hidden;\n    align-items: center;\n    padding: 0 15px;\n    border-bottom: 1px solid #eee;\n}\n\n.card img {\n    width: 200px; \/* Slightly smaller images *\/\n    height: 200px;\n    object-fit: cover;\n}\n\n.card-content {\n    padding: 15px;\n    flex-grow: 1;\n}\n\n\/* Loader style adjustments *\/\n#loader {\n    display: none; \/* Hide by default, show when loading *\/\n    position: fixed; \/* Or absolute, depending on use-case *\/\n    top: 50%;\n    left: 50%;\n    transform: translate(-50%, -50%);\n    text-align: center;\n}\n\n#loader img {\n    width: 50px; \/* Adjust as needed *\/\n    height: 50px; \/* Adjust as needed *\/\n    \/* Animation for spinning *\/\n    animation: spin 1s linear infinite;\n}\n\n\/* Loader animation *\/\n@keyframes spin {\n    0% { transform: translate(-50%, -50%) rotate(0deg); }\n    100% { transform: translate(-50%, -50%) rotate(360deg); }\n}\n\n@media (max-width: 768px) {\n    .form-wrapper {\n        flex-direction: column; \/* Stack on smaller screens *\/\n    }\n\n    .form-container,\n    #map {\n        width: 100%;\n        max-width: none;\n        margin-left: 0; \/* Remove margin for full width *\/\n    }\n\n    #map {\n        order: -1; \/* Map comes before search results on small screens *\/\n    }\n}\n\n\/* Add responsive design for very small screens *\/\n@media (max-width: 480px) {\n    .search-bar {\n        flex-direction: column; \/* Stack form fields vertically *\/\n    }\n\n    .search-field,\n    .search-button button {\n        width: 100%; \/* Full width for small screens *\/\n        margin: 5px 0; \/* Add space between stacked items *\/\n    }\n}\n\n\/* Style the dropdown button *\/\n.dropbtn {\n    background-color: transparent;\n    color: black;\n    padding: 16px;\n    font-size: 16px;\n    border: none;\n    cursor: pointer;\n}\n\n\/* The container <div> - needed to position the dropdown content *\/\n.dropdown {\n    position: relative;\n    display: inline-block;\n    margin: 10px 0;\n}\n\n\/* Dropdown Content (Hidden by Default) *\/\n.dropdown-content {\n    display: none;\n    position: absolute;\n    background-color: #f9f9f9;\n    min-width: 240px;\n    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);\n    z-index: 1;\n    gap: 20px;\n    padding: 0 10px;\n}\n\n\/* Links inside the dropdown *\/\n.dropdown-content span {\n    color: black;\n    padding: 16px 0;\n    text-decoration: none;\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n}\n\n.dropdown-content .flex-links{\n        padding: 12px 0\n}\n\n\/* Icon styling *\/\n.icon {\n    margin-right: 10px;\n    \/* You can use SVGs or Font Icons like FontAwesome, or background-image with sprites *\/\n}\n\n\/* Change color of dropdown links on hover *\/\n.dropdown-content span:hover {background-color: #ddd;}\n\n\/* Show the dropdown menu on hover *\/\n.dropdown:hover .dropdown-content {\n    \/* display: block; *\/\n    display: flex;\n}\n\n\/* Show the dropdown menu on focus *\/\n.dropdown:focus-within .dropdown-content {\n    display: block;\n}\n\n\/* Other styles for icons can be added here, using the specific class names *\/\n.dry-cleaning-icon {\n    \/* Add background-image or other styling for the dry cleaning icon *\/\n}\n\n.pagination, #loader {\n    display: none; \/* Hidden by default *\/\n}\n\n.autocomplete-results {\n    display: none;\n    position: absolute;\n    background: white;\n    border: 1px solid #ddd;\n    border-top: none;\n    z-index: 2;\n    width: 100%;\n    box-sizing: border-box;\n}\n\n.autocomplete-suggestion {\n    padding: 10px;\n    border-bottom: 1px solid #ddd;\n    cursor: pointer;\n}\n\n.autocomplete-suggestion:last-child {\n    border-bottom: none;\n}\n\n.autocomplete-suggestion:hover {\n    background-color: #f8f8f8;\n}\n\n\n\/* Similarly add specific icon styles for other menu items *\/\n<\/style>\n<\/head>\n<body>\n<div class=\"search-top\">\n    <div class=\"search-bar\">\n        <form id=\"searchForm\" action=\"\/yelp-store-locator\" method=\"get\">\n            <div class=\"search-field desc\">\n                <input type=\"text\" id=\"searchDescription\" name=\"searchDescription\" placeholder=\"Search description\">\n                <div id=\"autocomplete-results\" class=\"autocomplete-results\"><\/div>\n            <\/div>\n            \n            <div class=\"search-field location\">\n                <input type=\"text\" id=\"locationQuery\" name=\"location\" placeholder=\"Enter search location\" value=\"Lafayette Parish, LA\" required>\n            <\/div>\n            <div class=\"search-button\">\n                <button type=\"submit\">Search<\/button>\n            <\/div>\n        <\/form>\n\n        <div class=\"dropdown\">\n            <span class=\"dropbtn\">More \u25bc<\/span>\n            <div class=\"dropdown-content\">\n                <div class=\"flex-links\">\n                    <span>\n                        <i class=\"icon dry-cleaning-icon\"><\/i> Restaurants\n                    <\/span>\n                    <span>\n                        <i class=\"icon hair-salons-icon\"><\/i> Coffee Shops\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Grocery Stores\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Nightlife\n                    <\/span>\n                <\/div>\n                <div class=\"flex-links\">\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Medical\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Activities\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Schools\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Hair Salon\n                    <\/span>\n                <\/div>\n                <!-- Add other menu items here -->\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n\n<div class=\"form-wrapper\">\n    <div class=\"form-container\">\n        <div id=\"searchResults\"><\/div>\n        <div class=\"pagination\"><\/div>\n    <\/div>\n    <!-- Map Container -->\n    <div id=\"map\"><\/div>\n<\/div>\n\n<!-- Loader HTML -->\n<!-- <div id=\"loader\">Loading...<\/div> -->\n<div id=\"loader\">\n    <img class=\"lazyload\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" data-orig-src=\"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-content\/plugins\/yelp-store-locator\/assets\/images\/loader.png\" alt=\"Loading...\" \/>\n<\/div>\n\n\n<script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js\"><\/script>\n<script>\n    $(document).ready(function () {\n        var yelpAutocompleteUrl = \"https:\/\/api.yelp.com\/v3\/autocomplete\";\n\n        $('#searchDescription').on('input', function() {\n            var searchText = $(this).val();\n        \n            \/\/ Make sure the search text is not empty\n            if (searchText.length > 0) {\n                $.ajax({\n                    url: '\/wp-content\/plugins\/yelp-store-locator\/proxy\/yelp-autocomplete-proxy.php',\n                    method: 'GET',\n                    data: {\n                        text: searchText \/\/ text entered by the user\n                    },\n                    success: function(data) {\n                        \/\/ Clear previous suggestions\n                        $('#autocomplete-results').empty();\n                        \n                        \/\/ Process the response and append suggestions\n                        if(data.terms && data.terms.length > 0) {\n                            data.terms.forEach(function(term) {\n                                $('#autocomplete-results').append('<div class=\"autocomplete-suggestion\">' + term.text + '<\/div>');\n                            });\n                            $('#autocomplete-results').show();\n                        }\n                    },\n                    error: function(jqXHR, textStatus, errorThrown) {\n                        console.error(\"Error with Autocomplete API:\", textStatus, errorThrown);\n                    }\n                });\n            } else {\n                \/\/ If the search text is empty, clear and hide suggestions\n                $('#autocomplete-results').empty().hide();\n            }\n        });\n\n        \/\/ Listener for clicking on an autocomplete suggestion\n        $('#autocomplete-results').on('click', '.autocomplete-suggestion', function() {\n            \/\/ Set the input to the clicked suggestion and hide suggestions\n            $('#searchDescription').val($(this).text());\n            $('#autocomplete-results').empty().hide();\n        });\n    \n        \/\/ Initially hide pagination and loader\n        $('.pagination').hide();\n        $('#loader').hide();\n\n        var map; \/\/ Declare map variable globally\n        var markers = []; \/\/ Array to store markers\n        var currentPage = 1;\n        var resultsPerPage = 5;\n        var totalResults = 0;\n\n        \/\/ Event handler for category selection\n        $('.dropdown-content span').on('click', function() {\n            \/\/ Get the text of the clicked category\n            var categoryText = $(this).text().trim();\n\n            \/\/ Set the value of the searchDescription input\n            $('#searchDescription').val(categoryText);\n\n            \/\/ Close the dropdown if needed\n            $('.dropdown-content').hide();\n\n            \/\/ Optionally, you could submit the form automatically after selection\n            \/\/ $('#searchForm').submit();\n        });\n\n        \/\/ Toggle dropdown content on click\n        $('.dropbtn').on('click', function() {\n            \/\/ Use slideToggle for a simple animation\n            $('.dropdown-content').slideToggle();\n        });\n\n        \/\/ Close the dropdown if clicked outside\n        $(document).on('click', function(e) {\n            if (!$(e.target).closest('.dropdown').length) {\n                $('.dropdown-content').hide();\n            }\n        });\n\n        \/\/ Populate search description initially\n        $('#searchDescription').val($('#category').find('option:selected').text());\n\n        \/\/ Update search description when category changes\n        $('#category').change(function() {\n            $('#searchDescription').val($(this).find('option:selected').text());\n        });\n\n        \/\/ Check if the location is provided and trigger search\n        if ($('#locationQuery').val() !== '') {\n            setTimeout(function() {\n                $('#searchForm').submit();\n            }, 500);\n        }\n\n        $('#searchForm').submit(function (event) {\n            event.preventDefault();\n            $('#loader').show(); \/\/ Show loader here when the search starts\n            $('.pagination').hide(); \/\/ Hide pagination during loading\n\n            var locationQuery = $('#locationQuery').val();\n            \/\/ Use the value from the search description input\n            var searchDescription = $('#searchDescription').val();\n            var apiUrl = 'https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-content\/plugins\/yelp-store-locator\/proxy\/proxy.php?location=' + encodeURIComponent(locationQuery) + '&term=' + encodeURIComponent(searchDescription);\n\n            \/\/ Hide search results and map\n            $('#searchResults').hide();\n            $('#map').hide();\n            \/\/ Show loader before making the API request\n            $('#loader').show();\n\n            fetch(apiUrl)\n            .then(response => {\n                if (!response.ok) {\n                    throw new Error('Network response was not ok');\n                }\n                return response.json(); \/\/ Parse JSON response\n            })\n            .then(data => {\n                if (data && data.businesses && data.businesses.length > 0) {\n                    $('.pagination').show();\n                } else {\n                    $('.pagination').hide();\n                }\n                $('#loader').hide(); \/\/ Hide loader after data is processed\n                \/\/ ...Display results...\n                totalResults = data.businesses.length;\n\n                \/\/ Clear previous search results\n                $('#searchResults').empty();\n\n                \/\/ Initialize map\n                map = new google.maps.Map(document.getElementById('map'), {\n                    center: { lat: 0, lng: 0 }, \/\/ Default center\n                    zoom: 12 \/\/ Default zoom level\n                });\n\n                \/\/ Clear previous markers\n                markers.forEach(marker => marker.setMap(null));\n                markers = [];\n\n                \/\/ Create a LatLngBounds object to encompass all markers\n                var bounds = new google.maps.LatLngBounds();\n\n                \/\/ Calculate pagination values\n                var startIndex = (currentPage - 1) * resultsPerPage;\n                var endIndex = startIndex + resultsPerPage;\n                endIndex = endIndex > totalResults ? totalResults : endIndex;\n\n                \/\/ Iterate over each business in the response data for the current page\n                for (var i = startIndex; i < endIndex; i++) {\n                    var business = data.businesses[i];\n\n                    \/\/ Create card element to display business information\n                    var cardHtml = '<div class=\"card\">';\n                    cardHtml += '<img class=\"lazyload\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" data-orig-src=\"' + business.image_url + '\" alt=\"' + business.name + '\">';\n                    cardHtml += '<div class=\"card-content\">';\n                    cardHtml += '<h3><a href=\"' + business.url + '\">' + business.name + '<\/a><\/h3>';\n                    cardHtml += '<p><strong>Rating:<\/strong> ' + business.rating + '<\/p>';\n                    cardHtml += '<p><strong>Review Count:<\/strong> ' + business.review_count + '<\/p>';\n                    if (business.categories.length > 0) {\n                        cardHtml += '<p><strong>Category:<\/strong> ' + business.categories[0].title + '<\/p>';\n                    }\n                    cardHtml += '<p><strong>Address:<\/strong> ' + business.location.address1 + ', ' + business.location.city + ', ' + business.location.state + ' ' + business.location.zip_code + '<\/p>';\n                    cardHtml += '<p><strong>Phone:<\/strong> ' + business.display_phone + '<\/p>';\n                    cardHtml += '<\/div><\/div>';\n\n                    \/\/ Append the card HTML to the searchResults div\n                    $('#searchResults').append(cardHtml);\n\n                    \/\/ Display coordinates if available\n                    if (business.coordinates) {\n                        \/\/ Add marker to the map for each business\n                        var marker = new google.maps.Marker({\n                            position: { lat: business.coordinates.latitude, lng: business.coordinates.longitude },\n                            map: map,\n                            title: business.name\n                        });\n\n                        markers.push(marker);\n\n                        \/\/ Extend the bounds to include the marker's position\n                        bounds.extend(marker.getPosition());\n                    }\n                }\n\n                \/\/ Adjust map bounds to fit all markers\n                map.fitBounds(bounds);\n\n                \/\/ Hide loader after request is completed\n                $('#loader').hide();\n                \/\/ Show search results and map\n                $('#searchResults').show();\n                $('#map').show();\n\n                \/\/ Generate pagination controls\n                generatePaginationControls();\n            })\n            .catch(error => {\n                console.error('There was a problem with the fetch operation:', error);\n\n                $('#loader').hide(); \/\/ Ensure to hide loader on error as well\n                $('.pagination').hide(); \/\/ Hide pagination if there's an error\n                \/\/ Show search results and map\n                $('#searchResults').show();\n                $('#map').show();\n            });\n        });\n\n        \/\/ Function to generate pagination controls\n        function generatePaginationControls() {\n            var totalPages = Math.ceil(totalResults \/ resultsPerPage);\n            $('.pagination').empty();\n\n            for (var i = 1; i <= totalPages; i++) {\n                var button = $('<button>').text(i);\n                if (i === currentPage) {\n                    button.addClass('active');\n                }\n                button.click(function() {\n                    currentPage = parseInt($(this).text());\n                    $('#searchForm').submit();\n                });\n                $('.pagination').append(button);\n            }\n        }\n    });\n<\/script>\n\n<!-- Include Google Maps JavaScript API with your API key -->\n<script async defer src=\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDdc1Kke8as6XyfJRAv1veZfIqxp-ioDMo&callback=initMap\"><\/script>\n\n<\/body>\n<\/html>\n<\/div><\/div><\/div><\/div><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":3182,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"portfolio_category":[47],"portfolio_skills":[],"portfolio_tags":[],"class_list":["post-2690","avada_portfolio","type-avada_portfolio","status-publish","format-standard","has-post-thumbnail","hentry","portfolio_category-la-county"],"_links":{"self":[{"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/avada_portfolio\/2690","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/avada_portfolio"}],"about":[{"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/types\/avada_portfolio"}],"author":[{"embeddable":true,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/comments?post=2690"}],"version-history":[{"count":12,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/avada_portfolio\/2690\/revisions"}],"predecessor-version":[{"id":3183,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/avada_portfolio\/2690\/revisions\/3183"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/media\/3182"}],"wp:attachment":[{"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/media?parent=2690"}],"wp:term":[{"taxonomy":"portfolio_category","embeddable":true,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/portfolio_category?post=2690"},{"taxonomy":"portfolio_skills","embeddable":true,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/portfolio_skills?post=2690"},{"taxonomy":"portfolio_tags","embeddable":true,"href":"https:\/\/sunraycityguide.com\/SouthernLA-Reve\/wp-json\/wp\/v2\/portfolio_tags?post=2690"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}