1<!DOCTYPE HTML> 2<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US"> 3<head> 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2, user-scalable=1"> 7 8 <!-- Preconnect --> 9 <link rel="preconnect" href="https://www.optimizecdn.com" crossorigin> 10 <link rel="preconnect" href="https://fonts.googleapis.com"> 11 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 12 <link rel="apple-touch-icon" href="/images/favicon_1.png"> 13 <link rel="icon" type="image/png" href="/images/favicon_1.png"> 14 15 <!-- Site Meta Data --> 16 <title>Aging Focused Professionals Website Blog Articles - Find Aging Focused Professionals Website Blog Articles</title> 17 <meta name="description" content="Find the best Aging Focused Professionals Website Blog Articles now. Discover the latest Website Blog Articles posted by Aging Focused Professionals near you."> 18 <meta name="keywords" content="Website Blog Article,Website Blog Articles,Aging Focused Professionals,Aging Focused Professionals,Aging Focused Professionals,Aging Focused Professionals Website Blog Articles"> 19 <meta name="robots" content="index, follow"> 20 21 <!-- Canonical URL --> 22 <link rel="canonical" href="https://www.answers4care.com/blog"> 23 <link rel="alternate" type="application/rss+xml" title="Answers 4 Care RSS Feed" href="https://www.answers4care.com/rss" /> 24 <link rel='next' href='https://www.answers4care.com/blog?page=2'> 25 26 <!-- Social Media Meta Data --> 27 <meta property="og:type" content="website"> 28 <meta property="og:url" content="https://www.answers4care.com/blog"> 29 <meta property="og:site_name" content="Answers 4 Care"> 30 <meta property="og:title" content="Latest Aging Focused Professionals Website Blog Articles Posted by Aging Focused Professionals."> 31 <meta property="og:description" content="Find the best Aging Focused Professionals Website Blog Articles now. The most recent Website Blog Articles posted by Aging Focused Professionals near you."> 32 <meta property="og:image" content="https://www.answers4care.com/images/Group-of-Older-People-Laughing-1280x853.jpg"> 33
33<script> 34 if (window.innerWidth <= 768 && !document.referrer) { 35 document.write('<div id="mobile-loading-message" aria-hidden="true" onwheel="event.preventDefault()" ontouchmove="event.preventDefault()" style="display:block;position:sticky;top:0;width:100vw;height:100vh;background:rgb(250, 250, 250);color:rgb(34, 34, 34);z-index:9999;font-family:Arial,sans-serif;font-size:16px;line-height:24px;padding-top:50px;text-align:center;touch-action:none;overscroll-behavior:none;pointer-events:auto;"><div style="width:24px;height:24px;border:3px solid rgba(99,111,124,0.2);border-top-color:rgb(99,111,124);border-radius:50%;animation:spin 1.5s linear infinite;margin:10px auto"></div><span class="text" role="status">Loading<br>Answers 4 Care</span></div><style>@keyframes spin{to{transform:rotate(360deg);}}</style>'); 36 setTimeout(function(){var p=document.getElementById('mobile-loading-message');if(p){p.style.display='none';p.classList.add('hidden-xs','hide');}},7500);} 37 </script>
37 38 39 <!-- Preload --> 40 <link rel="preload" as="style" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/css/critical-styles.pkgd.min.css?v=09.05.26" fetchpriority="high" crossorigin> 41 <link rel="preload" as="style" href="https://fonts.googleapis.com/css?family=Roboto:300,400,600,700,800,900|Poppins:300,400,600,700,800,900|Quicksand:300,400,600,700,800,900&display=swap" fetchpriority="high"> 42 43 <!-- Non-Critical Stylesheet - Render Before Critical Styles --> 44 <link rel="stylesheet" media="print" onload="this.onload=null;this.removeAttribute('media');" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/css/non-critical-styles.pkgd.min.css?v=3.3.0" crossorigin> 45 <noscript> 46 <link rel="stylesheet" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/css/non-critical-styles.pkgd.min.css" crossorigin> 47 </noscript> 48 49 <!-- Critical Stylesheet --> 50 <link rel="stylesheet" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/css/critical-styles.pkgd.min.css?v=09.05.26" crossorigin> 51 52 <!-- Google Fonts Stylesheet --> 53 <link rel="stylesheet" media="print" onload="this.onload=null;this.removeAttribute('media');" href="https://fonts.googleapis.com/css?family=Roboto:300,400,600,700,800,900|Poppins:300,400,600,700,800,900|Quicksand:300,400,600,700,800,900&display=swap"> 54 <noscript> 55 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,600,700,800,900|Poppins:300,400,600,700,800,900|Quicksand:300,400,600,700,800,900&display=swap"> 56 </noscript> 57 58 <!-- FontAwesome Stylesheet --> 59 <link rel="stylesheet" media="print" onload="this.onload=null;this.removeAttribute('media');" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/font-awesome/css/font-awesome.min.css" crossorigin> 60 <noscript> 61 <link rel="stylesheet" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/font-awesome/css/font-awesome.min.css" crossorigin> 62 </noscript> 63 64 <!-- Bootstrap Icons Stylesheet --> 65 <link rel="stylesheet" media="print" onload="this.onload=null;this.removeAttribute('media');" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/fonts/bootstrap-icons.min.css?v=1.13.1" crossorigin> 66 <noscript> 67 <link rel="stylesheet" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/fonts/bootstrap-icons.min.css?v=1.13.1" crossorigin> 68 </noscript> 69 70 <!-- Critical JavaScript --> 71
71<script src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/libraries/latest/jquery.min.js"></script>
71 72
72<script src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/libraries/latest/bootstrap.min.js"></script>
72 73
73<script> 74 /* jQuery.event.special.touchstart = { 75 setup: function( _, ns, handle ) { 76 this.addEventListener("touchstart", handle, { passive: !ns.includes("noPreventDefault") }); 77 } 78 }; */ 79 jQuery.event.special.touchmove = { 80 setup: function( _, ns, handle ) { 81 this.addEventListener("touchmove", handle, { passive: !ns.includes("noPreventDefault") }); 82 } 83 }; 84 jQuery.event.special.wheel = { 85 setup: function( _, ns, handle ){ 86 this.addEventListener("wheel", handle, { passive: true }); 87 } 88 }; 89 jQuery.event.special.mousewheel = { 90 setup: function( _, ns, handle ){ 91 this.addEventListener("mousewheel", handle, { passive: true }); 92 } 93 }; 94 </script>
94 95 96 <!-- Breadcrumb Position --> 97 <style>html.bc-relocate .container:has(> .breadcrumb):has(~ .hero_section_container) .breadcrumb{display:none!important;}html.bc-relocate .hero_section_container + .clearfix + .container::before{content:"";display:block;min-height:24px;}.hero_section_container + .clearfix + .container > .breadcrumb:first-child{position:relative;top:-24px;}</style> 98
98<script>document.documentElement.classList.add('bc-relocate');document.addEventListener('DOMContentLoaded',function(){var bc=document.querySelector('ol.breadcrumb'),hero=document.querySelector('.hero_section_container');if(bc&&hero){var t=hero.nextElementSibling;while(t&&!t.classList.contains('container'))t=t.nextElementSibling;if(t)t.insertBefore(bc,t.firstChild);}document.documentElement.classList.remove('bc-relocate');});</script>
98 99 100 101 <!-- Prefetch --> 102 <link rel="prefetch" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/jquery.lazy/1.7.9/jquery.lazy.min.js" as="script"> 103 <link rel="prefetch" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/websiteScripts.min.js?v=8.0.0" as="script"> 104 105 <!-- Custom Site-wide HEAD Content --><!-- Start of HubSpot Embed Code -->
106<script type="text/javascript" id="hs-script-loader" async defer src="//js-na2.hs-scripts.com/243542044.js"></script>
106 107<!-- End of HubSpot Embed Code --> 108</head> 109 110<body class="general-session"><!-- 111IMPORTANT: It is not recommended to customize this widget as it directly connects to fields in DESIGN SETTINGS. If new design settings are created and this widget is already customized, then the website will not be able to apply any new design setitngs. 112 113INSTEAD: If custom CSS rules are needed, add them directly into the DESIGN SETTINGS > CUSTOM CSS section. 114--> 115<style> 116 .upload-form-field::before { 117 content: "choose files"; 118 display: inline-block; 119 border: 1px solid #999; 120 border-radius: 3px; 121 padding: 5px 8px; 122 } 123 #first_container span.input-group-addon,#first_container .datepicker *,#first_container .input-group-addon, #first_container .input-group-addon *,#first_container .fr-action-buttons .fr-submit,.fr-popup .fr-layer.fr-color-hex-layer .fr-action-buttons button.fr-command { 124 white-space: nowrap !important; 125 } 126 /* Main Website Design */ 127 body,.modal-header,.modal-content,.modal-body,.modal-footer { 128 background: rgb(250, 250, 250); 129 color: rgb(34, 34, 34); 130 font-family: 'Roboto'; 131 font-size: 19px; 132 } 133 .select2-container .select2-choice { 134 font-family: 'Roboto'!important; 135 } 136 html{ 137 background: rgb(34, 34, 34) } 138 .bootstrap-datetimepicker-widget *:not(.active,[data-action="togglePeriod"]) a, .bootstrap-datetimepicker-widget *:not(.active,[data-action="togglePeriod"]) td,.datepicker th.picker-switch,.datepicker .dow { 139 color: #000 !important; 140 } 141 a,a.h1,a.h2,a.h3,a.h4,a.h5,a.h6,.pricing_menu li ul li a:not(.btn) { 142 color: rgb(185, 64, 167); 143 } 144 a:hover, a:focus,.pricing_menu li ul li a:not(.btn):hover,.pricing_menu li ul li a:not(.btn):focus,.btn:hover,.btn:focus { 145 color: rgb(185, 64, 167); 146 } 147 .breadcrumb a{ 148 color: rgba(34, 34, 34,0.9); 149 } 150 .breadcrumb a:hover, .breadcrumb a:focus,.breadcrumb > .active { 151 color: rgb(34, 34, 34); 152 } 153 .help-inline, .help-block { 154 color: rgba(34, 34, 34,0.5); 155 } 156 .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { 157 font-family: 'Roboto'; 158 } 159 /* Header Design */ 160 .header, .mobile_website_logo img { 161 background: rgb(250, 250, 250); 162 } 163 .header .mini-nav li a:not(.btn):not(.network-icon), .header .mini-nav span { 164 color: rgb(34, 34, 34); 165 font-size: 18px; 166 } 167 .header .mini-nav li a:not(.btn):hover { 168 color: rgba(34, 34, 34,0.95); 169 } 170 .header .btn_get_listed { 171 background-color: rgb(34, 34, 34); 172 border: 1px solid rgb(34, 34, 34); 173 color: rgb(250, 250, 250)!important; 174 } 175 .header .btn_get_listed:hover, .header .btn_get_listed:focus { 176 background-color: rgba(34, 34, 34,0.97); 177 } 178 .header .btn_search { 179 background-color: rgba(185, 64, 167,0.97); 180 border: 1px solid rgb(185, 64, 167); 181 color: rgb(255, 255, 255); 182 } 183 .header .btn_search:hover, .header .btn_search:focus { 184 background-color: rgb(185, 64, 167); 185 color: rgb(255, 255, 255); 186 } 187 188 /* Logo Design */ 189 .logo,.logo:hover,.logo:focus { 190 color: rgb(185, 64, 167); 191 font-family: 'Poppins'; 192 } 193 .logo .slogan { 194 color: rgb(66, 66, 66); 195 } 196 .logo .fa { 197 color: rgb(185, 64, 167); 198 } 199 200 /* Main Menu Design */ 201 .member-profile-tabs > ul, .member-profile-tabs .tabs-container { 202 background: rgb(234, 234, 234); 203 position: sticky; 204 z-index: 1; 205 top: 0px; 206 } 207 /* Google Translate When Main Menu Sticky Top */ 208 @media only screen and (max-width: 1100px) { 209 .member-profile-tabs > ul, .member-profile-tabs .tabs-container { 210 top: 50px; 211 } 212 } 213 .header ul.nav.navbar-nav li ul { 214 background-color: rgb(255, 255, 255); 215 } 216 .header ul.nav.navbar-nav li ul li a, .header ul.nav.navbar-nav li ul li span { 217 color: rgb(120, 111, 166); 218 font-weight: 400; 219 } 220 .header .navbar-default, .pagination > .active > a { 221 background-color: rgb(185, 64, 167); 222 } 223 .header ul.nav.navbar-nav li ul li a:hover, .header ul.nav.navbar-nav li ul li a:focus{ 224 border-left-color: rgb(120, 111, 166); 225 background: rgb(120, 111, 166); 226 color: rgb(255, 255, 255); 227 }
228 .navbar-default .navbar-toggle .icon-bar { 229 background-color: rgb(255, 255, 255); 230 } 231 .user_sidebar, .main_menu, .compact-mobile-search { 232 color: rgb(255, 255, 255); 233 } 234 .navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > span { 235 color: rgb(255, 255, 255); 236 font-weight: 400; 237 } 238 .navbar-default .navbar-nav > li:hover > a,.navbar-default .navbar-nav > li > a:hover,.navbar-default .navbar-nav > li > a:active, .navbar-default .navbar-nav > li > a:focus { 239 color: rgb(255, 255, 255); 240 } 241 .navbar-default .navbar-nav > li { 242 font-family: 'Poppins'; 243 } 244 245 #website_logo .logo-image { 246 max-width: 200px; 247 } 248 249 250 /* Footer Design */ 251 .footer { 252 background-color: rgb(34, 34, 34); 253 display: block; 254 } 255 .footer, .footer_menu a,.footer_terms a,.footer_menu .content { 256 color: rgb(250, 250, 250); 257 } 258 .footer_menu a:hover, .footer_terms a:hover, .footer_menu a:focus, .footer_terms a:focus { 259 color: rgb(250, 250, 250); 260 } 261 .footer_menu .head { 262 color: rgb(250, 250, 250); 263 } 264 .btn_footer_get_listed { 265 background-color: rgb(185, 64, 167); 266 border: 1px solid rgb(185, 64, 167); 267 color: rgb(255, 255, 255)!important; 268 } 269 .btn_footer_get_listed:hover, .btn_footer_get_listed:focus{ 270 background-color: rgba(185, 64, 167,0.95); 271 } 272 273 /* Homepage Design */ 274 .homepage_settings h1, .homepage_settings h2, .homepage_map h1, .homepage_map h2 { 275 font-family: 'Poppins'; 276 } 277 .homepage_settings h1, .homepage_map h1 { 278 color: rgb(255, 255, 255); 279 font-weight: 600; 280 text-align: left; 281 } 282 .homepage_settings h2, .homepage_map h2 { 283 color: rgb(255, 255, 255); 284 font-weight: 400; 285 text-align: left; 286 287 } 288 .homepage_settings .search_box label { 289 color: rgb(250, 250, 250); 290 } 291 .btn_home_search, .search_box input[type=submit] { 292 background-color: rgb(196, 69, 105); 293 border: 1px solid rgb(196, 69, 105); 294 color: rgb(255, 255, 255); 295 } 296 .btn_home_search:hover, .btn_home_search:focus, .search_box input[type=submit]:hover, .search_box input[type=submit]:focus { 297 background-color: rgba(196, 69, 105,0.97); 298 color: rgb(255, 255, 255); 299 } 300 .homepage_settings .search_box { 301 padding: 10px; 302 303 background-color: rgba( 34, 34, 34, 0.5); 304 } 305 306 /* Homepage Steps Module */ 307 .homepage_steps { 308 background: none; 309 box-shadow: none; 310 padding: 0; 311 color: rgb(255, 255, 255); 312 } 313 .homepage_steps a.homepage_step_link,.homepage_steps a.homepage_step_link:hover,.homepage_steps a.homepage_step_link:active{ 314 color: rgb(255, 255, 255)!important; 315 } 316 .homepage_steps .fa { 317 color: rgb(255, 255, 255); 318 background-color: rgba(255, 255, 255,0.075); 319 } 320 .homepage_steps h2 + p { 321 opacity: .6; 322 } 323 324 /* Blog Posts Slider Settings */ 325 #myCarousel h2 a, .carousel-caption p,#myCarousel .list-group-item h2, #myCarousel li.list-group-item h4 { 326 color: rgb(255, 255, 255); 327 } 328 #myCarousel .list-group-item { 329 background-color: rgba(32, 80, 129,0.9); 330 border-color: rgba(32, 80, 129,0.80); 331 } 332 #myCarousel .carousel-caption { 333 background-color: rgba(32, 80, 129,0.8); 334 } 335 #myCarousel .list-group, #myCarousel .carousel-inner { 336 background-color: rgb(32, 80, 129) } 337 #myCarousel .list-group .active, #myCarousel .list-group-item:hover { 338 background-color: rgb(32, 80, 129) } 339 #myCarousel .list-group .active h2, #myCarousel .list-group-item:hover h2{ 340 color: rgb(250, 250, 250); 341 } 342 343 /* Additional Settings */ 344 .well blockquote { 345 background: rgb(250, 250, 250) none repeat scroll 0 0; 346 border-color: rgb(234, 234, 234); 347 color: rgb(34, 34, 34); 348 padding: 10px 20px; 349 } 350 .account-form-box form table tr td table { 351 background-color: transparent!important; 352 border: none!important; 353 } 354 355 .account-form-box form table tr td table td { 356 background-color: transparent!important; 357 color: rgb(34, 34, 34)!important; 358 border: none!important; 359 } 360 div.dataTables_length label, div.dataTables_filter label, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active{ 361 color: rgb(34, 34, 34)!important; 362 } 363 .table.dataTable > thead > tr > th, .table > thead > tr > th, .fr-view table th, .fr-view table tfoot td {
364 border-color: rgba(66, 66, 66,0.1); 365 background-color: rgb(224, 224, 224); 366 color: rgb(66, 66, 66); 367 font-weight:600; 368 border-left: none; 369 border-bottom-width: 1px; 370 } 371 .table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, table.dataTable.no-footer { 372 border-color: rgba(66, 66, 66,0.1); 373 } 374 .table > tfoot > tr > td:not(:last-child) { 375 border-right: 1px solid rgba(66, 66, 66,0.1); 376 } 377 table.dataTable.no-footer, table.dataTable { 378 border: 1px solid rgb(234, 234, 234)!important; 379 } 380 .table-view li:not(.table-display-about_me li, .froala-data li), .table-view .table-view-group > div { 381 border-top:1px solid rgb(234, 234, 234); 382 } 383 .table-view .table-view-group:last-child { 384 border-bottom:1px solid rgb(234, 234, 234); 385 } 386 table.dataTable tbody tr, .table-striped.dataTable, .table-striped, .fr-view .table-striped { 387 background-color: rgb(255, 255, 255)!important; 388 } 389 .table-striped.dataTable, .table-striped, .fr-view .table-striped { 390 border: 1px solid rgba(66, 66, 66,0.15); 391 border-collapse: separate; 392 overflow: hidden; 393 } 394 table#feature-body-datatable:has(.dropdown.open),table#digital-products-transactions:has(.dropdown.open), table#example:has(.dropdown.open) { 395 overflow: visible; 396 } 397 .table-striped.dataTable tbody > tr:nth-of-type(2n+1),.table-striped > tbody > tr:nth-of-type(2n+1) { 398 background-color: rgba(250, 250, 250,0.5)!important; 399 } 400 .nav-tabs, hr, .account-menu-title, .modal-header { 401 border-color: rgb(234, 234, 234); 402 } 403 .sidemenu_panel .list-group-item{ 404 background-color: transparent!important; 405 color: rgb(34, 34, 34)!important; 406 } 407 .img-thumbnail { 408 background-color: rgb(255, 255, 255)!important; 409 border: 1px solid rgb(234, 234, 234); 410 } 411 .member_admin_sidemenu p, .member_admin_sidemenu h3 { 412 color: rgb(34, 34, 34)!important; 413 } 414 .close { 415 color: rgb(34, 34, 34); 416 opacity: 1; 417 } 418 .member_results_header h1, .content_w_sidebar.feature-search h1, .feature_results_header h1 { 419 font-size:34px; 420 display: block; 421 } 422 .member_results_header h2, .feature_results_header h2 { 423 font-size:28px; 424 display: block; 425 } 426 .homepage_settings { 427 padding-top: 130px; 428 padding-bottom: 180px; 429 } 430 @media (max-width: 768px) { .mobile_website_logo .visible-xs {display: block !important;}} 431 @media only screen and (max-width: 768px) { 432 .member-profile-header .favorite {float:none} 433 } 434 435 436 @media only screen and (max-width: 1100px) { 437 } 438 .views > i.fa.activeView, .views > i.fa:hover { 439 background-color: rgb(34, 34, 34); 440 color: rgb(250, 250, 250); 441 } 442 .views > i.fa { 443 background-color: rgba(34, 34, 34,0.1); 444 color: rgb(34, 34, 34); 445 } 446 .ui-rangeSlider-label { 447 background-color: rgb(185, 64, 167)!important; 448 color: rgb(255, 255, 255)!important; 449 } 450 .pricing_menu li .title { 451 background: rgb(39, 60, 117); 452 color: rgb(255, 255, 255); 453 } 454 p.account-tip{ 455 color: rgb(34, 34, 34); 456 } 457 .circled_number { 458 background: rgb(32, 80, 129); 459 color: rgb(255, 255, 255); 460 } 461 .pic { 462 background-color: rgba(34, 34, 34,0.8); 463 color: rgb(250, 250, 250); 464 background-repeat: no-repeat; 465 background-position: center; 466 } 467 .pic .pic-caption { 468 background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%,rgba(34, 34, 34,0.85) 50%); 469 color: rgb(250, 250, 250); 470 } 471 .slick-prev-fa i, .slick-next-fa i{ 472 color: rgb(34, 34, 34); 473 } 474 .module, .well, .tab-content, .nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover, .nav-tabs.nav-justified>li.active>a, .nav-tabs.nav-justified>li.active>a:focus, .nav-tabs.nav-justified>li.active>a:hover, .nav-tab.nav-justified>li>a:focus, .nav-tabs.nav-justified>li>a:hover, .account-form-box,.account-form-box .module .module,.account-form-box .module .well,.account-form-box .well .well,.account-form-box .well .module,.module .module .module,.module .well .well,.module .module .well,.module .well .module,.well .well .well,.well .module .module,.well .well .module,.well .module .well, .froala-table.module, .froala-table td.module { 475 background-color: rgb(255, 255, 255); 476 border-color: rgb(234, 234, 234); 477 color: rgb(34, 34, 34); 478 } 479 .nav-pills > li.active a, .nav-pills > li > a:hover { 480 background-color: rgb(185, 64, 167)!important; 481 border-color: rgb(185, 64, 167)!important; 482 color: rgb(255, 255, 255)!important; 483 } 484 .sidemenu_panel .panel-heading { 485 color: rgb(34, 34, 34)!important; 486 background-color: rgb(255, 255, 255)!important; 487 } 488 .member-profile-tabs .nav-tabs > li:not(.active) > a, .login-register-tabs.nav-tabs > li:not(.active) > a, .nav-tabs > li:not(.active) > a { 489 background: rgba(255, 255, 255,0.5); 490 color: #595959; 491 } 492 .member-profile-tabs .nav-tabs > li:not(.active) > a:hover, .login-register-tabs.nav-tabs > li:not(.active) > a:hover, .nav-tabs > li:not(.active) > a:hover { 493 background: rgba(255, 255, 255,1); 494 color: rgb(34, 34, 34); 495 }
496 .author-snapshot .well:not(.well.bg-default) { 497 background-color: rgb(255, 255, 255)!important; 498 border-color: rgb(234, 234, 234)!important; 499 color: rgb(34, 34, 34)!important; 500 } 501 .nav-tabs>li>a, .nav-pills>li>a { 502 font-weight: 600; 503 } 504 .module .help-inline,.module .help-block,.well .help-inline,.well .help-block,.account-form-box .help-inline,.account-form-box .help-block,.account-form-box p.account-tip{ 505 color: rgba(34, 34, 34,0.5); 506 } 507 #service_areas_table td,#service_areas_table_wrapper label, #service_areas_table_info, #service_areas_table_paginate > a { 508 color: rgb(34, 34, 34) !important; 509 } 510 .popover { 511 background-color: rgb(255, 255, 255); 512 border-color: rgb(255, 255, 255); 513 padding:0; 514 text-align:left; 515 } 516 .popover-title, .popover-content { 517 background-color: rgb(255, 255, 255); 518 color: rgb(34, 34, 34); 519 border-color: rgb(255, 255, 255); 520 text-align:left; 521 } 522 .popover-content { 523 background-color: rgba(34, 34, 34,.05); 524 border-radius: 4px; 525 transform: translate(-1px, -1px); 526 width: calc(100% + 2px); 527 margin-bottom: -2px; 528 } 529 .popover.left > .arrow::after { 530 border-left-color: rgb(255, 255, 255)!important; 531 } 532 .popover.right > .arrow::after { 533 border-right-color: rgb(255, 255, 255)!important; 534 } 535 .popover.bottom > .arrow::after { 536 border-bottom-color: rgb(255, 255, 255)!important; 537 } 538 .popover.top > .arrow::after { 539 border-top-color: rgb(255, 255, 255)!important; 540 } 541 .progress, .table-view .table-view-group:nth-child(2n-1),.tab-content .well, .tab-content .module,#account-tabs .well,#account-tabs .module,.account-form-box .module,.account-form-box .well,.module .module,.well .well,.module .well,.well .module{ 542 background-color: rgb(250, 250, 250); 543 color: rgb(34, 34, 34); 544 } 545 .module h1, .module h2, .module h3, .module h4, .module h5 { 546 color: rgb(34, 34, 34); 547 } 548 .module p:not(.fr-box.fr-basic .fr-element p) { 549 color: rgb(34, 34, 34); 550 } 551 .pagination>.active>a { 552 border-color: rgba(255, 255, 255,0.2); 553 } 554 .pagination>.active>a { 555 color: rgb(255, 255, 255); 556 } 557 .pagination > .active > a:hover, .pagination > .active > a:focus { 558 border-color: rgba(255, 255, 255,0.2); 559 background-color: rgb(185, 64, 167); 560 color: rgb(255, 255, 255); 561 } 562 .pagination > li > a { 563 color: rgb(185, 64, 167); 564 border-color: rgba(185, 64, 167,0.2); 565 background-color: rgb(255, 255, 255); 566 } 567 .pagination > li > a:focus, .pagination > li > a:hover, .pagination > li > span:focus, .pagination > li > span:hover { 568 background-color: rgb(185, 64, 167); 569 border-color: rgb(185, 64, 167); 570 color: rgb(255, 255, 255); 571 } 572 573 .nav-pills.nav-wizard > li a, .nav-pills.nav-wizard > li a:hover{ 574 background-color: rgb(238, 238, 238)!important; 575 color: rgb(85, 85, 85)!important; 576 } 577 .member_wizard2 li.incomplete a, .member_wizard2 li.incomplete a:hover { 578 background-color: rgb(241, 144, 102)!important; 579 border-color: rgb(241, 144, 102); 580 color: rgb(255, 255, 255); 581 } 582 .nav-pills.nav-wizard > li.active a, .nav-pills.member_wizard > li.active:hover a { 583 background-color: rgb(51, 122, 183)!important; 584 color: rgb(255, 255, 255)!important; 585 } 586 .member_wizard2 li.completed a, .member_wizard2 li.completed a:hover { 587 background-color: rgb(120, 111, 166)!important; 588 border-color: rgb(120, 111, 166); 589 color: rgb(255, 255, 255); 590 } 591 592 .nav-pills.nav-wizard > li.active .nav-arrow, .nav-pills.nav-wizard > li.active:hover .nav-arrow { 593 border-color: transparent transparent transparent rgb(51, 122, 183)!important; 594 } 595 .nav-pills.nav-wizard > li.active .nav-wedge, .nav-pills.nav-wizard > li.active:hover .nav-wedge{ 596 border-color: rgb(51, 122, 183) rgb(51, 122, 183) rgb(51, 122, 183) transparent!important; 597 } 598 599 li.completed .nav-wedge, .nav-pills.nav-wizard > li.completed:hover .nav-wedge { 600 border-color: rgb(30, 166, 154) rgb(30, 166, 154) rgb(30, 166, 154) transparent!important; 601 } 602 603 li.incomplete .nav-wedge, .nav-pills.nav-wizard > li.incomplete:hover .nav-wedge { 604 border-color: rgb(238, 238, 238) rgb(238, 238, 238) rgb(238, 238, 238) transparent!important; 605 } 606 607 .nav-pills.member_wizard > li.completed a, .nav-pills.member_wizard > li.completed a:hover { 608 background-color: rgb(30, 166, 154)!important; 609 color: rgb(255, 255, 255)!important; 610 } 611 612 .member_wizard2 li { 613 color: rgb(255, 255, 255); 614 border-right: 10px solid rgb(250, 250, 250); 615 } 616 617 li.completed .nav-arrow, .nav-pills.nav-wizard > li.completed:hover .nav-arrow { 618 border-color: transparent transparent transparent rgb(30, 166, 154)!important; 619 } 620 621 li.incomplete .nav-arrow, .nav-pills.nav-wizard > li.incomplete:hover .nav-arrow{ 622 border-color: transparent transparent transparent rgb(238, 238, 238)!important; 623 } 624 625 /* Default Colors */ 626 .btn-primary, .btn-primary.disabled, .btn-primary.disabled.active, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled:focus, .btn-primary.disabled:hover, .btn-primary[disabled], .btn-primary[disabled].active, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled]:focus, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary, fieldset[disabled] .btn-primary.active, fieldset[disabled] .btn-primary.focus, fieldset[disabled] .btn-primary:active, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary:hover, .btn.dropdown-toggle.btn-primary,.navbar-default .navbar-nav > li > a.btn-primary, .navbar-default .navbar-nav > li > span.btn-primary,.mobile-main-menu .sidebar-nav li a.btn-primary, .mobile-main-menu .sidebar-nav li span.btn-primary { 627 background-color: rgb(185, 64, 167); 628 border-color: rgb(185, 64, 167); 629 color: rgb(255, 255, 255); 630 } 631 .btn-primary:hover, .btn-primary:focus, .btn-primary:active,.btn-primary:active:focus, .btn-primary:active:hover, .nav > li > a.btn-primary:focus, .nav > li > a.btn-primary:hover,.btn-primary.active,.open > .dropdown-toggle.btn-primary, .btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover, .btn-primary:active.focus, .open>.dropdown-toggle.btn-primary:hover, .open>.dropdown-toggle.btn-primary:focus, .open>.dropdown-toggle.btn-primary.focus,a.bg-primary:focus,a.bg-primary:hover, .panel-primary .panel-heading, .btn.dropdown-toggle.btn-primary:hover,.upload-form-field,.upload-form-field:hover,.upload-form-field:active:focus,.upload-form-field:before, .label-primary[href]:focus, .label-primary[href]:hover { 632 background-color: rgba(185, 64, 167,0.95); 633 border-color: rgb(185, 64, 167); 634 color: rgb(255, 255, 255); 635 } 636 .panel-primary { 637 background-color: #f5e2f2; 638 border-color: rgb(185, 64, 167); 639 } 640 .bg-primary,.progress-bar-primary,.module p.bg-primary,.label-primary,.badge-primary,.pricing_menu .title.bg-primary, .
640well .well.bg-primary, .module .well.bg-primary, .well .module.bg-primary,.tab-content .module.bg-primary,.tab-content .well.bg-primary { 641 background-color: rgb(185, 64, 167); 642 color: rgb(255, 255, 255); 643 } 644 .bg-primary .badge { 645 background-color:rgb(255, 255, 255); 646 color: rgb(185, 64, 167); 647 } 648 .btn-primary.btn-outline { 649 background: transparent; 650 color: rgb(185, 64, 167); 651 transition: all 250ms ease-in-out 0ms; 652 } 653 .btn-primary.btn-outline:hover { 654 background: rgba(185, 64, 167,0.1); 655 color: rgb(185, 64, 167); 656 } 657 .alert-primary { 658 background-color:rgba(185, 64, 167,0.7); 659 border-color:rgba(185, 64, 167,0.2); 660 color: rgba(255, 255, 255,0.9); 661 } 662 .alert-primary-subtle, .label-primary-subtle, .badge-primary-subtle { 663 background-color: #f1d9ed; 664 border-color: #f1d9ed; 665 color: rgb(185, 64, 167); 666 color: color-mix(in srgb, rgb(185, 64, 167) 50%, rgb(34, 34, 34) 50%); 667 } 668 .btn.dropdown-toggle.btn-primary *, .btn-primary a { 669 color: rgb(255, 255, 255); 670 } 671 .text-primary{ 672 color: rgb(185, 64, 167); 673 } 674 .btn-info, .btn-info.disabled, .btn-info.disabled.active, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled:focus, .btn-info.disabled:hover, .btn-info[disabled], .btn-info[disabled].active, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled]:focus, .btn-info[disabled]:hover, fieldset[disabled] .btn-info, fieldset[disabled] .btn-info.active, fieldset[disabled] .btn-info.focus, fieldset[disabled] .btn-info:active, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info:hover, .btn.dropdown-toggle.btn-info,.navbar-default .navbar-nav > li > a.btn-info, .navbar-default .navbar-nav > li > span.btn-info,.mobile-main-menu .sidebar-nav li a.btn-info, .mobile-main-menu .sidebar-nav li span.btn-info { 675 background-color: rgb(39, 60, 117); 676 border-color: rgb(39, 60, 117); 677 color: rgb(255, 255, 255); 678 } 679 .btn-info:hover, .btn-info:focus, .btn-info:active,.btn-info:active:focus, .btn-info:active:hover, .nav > li > a.btn-info:focus, .nav > li > a.btn-info:hover,.btn-info.active,.open > .dropdown-toggle.btn-info, .btn-info.active.focus, .btn-info.active:focus, .btn-info.active:hover, .btn-info:active.focus, .open>.dropdown-toggle.btn-info:hover, .open>.dropdown-toggle.btn-info:focus, .open>.dropdown-toggle.btn-info.focus,a.bg-info:focus,a.bg-info:hover, .panel-info .panel-heading, .btn.dropdown-toggle.btn-info:hover, .label-info[href]:focus, .label-info[href]:hover { 680 background-color: rgba(39, 60, 117,0.95); 681 border-color: rgb(39, 60, 117); 682 color: rgb(255, 255, 255); 683 } 684 .panel-info { 685 background-color: #dfe2ea; 686 border-color: rgb(39, 60, 117); 687 } 688 .bg-info,.progress-bar-info,.module p.bg-info,.label-info,.badge-info,.pricing_menu .title.bg-info, .well .well.bg-info, .module .well.bg-info, .well .module.bg-info,.tab-content .module.bg-info,.tab-content .well.bg-info { 689 background-color: rgb(39, 60, 117); 690 color: rgb(255, 255, 255); 691 } 692 .bg-info .badge { 693 background-color:rgb(255, 255, 255); 694 color: rgb(39, 60, 117); 695 } 696 .btn-info.btn-outline { 697 background: transparent; 698 color: rgb(39, 60, 117); 699 transition: all 250ms ease-in-out 0ms; 700 } 701 .btn-info.btn-outline:hover { 702 background: rgba(39, 60, 117,0.1); 703 color: rgb(39, 60, 117); 704 } 705 .alert-info { 706 background-color:rgba(39, 60, 117,0.7); 707 border-color:rgba(39, 60, 117,0.2); 708 color: rgba(255, 255, 255,0.9); 709 } 710 .alert-info-subtle, .label-info-subtle, .badge-info-subtle { 711 background-color: #d4d8e3; 712 border-color: #d4d8e3; 713 color: rgb(39, 60, 117); 714 color: color-mix(in srgb, rgb(39, 60, 117) 50%, rgb(34, 34, 34) 50%); 715 } 716 .btn.dropdown-toggle.btn-info *, .btn-info a { 717 color: rgb(255, 255, 255); 718 } 719 .text-info{ 720 color: rgb(39, 60, 117); 721 } 722 .btn-success, .btn-success.disabled, .btn-success.disabled.active, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled:focus, .btn-success.disabled:hover, .btn-success[disabled], .btn-success[disabled].active, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled]:focus, .btn-success[disabled]:hover, fieldset[disabled] .btn-success, fieldset[disabled] .btn-success.active, fieldset[disabled] .btn-success.focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success:hover, .btn.dropdown-toggle.btn-success,.navbar-default .navbar-nav > li > a.btn-success, .navbar-default .navbar-nav > li > span.btn-success,.mobile-main-menu .sidebar-nav li a.btn-success, .mobile-main-menu .sidebar-nav li span.btn-success { 723 background-color: rgb(120, 111, 166); 724 border-color: rgb(120, 111, 166); 725 color: rgb(255, 255, 255); 726 } 727 .btn-success:hover, .btn-success:focus, .btn-success:active,.btn-success:active:focus, .btn-success:active:hover, .nav > li > a.btn-success:focus, .nav > li > a.btn-success:hover,.btn-success.active,.open > .dropdown-toggle.btn-success, .btn-success.active.focus, .btn-success.active:focus, .btn-success.active:hover, .btn-success:active.focus, .open>.dropdown-toggle.btn-success:hover, .open>.dropdown-toggle.btn-success:focus, .open>.dropdown-toggle.btn-success.focus,a.bg-success:focus,a.bg-success:hover, .panel-success .panel-heading, .btn.dropdown-toggle.btn-success:hover, .label-success[href]:focus, .label-success[href]:hover { 728 background-color: rgba(120, 111, 166,0.95); 729 border-color: rgb(120, 111, 166); 730 color: rgb(255, 255, 255); 731 } 732 .panel-success { 733 background-color: #ebe9f2; 734 border-color: rgb(120, 111, 166); 735 } 736 .bg-success,.progress-bar-success,.module p.bg-success,.label-success,.badge-success,.pricing_menu .title.bg-success, .well .well.bg-success, .module .well.bg-success, .well .module.bg-success,.tab-content .module.bg-success,.tab-content .well.bg-success { 737 background-color: rgb(120, 111, 166); 738 color: rgb(255, 255, 255); 739 } 740 .bg-success .badge { 741 background-color: rgb(255, 255, 255); 742 color: rgb(120, 111, 166); 743 } 744 .btn-success.btn-outline { 745 background: transparent; 746 color: rgb(120, 111, 166); 747 transition: all 250ms ease-in-out 0ms; 748 } 749 .btn-success.btn-outline:hover { 750 background: rgba(120, 111, 166,0.1); 751 color: rgb(120, 111, 166); 752 } 753 .alert-success { 754 background-color:rgba(120, 111, 166,0.7); 755 border-color:rgba(120, 111, 166,0.2); 756 color: rgba(255, 255, 255,0.9); 757 } 758 .alert-success-subtle, .label-success-subtle, .badge-success-subtle { 759 background-color: #e4e2ed; 760 border-color: #e4e2ed; 761 color: rgb(120, 111, 166); 762 color: color-mix(in srgb, rgb(120, 111, 166) 50%, rgb(34, 34, 34) 50%); 763 } 764 .btn.dropdown-toggle.btn-success *, .btn-success a { 765 color: rgb(255, 255, 255); 766 } 767 .text-success{ 768 color: rgb(120, 111, 166); 769 } 770 .btn-warning, .btn-warning.disabled, .btn-warning.disabled.active, .btn-warning.disabled.focus, .btn-warning.disabled:active, .btn-warning.disabled:focus, .btn-warning.disabled:hover, .btn-warning[disabled], .btn-warning[disabled].active, .btn-warning[disabled].focus, .btn-warning[disabled]:active, .btn-warning[disabled]:focus, .btn-warning[disabled]:hover, fieldset[disabled] .btn-warning, fieldset[disabled] .btn-warning.active, fieldset[disabled] .btn-warning.focus, fieldset[disabled] .btn-warning:active, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning:hover, .btn.dropdown-toggle.btn-warning,.navbar-default .navbar-nav > li > a.btn-warning, .navbar-default .navbar-nav > li > span.btn-warning,.mobile-main-menu .sidebar-nav li a.btn-warning, .mobile-main-menu .sidebar-nav li span.btn-warning { 771 background-color: rgb(241, 144, 102); 772 border-color: rgb(241, 144, 102); 773 color: rgb(255, 255, 255); 774 } 775 .btn-warning:hover, .btn-warning:focus, .btn-warning:active,.btn-warning:active:focus, .btn-warning:active:hover, .nav > li > a.btn-warning:focus, .nav > li > a.btn-warning:hover,.btn-warning.active,.open > .dropdown-toggle.btn-warning, .btn-warning.active.focus, .btn-warning.active:focus, .btn-warning.active:hover, .btn-warning:active.focus, .open>.dropdown-toggle.btn-warning:hover, .open>.dropdown-toggle.btn-warning:focus, .open>.dropdown-toggle.btn-warning.focus,a.bg-warning:focus,a.bg-warning:hover, .panel-warning .panel-heading, .btn.dropdown-toggle.btn-warning:hover, .label-warning[href]:focus, .label-warning[href]:hover { 776 background-color: rgba(241, 144, 102,0.95); 777 border-color: rgb(241, 144, 102); 778 color: rgb(255, 255, 255); 779 } 780 .panel-warning { 781 background-color: #fdeee8; 782 border-color: rgb(241, 144, 102); 783 } 784 .bg-warning,.progress-bar-warning,.module p.bg-warning,.label-warning,.badge-warning,.pricing_menu .title.bg-warning, .well .well.bg-warning, .module .well.bg-warning, .well .module.bg-warning,.tab-content .module.bg-warning,.tab-content .well.bg-warning { 785 background-color: rgb(241, 144, 102); 786 color: rgb(255, 255, 255); 787 } 788 .bg-warning .badge { 789 background-color: rgb(255, 255, 255); 790 color: rgb(241, 144, 102); 791 } 792 .btn-warning.btn-outline { 793 background: transparent; 794 color: rgb(241, 144, 102); 795 transition: all 250ms ease-in-out 0ms; 796 } 797 .btn-warning.btn-outline:hover { 798 background: rgba(241, 144, 102,0.1); 799 color: rgb(241, 144, 102); 800 } 801 .alert-warning { 802 background-color:rgba(241, 144, 102,0.7); 803 border-color:rgba(241, 144, 102,0.2); 804 color: rgba(255, 255, 255,0.9); 805 } 806 .alert-warning-subtle, .label-warning-subtle, .badge-warning-subtle { 807 background-color: #fce9e0; 808 border-color: #fce9e0; 809 color: rgb(241, 144, 102); 810 color: color-mix(in srgb, rgb(241, 144, 102) 50%, rgb(34, 34, 34) 50%); 811 } 812 .btn.dropdown-toggle.btn-warning *, .btn-warning a { 813 color: rgb(255, 255, 255); 814 } 815 .text-warning { 816 color: rgb(241, 144, 102); 817 } 818 .btn-danger, .btn-danger.disabled, .btn-danger.disabled.active, .btn-danger.disabled.focus, .btn-danger.disabled:active, .btn-danger.disabled:focus, .btn-danger.disabled:hover, .btn-danger[disabled], .btn-danger[disabled].active, .btn-danger[disabled].focus, .btn-danger[disabled]:active, .btn-danger[disabled]:focus, .btn-danger[disabled]:hover, fieldset[disabled] .btn-danger, fieldset[disabled] .btn-danger.active, fieldset[disabled] .btn-danger.focus, fieldset[disabled] .btn-danger:active, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger:hover, .btn.dropdown-toggle.btn-danger,.navbar-default .navbar-nav > li > a.btn-danger, .navbar-default .navbar-nav > li > span.btn-danger,.mobile-main-menu .sidebar-nav li a.btn-danger, .mobile-main-menu .sidebar-nav li span.btn-danger { 819 background-color: rgb(196, 69, 105); 820 border-color: rgb(196, 69, 105); 821 color: rgb(255, 255, 255); 822 } 823 .btn-danger:hover, .btn-danger:focus, .btn-danger:active,.btn-danger:active:focus, .btn-danger:active:hover, .nav > li > a.btn-danger:focus, .nav > li > a.btn-danger:hover,.btn-danger.active,.open > .dropdown-toggle.btn-danger, .btn-danger.active.focus, .btn-danger.active:focus, .btn-danger.active:hover, .btn-danger:active.focus, .open>.dropdown-toggle.btn-danger:hover, .open>.dropdown-toggle.btn-danger:focus, .open>.dropdown-toggle.btn-danger.focus,a.bg-danger:focus,a.bg-danger:hover, .panel-danger .panel-heading, .btn.dropdown-toggle.btn-danger:hover, .label-danger[href]:focus, .label-danger[href]:hover { 824 background-color: rgba(196, 69, 105,0.95); 825 border-color: rgb(196, 69, 105); 826 color: rgb(255, 255, 255); 827 } 828 .has-error .form-control { 829 border-color: rgb(196, 69, 105); 830 } 831 .has-error .help-block:not(.form-field-help-block), .has-error ~ .help-block:not(.form-field-help-block),.has-error .help-block:not(.form-field-help-block) a, .has-error ~ .help-block:not(.form-field-help-block) a { 832 background: rgb(196, 69, 105); 833 color: rgb(255, 255, 255) !important; 834 } 835 .has-error .checkbox, .has-error .checkbox-inline, .has-error .control-label, .has-error .help-block, .has-error .radio, .has-error .radio-inline, .has-error.checkbox label, .has-error.checkbox-inline label, .has-error.radio label, .has-error.radio-inline label { 836 color: rgb(196, 69, 105); 837 } 838 .panel-danger { 839 background-color: #f6e3e9; 840 border-color: rgb(196, 69, 105); 841 } 842 .bg-danger,.progress-bar-danger,.module p.bg-danger,.label-danger,.badge-danger,.pricing_menu .title.bg-danger, .well .well.bg-danger, .module .well.bg-danger, .well .module.bg-danger,.tab-content .module.bg-danger,.tab-content .well.bg-danger { 843 background-color: rgb(196, 69, 105); 844 color: rgb(255, 255, 255); 845 } 846 .bg-danger .badge { 847 background-color: rgb(255, 255, 255); 848 color: rgb(196, 69, 105); 849 } 850 .btn-danger.btn-outline { 851 background: transparent; 852 color: rgb(196, 69, 105); 853 transition: all 250ms ease-in-out 0ms; 854 } 855 .btn-danger.btn-outline:hover { 856 background: rgba(196, 69, 105,0.1); 857 color: rgb(196, 69, 105); 858 } 859 .alert-danger { 860 background-color:rgba(196, 69, 105,0.7); 861 border-color:rgba(196, 69, 105,0.2); 862 color: rgba(255, 255, 255,0.9); 863 } 864 .alert-danger-subtle, .label-danger-subtle, .badge-danger-subtle { 865 background-color: #f3dae1; 866 border-color: #f3dae1; 867 color: rgb(196, 69, 105); 868 color: color-mix(in srgb, rgb(196, 69, 105) 50%, rgb(34, 34, 34) 50%); 869 } 870 .btn.dropdown-toggle.btn-danger *, .btn-danger a { 871 color: rgb(255, 255, 255); 872 } 873 .text-danger{ 874 color: rgb(196, 69, 105); 875 } 876 .btn-default, .tags a, .btn-default.disabled, .btn-default.disabled.active, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled:focus, .btn-default.disabled:hover, .btn-default[disabled], .btn-default[disabled].active, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled]:focus, .btn-default[disabled]:hover, fieldset[disabled] .btn-default, fieldset[disabled] .btn-default.active, fieldset[disabled] .btn-default.focu
876s, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default:hover, .btn.dropdown-toggle.btn-default, #popover .mini_profile_pic,.navbar-default .navbar-nav > li > a.btn-default, .navbar-default .navbar-nav > li > span.btn-default,.mobile-main-menu .sidebar-nav li a.btn-default, .mobile-main-menu .sidebar-nav li span.btn-default { 877 background-color: rgb(224, 224, 224); 878 border-color: rgb(224, 224, 224); 879 color: rgb(66, 66, 66); 880 } 881 .btn-default:hover, .btn-default:focus, .btn-default:active,.btn-default:active:focus, .btn-default:active:hover,.tags a:hover, .nav > li > a.btn-default:focus, .nav > li > a.btn-default:hover,.btn-default.active,.open > .dropdown-toggle.btn-default, .btn-default.active.focus, .btn-default.active:focus, .btn-default.active:hover, .btn-default:active.focus, .open>.dropdown-toggle.btn-default:hover, .open>.dropdown-toggle.btn-default:focus, .open>.dropdown-toggle.btn-default.focus,a.bg-default:focus,a.bg-default:hover, .panel-default .panel-heading, .member_accounts .panel-default > .panel-heading, .panel-default.categories-panel .panel-heading, .btn.dropdown-toggle.btn-default:hover, #popover .mini_profile_pic, .label-default[href]:focus, .label-default[href]:hover { 882 background-color: rgba(224, 224, 224,0.95); 883 border-color: rgb(224, 224, 224); 884 color: rgb(66, 66, 66); 885 } 886 .sidemenu_panel .panel-default .panel_heading { 887 background-color: rgb(224, 224, 224)!important; 888 border-color: rgb(224, 224, 224)!important; 889 color: rgb(66, 66, 66)!important; 890 } 891 .panel-default .panel-heading, .member_accounts .panel-default > .panel-heading, .panel-default.categories-panel .panel-heading { 892 893 box-shadow: 0 0 1000px 0 rgba(66, 66, 66,0.02) inset; 894 background-color: rgb(224, 224, 224); 895 } 896 .panel-default, .member_accounts .panel-default { 897 898 background-color: rgba(224, 224, 224,0.15); 899 border-color: #fcfcfc; 900 border-color: color-mix(in srgb,rgb(224, 224, 224) 100%,rgba(224, 224, 224) 10%); 901 } 902 .member_admin_sidemenu .panel-default { 903 background-color: transparent; 904 } 905 .bg-default,.progress-bar-default,.module p.bg-default,.label-default,.badge-default,.pricing_menu .title.bg-default, .well .well.bg-default, .module .well.bg-default, .well .module.bg-default,.tab-content .module.bg-default,.tab-content .well.bg-default { 906 background-color: rgb(224, 224, 224); 907 color: rgb(66, 66, 66); 908 } 909 .bg-default .badge { 910 background-color: rgb(66, 66, 66); 911 color: rgb(224, 224, 224); 912 } 913 .btn-default.btn-outline { 914 background: transparent; 915 color: rgb(224, 224, 224); 916 transition: all 250ms ease-in-out 0ms; 917 } 918 .btn-default.btn-outline:hover { 919 background: rgba(224, 224, 224,0.1); 920 color: rgb(224, 224, 224); 921 } 922 .alert-default { 923 background-color:rgb(224, 224, 224); 924 border-color:rgb(224, 224, 224); 925 color: rgb(66, 66, 66); 926 } 927 .alert-default-subtle, .label-default-subtle, .badge-default-subtle { 928 background-color:rgba(224, 224, 224,0.5); 929 border-color: rgba(224, 224, 224,0.5); 930 color: rgb(66, 66, 66); 931 color: color-mix(in srgb, rgb(66, 66, 66) 50%, rgb(34, 34, 34) 50%); 932 } 933 .btn.dropdown-toggle.btn-default *, .btn-default a { 934 color: rgb(66, 66, 66); 935 } 936 .text-default{ 937 color: rgb(224, 224, 224); 938 } 939 .btn-secondary, .btn.dropdown-toggle.btn-secondary,.navbar-default .navbar-nav > li > a.btn-secondary, .navbar-default .navbar-nav > li > span.btn-secondary,.mobile-main-menu .sidebar-nav li a.btn-secondary, .mobile-main-menu .sidebar-nav li span.btn-secondary { 940 background-color: rgb(34, 34, 34); 941 border: 1px solid rgb(34, 34, 34); 942 color: rgb(250, 250, 250); 943 } 944 .btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active,.btn-secondary:active:focus, .btn-secondary:active:hover, .nav > li > a.btn-secondary:focus, .nav > li > a.btn-secondary:hover,.btn-secondary.active,.open > .dropdown-toggle.btn-secondary, .btn-secondary.active.focus, .btn-secondary.active:focus, .btn-secondary.active:hover, .btn-secondary:active.focus, .open>.dropdown-toggle.btn-secondary:hover, .open>.dropdown-toggle.btn-secondary:focus, .open>.dropdown-toggle.btn-secondary.focus,a.bg-secondary:focus,a.bg-secondary:hover,.btn.dropdown-toggle.btn-secondary:hover, .panel-secondary .panel-heading, .label-secondary[href]:focus, .label-secondary[href]:hover { 945 background-color: rgba(34, 34, 34,0.95); 946 border-color: rgb(34, 34, 34); 947 color: rgb(250, 250, 250); 948 } 949 .bg-secondary,.progress-bar-secondary,.module p.bg-secondary,.module p.bg-secondary:not(.fr-box.fr-basic .fr-element p),.label-secondary,.badge-secondary,.pricing_menu .title.bg-secondary, .well .well.bg-secondary, .module .well.bg-secondary, .well .module.bg-secondary,.tab-content .module.bg-secondary,.tab-content .well.bg-secondary { 950 background-color: rgb(34, 34, 34); 951 color: rgb(250, 250, 250); 952 } 953 .bg-secondary .badge { 954 background-color:rgb(250, 250, 250); 955 color: rgb(34, 34, 34); 956 } 957 .btn-secondary.btn-outline { 958 background: transparent; 959 color: rgb(34, 34, 34); 960 transition: all 250ms ease-in-out 0ms; 961 } 962 .btn-secondary.btn-outline:hover { 963 background: rgba(34, 34, 34,0.1); 964 color: rgb(34, 34, 34); 965 } 966 .panel-secondary { 967 background-color: #dedede; 968 border-color: rgb(34, 34, 34); 969 } 970 .alert-secondary { 971 background-color:rgb(34, 34, 34); 972 border-color:rgb(34, 34, 34); 973 color: rgb(250, 250, 250); 974 } 975 .alert-secondary-subtle, .label-secondary-subtle, .badge-secondary-subtle { 976 background-color:rgba(34, 34, 34,0.8); 977 border-color: rgba(34, 34, 34,0.5);
978 color: rgb(250, 250, 250); 979 } 980 .btn-outline { 981 -webkit-backdrop-filter: blur(5px); 982 backdrop-filter: blur(5px); 983 } 984 .btn-body, .btn-body.disabled, .btn-body.disabled.active, .btn-body.disabled.focus, .btn-body.disabled:active, .btn-body.disabled:focus, .btn-body.disabled:hover, .btn-body[disabled], .btn-body[disabled].active, .btn-body[disabled].focus, .btn-body[disabled]:active, .btn-body[disabled]:focus, .btn-body[disabled]:hover, fieldset[disabled] .btn-body, fieldset[disabled] .btn-body.active, fieldset[disabled] .btn-body.focus, fieldset[disabled] .btn-body:active, fieldset[disabled] .btn-body:focus, fieldset[disabled] .btn-body:hover, .btn.dropdown-toggle.btn-body,.navbar-default .navbar-nav > li > a.btn-body, .navbar-default .navbar-nav > li > span.btn-body,.mobile-main-menu .sidebar-nav li a.btn-body, .mobile-main-menu .sidebar-nav li span.btn-body { 985 background-color: rgb(250, 250, 250); 986 border: 1px solid rgb(250, 250, 250); 987 color: rgb(34, 34, 34); 988 } 989 .btn-body:hover, .btn-body:focus, .btn-body:active,.btn-body:active:focus, .btn-body:active:hover, .nav > li > a.btn-body:focus, .nav > li > a.btn-body:hover,.btn-body.active,.open > .dropdown-toggle.btn-body, .btn-body.active.focus, .btn-body.active:focus, .btn-body.active:hover, .btn-body:active.focus, .open>.dropdown-toggle.btn-body:hover, .open>.dropdown-toggle.btn-body:focus, .open>.dropdown-toggle.btn-body.focus,a.bg-body:focus,a.bg-body:hover, .panel-body .panel-heading, .btn.dropdown-toggle.btn-body:hover, .label-body[href]:focus, .label-body[href]:hover { 990 background-color: rgba(250, 250, 250,0.95); 991 border: 1px solid rgb(250, 250, 250); 992 color: rgb(34, 34, 34); 993 } 994 .btn.btn-body.dropdown-toggle * { 995 color: rgb(34, 34, 34) 996 } 997 .btn-body.dropdown-toggle + ul li, .daterangepicker .ranges { 998 color: #333; 999 } 1000 .bg-body { 1001 background: rgb(250, 250, 250); 1002 color: rgb(34, 34, 34); 1003 } 1004 .bg-content-box { 1005 background: rgb(255, 255, 255); 1006 color: rgb(34, 34, 34); 1007 } 1008 .bg-content-box-border { 1009 background: rgb(234, 234, 234); 1010 } 1011 .btn.dropdown-toggle.btn-secondary *, .btn-secondary a { 1012 color: rgb(250, 250, 250); 1013 } 1014 .text-secondary { 1015 color: rgb(34, 34, 34); 1016 } 1017 .text-body { 1018 color: rgb(250, 250, 250); 1019 } 1020 .feature-post #post-content .alert-secondary.btn-block, .feature-search .img_section .alert-secondary.btn-block, .search_result .img_section .alert-secondary { 1021 border-radius: 10px; 1022 background-color: rgba(41, 41, 41,0.2); 1023 } 1024 1025 /* Footer Newsletter Row */ 1026 .newsletter_row .alert { 1027 color: rgb(255, 255, 255); 1028 } 1029 .newsletter_row { 1030 background-color: rgb(234, 234, 234); 1031 color: rgb(255, 255, 255); 1032 } 1033 .newsletter_row input[type="submit"],.newsletter_footer_button { 1034 background-color: rgba(120, 111, 166,0.97); 1035 color: rgb(255, 255, 255); 1036 border-color: rgb(120, 111, 166); 1037 } 1038 .newsletter_row input[type="submit"]:hover,.newsletter_row input[type="submit"]:focus,.newsletter_footer_button:hover,.newsletter_footer_button:focus { 1039 background-color: rgb(120, 111, 166); 1040 color: rgb(255, 255, 255); 1041 } 1042 .newsletter_button_left { 1043 border-right: 1px solid rgba(255, 255, 255,0.2); 1044 } 1045 .newsletter_button_right { 1046 border-left: 1px solid rgba(255, 255, 255,0.2); 1047 } 1048 .newsletter_row small.help-block { 1049 background: rgb(255, 255, 255); 1050 margin-top: -5px; 1051 float: left; 1052 padding: 8px; 1053 border-radius: 1px; 1054 color: rgb(234, 234, 234); 1055 text-transform: capitalize; 1056 } 1057 .newsletter_row .has-success .checkbox,.newsletter_row .has-error .checkbox{ 1058 color: rgb(255, 255, 255); 1059 } 1060 @media only screen and (max-width: 767px) { 1061 .newsletter_button_right,.newsletter_button_left{ 1062 border: none; 1063 margin: 5px 0; 1064 } 1065 } 1066 1067 /* Font Sizes */ 1068 1069 .navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > span { 1070 font-size: 18px; 1071 } 1072 .header .logo { 1073 font-size: 34px; 1074 } 1075 .homepage_title h1, .homepage_settings h1 { 1076 letter-spacing: -1px; 1077 font-size: 72px; 1078 margin-bottom: 20px; 1079 } 1080 @media only screen and (max-width: 768px) { 1081 .homepage_title h1, .homepage_settings h1 {margin-bottom: 15px;} 1082 } 1083 .homepage_settings h2 { 1084 font-size: 28px; 1085 } 1086 1087 .ui-rangeSlider-bar{ 1088 background: rgb(196, 69, 105)!important; 1089 } 1090 1091 1092 1093 @media only screen and (max-width: 1024px){ 1094 .modal {margin-top: 40px;} 1095 } 1096 @media only screen and (max-width: 768px){ 1097 .modal {margin-top: 60px;} 1098 } 1099 1100 /* Calendar Styles */ 1101 1102 #cal-slide-content { 1103 color: rgb(66, 66, 66)!important; 1104 background-color: rgb(224, 224, 224)!important; 1105 -webkit-box-shadow: none!important; 1106 box-shadow: none!important; 1107 } 1108 #cal-slide-content a.event-item { 1109 color: rgb(66, 66, 66)!important; 1110 font-weight:bold!important; 1111 } 1112 #cal-slide-content a.event-item small { 1113 display: inline-block; 1114 } 1115 .cal-month-box, .cal-year-box, .cal-week-box { 1116 border: 1px solid rgb(234, 234, 234)!important; 1117 } 1118 .cal-year-box .row-fluid, .cal-month-box .cal-row-fluid { 1119 border-bottom: 1px solid rgb(234, 234, 234)!important; 1120 } 1121 .cal-year-box [class*="span"], .cal-month-box [class*="cal-cell"] { 1122 border-right: 1px solid rgb(234, 234, 234)!important; 1123 } 1124 .cal-year-box .row-fluid, .cal-row-fluid, #cal-day-box .cal-day-hour:nth-child(odd) { 1125 background-color: rgb(250, 250, 250)!important; 1126 } 1127 .cal-month-day span:not(.pull-right):not(.events-count-label):not(.events-label) { 1128 color: rgb(66, 66, 66)!important; 1129 } 1130 .cal-day-today span[data-cal-date] { 1131 color: rgb(34, 34, 34)!important; 1132 } 1133 .cal-year-box .row-fluid [class*="span"]:last-child, .cal-month-box .cal-row-fluid [class*="cal-cell"]:last-child { 1134 border: 0!important; 1135 } 1136 .cal-row-head { 1137 background: rgb(255, 255, 255)!important; 1138 } 1139 .day-highlight:hover, .day-highlight { 1140 background-color: rgb(234, 234, 234)!important; 1141 } 1142 .cal-event-list .event.pull-left { 1143 background-color: rgb(34, 34, 34)!important; 1144 opacity: 0.4; 1145 margin-top: 7px!important; 1146 } 1147 .cal-day-today { 1148 background-color: rgb(234, 234, 234)!important; 1149 } 1150 #cal-day-tick { 1151 border: 1px solid rgb(234, 234, 234)!important; 1152 background-color: rgb(234, 234, 234)!important; 1153 } 1154 .cal-day-weekend span[data-cal-date]{
1155 color: rgb(34, 34, 34)!important; 1156 } 1157 .rsDefault, .rsDefault .rsOverflow, .rsDefault .rsSlide, .rsDefault .rsVideoFrameHolder, .rsDefault .rsThumbs { 1158 border-radius: 10px; 1159 background: #151515!important; 1160 } 1161 .img_section .no-radius-bottom + .alert-secondary .rsDefault .rsSlide, .img_section .no-radius-bottom + .alert-secondary .rsDefault .rsOverflow { 1162 border-radius:0; 1163 } 1164 1165 #first_container .favorite, #first_container .fa.favorite { 1166 color: rgb(85, 85, 85); 1167 background: rgb(224, 224, 224); 1168 border: 1px solid rgb(224, 224, 224); 1169 white-space:nowrap!important; 1170 height:24px; 1171 padding:0 6px; 1172 border-radius:8px; 1173 } 1174 #first_container .favorite span, #first_container .fa.favorite span { 1175 font-family: 'Roboto'; 1176 white-space:nowrap!important; 1177 } 1178 #first_container .favoriteActive:not(.favorite.comments-count-badge), #first_container .fa.favoriteActive:not(.favorite.comments-count-badge .fa) { 1179 color: rgb(217, 83, 79); 1180 } 1181 #first_container .favorite::after, #first_container .fa.favorite::after { 1182 font-family: 'Roboto'; 1183 margin-left: 3px; 1184 } 1185 #first_container .favorite span, #first_container .fa.favorite span{ 1186 padding-left: 4px; 1187 font-family: 'Roboto'; 1188 font-size: 11px; 1189 letter-spacing:.5px; 1190 top:-1px; 1191 position:relative; 1192 font-weight:700; 1193 } 1194 #first_container .favorite span:empty, #first_container .fa.favorite span:empty { 1195 padding: 0; 1196 } 1197 #first_container .favorite .bookmark-number, #first_container .fa.favorite .bookmark-number { 1198 padding: 1px 0; 1199 border-radius: 100px; 1200 display: inline-block; 1201 font-weight: bold; 1202 min-width: 15px; 1203 font-size: .8em; 1204 vertical-align: bottom; 1205 height: 15px; 1206 line-height: 13px; 1207 margin-left: 3px; 1208 text-align: center; 1209 } 1210 #first_container .favorite.favoriteActive .bookmark-number:not(.comments-count-badge .bookmark-number), #first_container .fa.favorite.favoriteActive .bookmark-number { 1211 background: rgb(217, 83, 79); 1212 color: #fff; 1213 } 1214 1215 span.checkbox_value::after { 1216 content: ', '; 1217 } 1218 1219 span.checkbox_value:last-child::after { 1220 content: ''; 1221 } 1222 #first_container .member-profile-tabs .profile-tabs-nav { 1223 overflow-x: auto; 1224 overflow-y: hidden; 1225 display: flex; 1226 flex-direction: row 1227 } 1228 1229 #first_container .member-profile-tabs .profile-tabs-nav > li * { 1230 white-space: nowrap !important 1231 } 1232 1233 .member-profile-tabs .profile-tabs-nav::-webkit-scrollbar { 1234 display: none 1235 } 1236 1237 .member-profile-tabs .profile-tabs-nav { 1238 scrollbar-width: none 1239 } 1240 1241 .member-profile-tabs .tabs-container { 1242 display: flex; 1243 align-items: center; 1244 border-radius:8px 8px 0 0; 1245 } 1246 .member-profile-tabs .tabs-container > ul { 1247 border: none; 1248 } 1249 .member-profile-tabs .scroll-arrow { 1250 display: none; 1251 cursor: pointer; 1252 z-index: 2; 1253 padding: 0 15px; 1254 background-color: rgb(224, 224, 224); 1255 color: rgb(66, 66, 66); 1256 height: 41px; 1257 line-height: 42px; 1258 margin-top: 2px; 1259 margin-left: 5px; 1260 border-radius:4px; 1261 } 1262 1263 .member-profile-tabs .scroll-arrow.left-arrow { 1264 margin-right: -6px; 1265 } 1266 1267 .member-profile-tabs .scroll-arrow.right-arrow { 1268 margin-left: -10px; 1269 margin-right: 5px; 1270 } 1271 1272 .member_results .grid_element{ 1273 position:relative; 1274 overflow:hidden; 1275 display: inline-block; 1276 width:100%; 1277} 1278.member_results .grid_element::before { 1279 position: absolute; 1280 top: 24px; 1281 text-align: center; 1282 width: 200px; 1283 left: -62px; 1284 transform: rotate(-45deg); 1285 -webkit-transform: rotate(-45deg); 1286 z-index: 1; 1287 line-height: 1.2em; 1288 padding: 6px 0; 1289 font-weight: bold; 1290 letter-spacing: 1px; 1291} 1292@media only screen and (max-width: 767px) { 1293 .member_results .grid-container > hr { 1294 border-color: transparent; 1295 } 1296 .member_results .grid_element{ 1297 overflow:visible; 1298 } 1299 .member_results .grid_element::before { 1300 top: -19px!important; 1301 transform: rotate(0deg); 1302 -webkit-transform: rotate(0deg); 1303 font-size: 10px !important; 1304 letter-spacing: 0; 1305 width: auto; 1306 padding: 3px 6px; 1307 } 1308} 1309 1310 1311 .popover .popover-content img,.member_results .info_window img,.member_results .search_result_image, .featured-member-image img, .recent-member-image img, .member-review-image img, .member-profile-header > div:not(.member-badges) img, .review_photo, .contact-image, .member_result > div > div img, .member_sidebar .member_admin_sidemenu .img-thumbnail, .current-photo-container img, .current-logo-container img, .author-snapsh
1311ot .search_result_image, .saved-member { 1312 border-radius: 1000px!important; 1313 } 1314 1315 1316 1317 /* Homepage Sections Background Color Logic */ 1318 1319 1320 .homepage-section-1 { 1321 padding: 40px 0 40px; 1322 } 1323 1324 1325 .homepage-section-2 { 1326 padding: 80px 0 40px; 1327 } 1328 1329 1330 .homepage-section-3 { 1331 padding: 60px 0 60px; 1332 } 1333 1334 1335 .homepage-section-3 { 1336 background: rgb(185, 64, 167); 1337 } 1338 1339 1340 .homepage-section-4 { 1341 padding: 40px 0 40px; 1342 } 1343 1344 1345 .homepage-section-5 { 1346 padding: 40px 0 40px; 1347 } 1348 1349 1350 .homepage-section-6 { 1351 padding: 50px 0 100px; 1352 } 1353 1354 1355 .homepage-section-7 { 1356 padding: 40px 0 40px; 1357 } 1358 1359 1360 .homepage-section-8 { 1361 padding: 40px 0 40px; 1362 } 1363 1364 1365 .homepage-section-9 { 1366 padding: 40px 0 40px; 1367 } 1368 1369 1370 .homepage-section-10 { 1371 padding: 40px 0 40px; 1372 } 1373 1374 1375 .homepage-section-11 { 1376 padding: 40px 0 40px; 1377 } 1378 1379 1380 .homepage-section-12 { 1381 padding: 40px 0 40px; 1382 } 1383 1384 1385 .homepage-section-13 { 1386 padding: 40px 0 40px; 1387 } 1388 1389 1390 .homepage-section-14 { 1391 padding: 40px 0 40px; 1392 } 1393 1394 1395 .homepage-section-15 { 1396 padding: 40px 0 40px; 1397 } 1398 1399 1400 /* Additional Settings */ 1401 1402 1403 /* Streaming Widgets Title Settings */ 1404 1405 .streaming-title { 1406 text-align: center; 1407 font-size: 48px; 1408 line-height:1.5em; 1409 font-weight: normal; 1410 font-family: 'Poppins'; 1411 padding-bottom: 50px; 1412 } 1413 1414 @media only screen and (max-width: 990px) { 1415 .streaming-title { 1416 line-height:1.1em; 1417 } 1418 } 1419 1420 .streaming-title + hr { 1421 display: none; 1422 } 1423 1424 .homepage-join-module .module h2:first-of-type { 1425 color: rgb(62, 62, 62); 1426 } 1427 1428 .homepage-join-module .module{ 1429 background: rgb(250, 250, 250); 1430 border-color: rgb(238, 238, 238); 1431 } 1432 1433 .homepage-about-module .module h2:first-of-type { 1434 color: rgb(62, 62, 62); 1435 } 1436 1437 .homepage-about-module .module{ 1438 background: rgb(250, 250, 250); 1439 border-color: rgb(238, 238, 238); 1440 1441 } 1442 1443 .the-post-description > :is(h2, h3, h4, h5):not(:first-child) { 1444 font-weight: 600; 1445 margin-top: 20px; 1446 } 1447 1448 /* Keep: Ensure ul/ol respect padding and margins */ 1449 .the-post-description > :is(ul, ol) { 1450 display: flow-root; 1451 } 1452 .the-post-description li { 1453 margin-bottom: 8px; 1454 } 1455 1456 1457 .write_comment_container, .tab-content, .well:not(.well .well):not(.module .well):not(.tab-content .well):not(.well.make-connection):not(.slick-slide .well), .module:not(.module .module):not(.well .module):not(.tab-content .module):not(.search_box .module):not(.posted-by-snippet), .panel, .pic:not(.slick-slide .pic), .member_accounts > .account-form-box { 1458 box-shadow: 0 8px 8px -4px #0000001a,0 4px 4px -4px #0000001a; 1459 } 1460 1461 .img-circle, .img-rounded.img-circle, .img-circle img, .img-rounded.img-circle img, img.fr-dib.img-circle, img.fr-dib.img-rounded.img-circle { 1462 border-radius:1000px!important; 1463 } 1464 1465 .img-rounded img, img.fr-dib.img-rounded{ 1466 border-radius: 10px!important; 1467 } 1468 1469 /* Google Translate Module */ 1470 .skiptranslate{font-size:0} 1471 .goog-te-gadget-simple{border:1px solid #ccc;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,0.075) inset;color:#555} 1472 .skiptranslate.goog-te-gadget span,img.goog-te-gadget-icon{display:none!important} 1473 .goog-te-gadget .goog-te-combo{margin-bottom:-4px} 1474 .skiptranslate.goog-te-gadget select{border:1px solid #ddd;border-radius:3px;font-size:12px;padding:2px 4px;width:100%;background:#fff;margin:0;height:30px;line-height:30px;display:block;color:#555;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)} 1475 @media only screen and (max-width: 1100px) { 1476 .skiptranslate:not(.skiptranslate[style="display: none;"]){height:39px} 1477 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .header{margin-top:10px!important} 1478 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .announcement-bar{margin-top:10px} 1479 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .announcement-bar ~ .header{margin-top:0!important} 1480 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .header .mobile-main-menu{top:89px!important;height:calc(100% - 90px)!important} 1481 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .header .navbar{top:39px} 1482 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ #first_container .member_sidebar.open{top: 89px;} 1483 } 1484 @media only screen and (max-width: 767px) { 1485 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .announcement-bar.hidden-xs ~ .header{margin-top:10px!important} 1486 } 1487 1488 1489 1490</style> 1491 1492<!--GOOGLE TAG MANAGER CODE--> <!-- ON-PAGE CSS FUNCTIONS --> 1493 <style type="text/css"> 1494 .homepage_settings .search_box { 1495 max-width: 1000px; 1496} </style> 1497 <div class="header"> 1498 <div class="container"> 1499 <div class="row header-main-row"> 1500 <style type='text/css'> .logo-text:has(.logo_title:empty) { 1501 display:none 1502} </style><div id="website_logo" class="col-md-5 xs-nopad xs-hpad sm-text-center xs-bmargin header-left-container"> 1503 <a class="logo logo-image inline-block vpad sm-nopad sm-tmargin" href="https://www.answers4care.com" title="Answers 4 Care"> 1504 <img width="834" height="395" src="/images/answers4care-nobackground-logo.png" alt="Answers 4 Care">
1505 </a> 1506 <div class="clearfix"></div> 1507</div> 1508 <style type='text/css'> body input.tt-hint,body input.form-control.normal-autosuggest-input.tt-query { 1509 background-color: white !important; 1510} 1511.mini-nav:not(:has(li)) { 1512 display: none!important; 1513} 1514/* Parent Container - Main List */ 1515.mini-nav li:has(ul) { 1516 position: relative; 1517 border-radius: 8px 8px 0 0; 1518} 1519.mini-nav > li:has(ul) { 1520 padding-left: 0; 1521 padding-right: 0; 1522 background: rgb(250, 250, 250); 1523} 1524.mini-nav > li:has(ul) > a:not(.btn), .mini-nav > li:has(ul) > span { 1525 padding: 10px 15px; 1526 margin: 0!important; 1527} 1528.mini-nav > li:hover:has(ul), .mini-nav > li:hover:has(ul) { 1529 box-shadow: 0 -1px 3px rgba(34, 34, 34,0.25); 1530} 1531/* Parent Links */ 1532.mini-nav > li > a:not(.btn), .mini-nav > li > span:not(.btn) { 1533 display:inline-block; 1534 border-radius: 8px 8px 0 0; 1535} 1536.mini-nav > li:hover > a:not(.btn), .mini-nav > li:hover > span { 1537 background: rgb(250, 250, 250); 1538 display: inline-block; 1539 position: relative; 1540 z-index: 1000; 1541} 1542/* First Level Dropdowns */ 1543.mini-nav li ul { 1544 background: rgb(250, 250, 250); 1545 box-shadow: 0 0px 3px rgba(34, 34, 34,0.25), 0 5px 5px 5px rgba(34, 34, 34,0.05); 1546 text-align: left; 1547 display: none; 1548 border-radius: 0 8px 8px 8px; 1549 list-style: none; 1550 padding: 10px; 1551 position: absolute; 1552 white-space: nowrap; 1553 min-width: 130%; 1554 width: auto; 1555 top: 100%; 1556 left: 0; 1557 z-index: 999; 1558 margin-top: -1px; 1559} 1560.mini-nav li:hover > ul { 1561 display: block; 1562} 1563/* First Level Dropdown Items */ 1564.mini-nav li ul li { 1565 position: relative; 1566 display: block; 1567 width: 100%; 1568} 1569.mini-nav li ul li a, .mini-nav li ul li span { 1570 font-size: 16.65px !important; 1571 display: block; 1572 font-weight: 400; 1573 padding: 8px 12px; 1574 border-radius: 8px; 1575 text-decoration: none; 1576 width: 100%; 1577} 1578.mini-nav li ul li a:hover, .mini-nav li ul li span:hover { 1579 box-shadow: 0 0 0 25px rgba(34, 34, 34,0.05) inset; 1580} 1581/* Second Level Dropdowns */ 1582.mini-nav li ul li ul { 1583 display: none; 1584 position: absolute; 1585 top: 0; 1586 left: 100%; 1587 margin: 0; 1588 border-radius: 8px; 1589} 1590.mini-nav li ul li:hover > ul { 1591 display: block; 1592} 1593/* Edge Positioning - Last Child Dropdowns */ 1594.mini-nav > li:last-child ul { 1595 right: 0; 1596 left: auto; 1597 border-radius: 8px 0 8px 8px; 1598} 1599.mini-nav > li:last-child ul li ul { 1600 right: 100%; 1601 left: auto; 1602} 1603/* Flex Spacing Utility */ 1604.mini-nav.mini-nav-flex-spaced { 1605 display: flex; 1606 justify-content: space-between; 1607 align-items: center; 1608 flex-wrap: wrap; 1609 row-gap: 0;
1610} 1611.mini-nav.mini-nav-flex-spaced > li { 1612 flex: none; 1613 padding: 0; 1614 margin: 2px 0; 1615 order: 2; 1616} 1617.mini-nav.mini-nav-flex-spaced > li.header-member-account-links, 1618.mini-nav:has(li ul) > li.header-member-account-links { 1619 order: 1; 1620 margin-left: auto; 1621 width: 100%; 1622 margin-bottom: 10px; 1623} 1624.logged-in-member-header .mini-nav.mini-nav-flex-spaced.list-inline > li { 1625 line-height: 1em; 1626 min-height: 0; 1627} 1628@media (min-width: 992px) { 1629 .header-main-row { 1630 display: flex; 1631 align-items: center; 1632 flex-wrap: wrap; 1633 } 1634} 1635@media (max-width: 991px) { 1636 .mini-nav.mini-nav-flex-spaced { 1637 justify-content: center; 1638 } 1639 .mini-nav.mini-nav-flex-spaced > li { 1640 margin-left: 5px !important; 1641 margin-right: 5px !important; 1642 } 1643} </style><div class="col-md-7 text-right sm-text-center header-right-container nolpad xs-hpad"> 1644 <ul class="mini-nav nobmargin list-inline xs-nopad xs-tmargin tpad"> 1645 <li class='bmargin'><a href='/articles' id='link209' class='btn btn-default bold btn-block'><i class="fa fa-rss fa-fw" aria-hidden="true"></i>Blog</a></li><li class='bmargin'><a href='/about/contact' id='link267' class='btn btn-default bold btn-block'><i class="fa fa-envelope-o fa-fw" aria-hidden="true"></i> Contact</a></li><li class='bmargin'><a href='/login' id='link208' class='btn btn-default bold btn-block'><i class="fa fa-sign-in fa-fw" aria-hidden="true"></i> Member Login</a></li><li class='norpad xs-hpad xs-center-block'><a href='/the-program' id='link210' class='btn btn_get_listed bold btn-block'> <i class="fa fa-plus fa-fw"></i> List Your Business</a></li> </ul> 1646 <div class="clearfix"></div> 1647 <form action="/search_results" name="frm1" class="form-inline website-search"> 1648 <div class="input-group input-group-sm bmargin sm-autosuggest"> 1649 <span class="input-group-addon"><i class="fa fa-search"></i></span> 1650 <input type="text" 1651 placeholder="Name or Keyword" value="" name="q" 1652 class="member_search form-control input-sm" autocomplete="off"> 1653 </div> 1654 <div class="input-group input-group-sm bmargin"> 1655 <span class="input-group-addon"><i class="fa fa-location-arrow"></i></span> 1656 <input type="text" autocomplete="off" placeholder="City or Post Code" 1657 value="" id="location_google_maps_header" name="location_value" 1658 class="googleSuggest googleLocation form-control"> 1659 </div> 1660 <input type="submit" value="Search" class="btn btn-sm btn_search bmargin xs-btn-block bold"> 1661 </form> 1662 </div> 1663 </div> 1664 </div> 1665 <style type='text/css'> .mobile-main-menu .hasChildren span a { 1666 padding: 0px; 1667} 1668 1669.user_sidebar > img { 1670 width: 32px; 1671 height: 32px; 1672 position: absolute; 1673 z-index: 10; 1674 border-radius: 100px; 1675 top: -1px; 1676 object-fit: cover; 1677 left: -10px; 1678 background: rgb(224, 224, 224); 1679} 1680#member_sidebar_toggle img+.fa { 1681 display: none; 1682} 1683.main_menu, .user_sidebar, .compact-mobile-search { 1684 padding: 5px 8px; 1685 margin-right:0; 1686 min-height: 33.0333px; 1687 min-width: 38.116px; 1688} 1689.main_menu i, .user_sidebar i { 1690 font-size: 16px; 1691} 1692.navbar-nav li { 1693 float: none!Important; 1694} 1695.navbar-default{ 1696 -webkit-transition: all .6s ease-in-out; 1697 -moz-transition: all .6s ease-in-out; 1698 -o-transition: all .6s ease-in-out; 1699 transition: all .6s ease-in-out; 1700} 1701.transparent_menu { 1702 background-color: rgba(185, 64, 167,0.95)!important; 1703} 1704@media only screen and (max-width: 991px) { 1705 #popover {display: none} 1706} 1707@media only screen and (max-width: 1100px){ 1708 .mobile-main-menu{display:block!important} 1709 .navbar-toggle {display: block} 1710 #bs-main_menu .nav {display: none!important} 1711} 1712.mobile-main-menu { 1713 position: fixed; 1714 height: calc(100% - 50px)!important; 1715 width: 250px; 1716 background: rgb(185, 64, 167); 1717 z-index: 99999; 1718 right: -250px; 1719 top: 50px; 1720 display: none; 1721 -webkit-transition: all .6s ease-in-out; 1722 -moz-transition: all .6s ease-in-out; 1723 -o-transition: all .6s ease-in-out; 1724 transition: all .6s ease-in-out; 1725 overflow-y: auto!important; 1726 overflow-x: hidden!important; 1727} 1728.mobile-main-menu ul li i { 1729 color: rgb(255, 255, 255); 1730 cursor: pointer; 1731 float: right; 1732 padding: 13px; 1733} 1734.mobile-main-menu.opened{ 1735 right: 0px!important; 1736} 1737.mobile-main-menu ul li a, .mobile-main-menu ul li span { 1738 display: inline-block; 1739 float: left; 1740 -webkit-touch-callout: none; 1741 -webkit-user-select: none; 1742 -khtml-user-select: none; 1743 -moz-user-select: none; 1744 -ms-user-select: none; 1745 user-select: none; 1746 padding: 10px 0px; 1747 width: 80%; 1748 width: calc(100% - 40px); 1749} 1750.mobile-main-menu .sidebar-nav li ul { 1751 height: 0px; 1752 overflow: hidden; 1753 list-style: none; 1754 color: rgb(255, 255, 255); 1755 padding-left: 10px; 1756} 1757.mobile-main-menu .sidebar-nav li.sub_open > ul{ 1758 height: 100%; 1759} 1760.mobile-main-menu ul.sidebar-nav { 1761 position: absolute; 1762 width: 250px; 1763 margin: 0; 1764 padding: 0; 1765 list-style: none; 1766 font-size: 14px; 1767} 1768.mobile-main-menu .sidebar-nav > li { 1769 display: block; 1770 line-height: 20px; 1771 padding: 0 15px 0 20px; 1772} 1773.mobile-main-menu .sidebar-nav li a, .mobile-main-menu .sidebar-nav li span { 1774 text-decoration: none; 1775 color: rgb(255, 255, 255); 1776 padding-left:10px; 1777} 1778.mobile-main-menu .sidebar-nav li a i, .mobile-main-menu .sidebar-nav li span i { 1779 display: none; 1780} 1781 1782 </style><div class="mobile-main-menu"> 1783 <ul class="sidebar-nav"> 1784 <li class=''><a href='/home' id='link280'>Home</a></li><li class=''><a href='/search_results' id='link281'>Services</a><ul><li class=''><a href='https://www.answers4care.com/legal-financial?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZUDQzN0' id='link290'>Legal</a><ul><li class=''><a href='/elder-law-attorney?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1h' id='link287'>Elder Law Attorney</a></li><li class=''><a href='/funeral-pre-planning-or-at-need?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbU' id='link289'>Funeral Pre-Planning or At Need</a></li><li class=''><a href='/house-purchase?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1hCcGU' id='link291'>House Purchase</a></li><li class=''><a href='/medicaid-specialist?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1' id='link293'>Medicaid Specialist</a></li><li class=''><a href='/real-estate-senior-specialist?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhC' id='link294'>Real Estate (Senior Specialist)</a></li></ul></li><li class=''><a href='/in-home?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZUDQzN0taeExnVk' id='link296'>In-Home</a><ul><li class=''><a href='/certified-home-health-agency?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG
17841xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMd' id='link298'>Certified Home Health Agency</a></li><li class=''><a href='/companion-care?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJp' id='link299'>Companion Care Agency</a></li><li class=''><a href='/delivered-meals?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5LMy' id='link300'>Delivered Meals</a></li><li class=''><a href='/home-care-agency?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5LM' id='link301'>Home Care Agency</a></li><li class=''><a href='/move-manager?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5LMy9Fa' id='link302'>Move Manager</a></li><li class=''><a href='/organization-de-clutter-specialist?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN' id='link303'>Organization / De-Clutter Specialist</a></li><li class=''><a href='/technology-support?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5' id='link304'>Technology Support</a></li><li class=''><a href='/search_results?q=transportation' id='link324'>Transportation wheelchair senior</a></li></ul></li><li class=''><a href='/healthcare?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZUDQzN0taeEx' id='link305'>Healthcare</a><ul><li class=''><a href='/dementia-specialist-non-doctor?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjB' id='link306'>Dementia Specialist (Non-Doctor)</a></li><li class=''><a href='/mental-health-specialist?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjBodHNtV' id='link309'>Mental Health Specialist</a></li><li class=''><a href='/physical-therapy?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjBodHNtVlBBTVdxd' id='link311'>Physical Therapy and Occupatonal Therapy</a></li><li class=''><a href='/wound-care?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjBodHNtVlBBTVdxdnF5V1J' id='link314'>Wound Care</a></li></ul></li><li class=''><a href='/navigate-care-support?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZ' id='link315'>Navigate Care & Support</a><ul><li class=''><a href='/end-of-life-doula?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdFBWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWExFTGFK' id='link316'>End of Life Doula</a></li><li class=''><a href='/geriatric-care-managers?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdF
1784BWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWE' id='link317'>Geriatric Care Managers</a></li><li class=''><a href='/patient-advocate?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdFBWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWExFTGFKZ' id='link318'>Patient Advocate</a></li><li class=''><a href='/assisted-living-and-senior-placement?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdFBWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWE' id='link323'>Assisted Living and Senior Living Placement</a></li></ul></li><li class=''><a href='/financial-and-insurance' id='link329'>Financial & Insurance</a><ul><li class=''><a href='/financial-advisor-1' id='link288'>Financial Advisor</a></li><li class=''><a href='/search_results?q=long+term+care' id='link325'>Long Term Care Insurance Brokers</a></li><li class=''><a href='/medicare-specialist?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1' id='link292'>Medicare Specialist</a></li><li class=''><a href='/daily-money-manager-1' id='link286'>Daily Money Manager</a></li><li class=''><a href='/accounting-cpa' id='link285'>Accounting</a></li><li class=''><a href='https://www.answers4care.com/special-needs-financial-planner' id='link332'>Special Needs Financial Planner</a></li><li class=''><a href='https://www.answers4care.com/social-security-analyst' id='link333'>Social Security Analyst</a></li></ul></li></ul></li><li class=''><a href='/about' id='link282'>About</a></li><li class=''><a href='/blog' id='link283'>Blog</a></li><li class=''><a href='/the-program' id='link284'>Join Us</a></li> </ul> 1785</div> 1786<nav class="navbar navbar-default "> 1787 <div class="container container-fluid"> 1788 1789 <div class="navbar-header"> 1790 <button type="button" class="navbar-toggle collapsed main_menu" data-toggle="collapse" aria-label="main_menu"> 1791 <i class="fa fa-bars fa-fw"></i> 1792 </button> 1793 1794 1795 1796 </div> 1797 1798 1799 <div class="tablet-menu collapse navbar-collapse nopad" id="bs-main_menu"> 1800 <ul class="tablet-menu-ul nav navbar-nav nav-justified"> 1801 <li class=''><a href='/home' id='link280'>Home</a></li><li class=''><a href='/search_results' id='link281'>Services</a><ul><li class=''><a href='https://www.answers4care.com/legal-financial?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZUDQzN0' id='link290'>Legal</a><ul><li class=''><a href='/elder-law-attorney?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1h' id='link287'>Elder Law Attorney</a></li><li class=''><a href='/funeral-pre-planning-or-at-need?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbU' id='link289'>Funeral Pre-Planning or At Need</a></li><li class=''><a href='/house-purchase?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1hCcGU' id='link291'>House Purchase</a></li><li class=''><a href='/medicaid-specialist?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1' id='link293'>Medicaid Specialist</a></li><li class=''><a href='/real-estate-senior-specialist?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhC' id='link294'>Real Estate (Senior Specialist)</a></li></ul></li><li class=''><a href='/in-home?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZUDQzN0taeExnVk' id='link296'>In-Home</a><ul><li class=''><a href='/certified-home-health-agency?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG
18011xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMd' id='link298'>Certified Home Health Agency</a></li><li class=''><a href='/companion-care?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJp' id='link299'>Companion Care Agency</a></li><li class=''><a href='/delivered-meals?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5LMy' id='link300'>Delivered Meals</a></li><li class=''><a href='/home-care-agency?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5LM' id='link301'>Home Care Agency</a></li><li class=''><a href='/move-manager?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5LMy9Fa' id='link302'>Move Manager</a></li><li class=''><a href='/organization-de-clutter-specialist?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN' id='link303'>Organization / De-Clutter Specialist</a></li><li class=''><a href='/technology-support?bdt=QnViZ256cXY2dXBrcWFoTEV5UGs4YmQrWndFdHpzS2ZNNGNkUHRlQWNXR2t6VnpqZ3o5NVpOVE9jdEJKWHFxWENZRyt3dnovSG1xQUFCR1JMNFlGblRPSlNRQkovaERXcGpYaFZFOXR3MVRlVzl6T2N6aE9VYVNUd1pWY2prbWp2RElNdDMwdGIzUkN4eVFMdUdEelJpdG5' id='link304'>Technology Support</a></li><li class=''><a href='/search_results?q=transportation' id='link324'>Transportation wheelchair senior</a></li></ul></li><li class=''><a href='/healthcare?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZUDQzN0taeEx' id='link305'>Healthcare</a><ul><li class=''><a href='/dementia-specialist-non-doctor?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjB' id='link306'>Dementia Specialist (Non-Doctor)</a></li><li class=''><a href='/mental-health-specialist?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjBodHNtV' id='link309'>Mental Health Specialist</a></li><li class=''><a href='/physical-therapy?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjBodHNtVlBBTVdxd' id='link311'>Physical Therapy and Occupatonal Therapy</a></li><li class=''><a href='/wound-care?bdt=OVR1VjFITUVKT3V5N21MRXNLak9XWml0S3FhOWhGUzk3Q2gvN0hPbjY1NkI0ak45d3BpR0w2VFg4bUJtTWhoNHRSMmJXV3BrM1hjY0RkT3BtQUJPM05tcHE3bGhkTlVoUlFLMUZ4QllKSWJGYnJRK3R2N09ZenJJeWpDMGlVbHdyTU9vdVhJY0gwV3U5bjBodHNtVlBBTVdxdnF5V1J' id='link314'>Wound Care</a></li></ul></li><li class=''><a href='/navigate-care-support?bdt=eHJETC9FY08zdjNCVmtRTHNRRTZ0dTRSbXI3UExTRXpkak4xRmNUSUZlb0s4bmNhSVdlSWZseGgxUnNkWDJkMytQUDA4REJSV3hjR2R5OXE0eGtVSEMveDIxV012MjlTbEJvbVMxaTVESnpOWGRtKy96VHM5Y0c2amRXZlRDVk4zVllmY0hXZWRXMjJrcU95NnZLQjFZ' id='link315'>Navigate Care & Support</a><ul><li class=''><a href='/end-of-life-doula?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdFBWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWExFTGFK' id='link316'>End of Life Doula</a></li><li class=''><a href='/geriatric-care-managers?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdF
1801BWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWE' id='link317'>Geriatric Care Managers</a></li><li class=''><a href='/patient-advocate?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdFBWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWExFTGFKZ' id='link318'>Patient Advocate</a></li><li class=''><a href='/assisted-living-and-senior-placement?bdt=NXExZmEySGFJR25zeG1mcWZ2c2J5NXdWZWJwYzNUTUd4TUFubGdNVkNVOFJRZjRHb3R4MnA4REdlOTJkRTc4NDRMQ1VBdFBWMm1FVWZLMzFXNkdNbjYvOGZWZTd4bytkdzQ2YnlqWE9VcERYeTVnVjc0QjVkVzBuV0QrczlaNzRadEZKR3o1VzVPRjYxNXBkRktRWE' id='link323'>Assisted Living and Senior Living Placement</a></li></ul></li><li class=''><a href='/financial-and-insurance' id='link329'>Financial & Insurance</a><ul><li class=''><a href='/financial-advisor-1' id='link288'>Financial Advisor</a></li><li class=''><a href='/search_results?q=long+term+care' id='link325'>Long Term Care Insurance Brokers</a></li><li class=''><a href='/medicare-specialist?bdt=azlmazR1ZFVESEtYckxaYnpQM2ZoMG5qR1pBSUlqWllsUXFtZWlYNGdxM0VTV0tBUW5HOWtjck40WjNsdk9qM09yUit1UDlkTEJubDNKSTVnc2RDeWswT3lKZXJWaGV2T1VjRitDNmpuMSs1eUJQekRmRFpzVDU2Nnd5M0N3akNjZ0NoWDFXU3kxVUMxbUhCQ0JoVTRoY1' id='link292'>Medicare Specialist</a></li><li class=''><a href='/daily-money-manager-1' id='link286'>Daily Money Manager</a></li><li class=''><a href='/accounting-cpa' id='link285'>Accounting</a></li><li class=''><a href='https://www.answers4care.com/special-needs-financial-planner' id='link332'>Special Needs Financial Planner</a></li><li class=''><a href='https://www.answers4care.com/social-security-analyst' id='link333'>Social Security Analyst</a></li></ul></li></ul></li><li class=''><a href='/about' id='link282'>About</a></li><li class=''><a href='/blog' id='link283'>Blog</a></li><li class=''><a href='/the-program' id='link284'>Join Us</a></li> </ul> 1802 </div> 1803 </div> 1804</nav> 1805<!--CSS IF MENU IS FIXED TOP--> 1806 1807</div> 1808<div class="clearfix"></div> 1809<!-- Begin Content --> 1810<main role="main" id="main-content"> 1811<div id="first_container" class="content-container fr-view"> 1812 <div class="container"> 1813 <div class="clearfix body-content"></div> 1814 <style type="text/css"> 1815 .search_results_royalSlider .rsMainSlideImage { 1816 width: 100%!important; 1817 height: 100%!important; 1818 margin-top:0!important; 1819 object-fit: cover; /* Ensures the image covers the container without stretching */ 1820 object-position: center; /* Centers the image within the container */ 1821 } 1822 @media only screen and (max-width: 768px) { 1823 .content_w_sidebar .cal-month-box .pull-right { 1824 float: none !important; 1825 } 1826 .grid_element .img_section { 1827 flex: 0 0 100%; 1828 width: 100%; 1829 } 1830 } 1831 </style> 1832<div class="row content_w_sidebar feature-search feature-blog"> 1833 <div class='col-md-8 col-md-push-4'><div class="post-search-result-count-container"> 1834 <div class="col-sm-4 nopad xs-hpad bmargin post-search-result-count"> 1835 Showing 1 - <span class="current__amount__js">9</span> of 1836 1837 <span class="total__js">79</span> Results 1838 </div> 1839 <div class="col-sm-8 nopad text-right bmargin post-search-result-sorting"> 1840 <div class="form-inline"> 1841 </div> 1842 <div class="clearfix"></div> 1843 </div> 1844 <div class="clearfix"></div> 1845</div> 1846<div class="clearfix"></div> 1847 <div class="col-xs-12 col-sm-11 col-md-10 nopad xs-hpad pull-left feature_results_header"> 1848 <h1 class="nopad nomargin bold"> 1849 Website Blog </h1> 1850 <div class="clearfix"></div> 1851 </div> 1852 <div itemscope itemtype="https://schema.org/CollectionPage" itemid="https://www.answers4care.com/blog#entity"> 1853 <meta itemprop="name" content="Website Blog"> 1854 <meta itemprop="headline" content="Website Blog"> 1855 <meta itemprop="description" content="Find the best Aging Focused Professionals Website Blog Articles now. Discover the latest Website Blog Articles posted by Aging Focused Professionals near you."> 1856 <meta itemprop="about" content="Website Blog">
1857 <meta itemprop="keywords" content="Website Blog, Answers 4 Care, Website Blog Article"> 1858 <meta itemprop="inLanguage" content="en-US"> 1859 <link itemprop="url" href="https://www.answers4care.com/blog"> 1860 <meta itemprop="mainEntityOfPage" content="https://www.answers4care.com/blog"> 1861 <meta itemprop="copyrightYear" content="2026"> 1862 <link itemprop="copyrightHolder" href="https://www.answers4care.com/#organization"> 1863 <link itemprop="isPartOf" href="https://www.answers4care.com/#website"> 1864 <link itemprop="publisher" href="https://www.answers4care.com/#organization"> 1865 <div itemprop="mainEntity" itemscope itemtype="https://schema.org/ItemList" itemid="https://www.answers4care.com/blog#itemlist"> 1866 <meta itemprop="name" content="Website Blog"> 1867 <link itemprop="url" href="https://www.answers4care.com/blog"> 1868 <meta itemprop="description" content="Find the best Aging Focused Professionals Website Blog Articles now. Discover the latest Website Blog Articles posted by Aging Focused Professionals near you."> 1869 <meta itemprop="mainEntityOfPage" content="https://www.answers4care.com/blog"> 1870 <meta itemprop="itemListOrder" content="http://schema.org/ItemListOrderAscending"> 1871 <meta itemprop="numberOfItems" content="9"> 1872 <style type='text/css'> 1873.search_result.grid { 1874 display: grid; 1875} 1876.views > i { 1877 font-size: 18px; 1878 margin-left: 5px; 1879 border-radius: 4px; 1880 cursor: pointer; 1881 width: 30px; 1882 height: 30px; 1883 line-height: 30px; 1884 display: inline-flex; 1885 align-items: center; 1886 justify-content: center; 1887 text-align: center; 1888 vertical-align: top; 1889 transition: all 100ms linear 0ms; 1890} 1891a.gridA { 1892 font-size: 18px; 1893 text-align: center; 1894 margin: 10px 0; 1895 display: block; 1896} 1897.grid .favorite::after, .grid p + .clearfix.fpad-sm, .grid .clearfix.fpad-sm + .clearfix.fpad-sm, .map_container, .views .mapView, .grid .member-search-full-name::after { 1898 display:none; 1899} 1900.visible-lg { 1901 word-wrap: break-word; 1902} 1903.grid .post-location-snippet b + span { 1904 display: block; 1905} 1906@media only screen and (max-width: 767px) { 1907 .member_results .sort-members-select, .member_results .overall_rating_filter { 1908 float: left; 1909 width: 150px; 1910 } 1911} </style> <div class='views pull-right '> 1912 <i class='fa fa-th-list activeView listView'></i> 1913 <i class='fa fa-th js-click gridView hidden-xs'></i> 1914 <i class="fa fa-map-marker mapView"></i> 1915 </div> 1916<hr> 1917<div class="grid-container"><div class="row-fluid search_result member-level-11" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 1918 <meta itemprop="position" content="1"> 1919 <meta itemprop="url" content="/blog/2027-medicare-open-enrollment-is-here"> 1920 <meta itemprop="name" content="2027 Medicare Open Enrollment is Here"> 1921 <!-- Structured Data Markup -->
1922<script type="application/ld+json"> 1923{ 1924 "@context": "https://schema.org/", 1925 "@type": "DiscussionForumPosting", 1926 "@id": "https://www.answers4care.com/blog/2027-medicare-open-enrollment-is-here#entity", 1927 "mainEntityOfPage": { 1928 "@type": "WebPage", 1929 "@id": "https://www.answers4care.com/blog/2027-medicare-open-enrollment-is-here" 1930 }, 1931 "headline": "2027 Medicare Open Enrollment is Here", 1932 "name": "2027 Medicare Open Enrollment is Here", 1933 "author": { 1934 "@type": "Organization", 1935 "url": "https://www.answers4care.com/united-states/mineola/legal-financial/meltzer-lippe-goldstein-breitstone-llp", 1936 "name": "Meltzer, Lippe, Goldstein & Breitstone, LLP" 1937 }, 1938 "datePublished": "2026-10-05T13:57:00-04:00", 1939 "dateModified": "2026-10-05T14:19:49-04:00", 1940 "image": "/images/image-placeholder.jpg", 1941 "articleSection": "News", 1942 "about": { 1943 "@type": "Thing", 1944 "name": "News" 1945 }, 1946 "keywords": [ 1947 "News", 1948 "Answers 4 Care", 1949 "Website Blog Article" 1950 ], 1951 "inLanguage": "en-US", 1952 "wordCount": 1380, 1953 "articleBody": "2027 Medicare Open Enrollment Is HereBy Ronald Fatoullah, Esq.Medicare provides healthcare coverage for many Americans age 65 or older, as well as younger people with certain types of disabilities and medical conditions. Separate parts of Medicare cover particular categories of healthcare services.Medicare Part A covers short-term inpatient care in a hospital, skilled nursing facility, or nursing home, as well as hospice care and certain home healthcare. Medicare Part B covers doctor visits, other outpatient services, mental health care, ambulance transport, durable medical equipment, laboratory tests, and preventive screenings. Part C Medicare Advantage Plans are private insurance alternatives to original Medicare that bundle hospital, medical, and often prescription drug coverage into one plan. Part D, under original Medicare, helps cover the cost of prescription drugs (including many recommended shots or vaccines). NEW: You must be either a U.S. citizen or U.S. national, a lawful permanent resident (green card holder), a Cuban Haitian entrant, or lawfully living in the U.S. as a Compact of Free Association (COFA) migrant to get Part A and Part B benefits or join a Medicare health or drug plan.Medicare open enrollment begins October 15th and lasts until December 7th. During that time, you can join, drop, or switch Medicare Advantage or Part D drug plans. You can also return to Original Medicare from a Medicare Advantage plan.You can navigate changes to Medicare and your health insurance by doing the following: do not automatically re-enroll in your current plan as it can change from year to year. You may feel loyal to your plan, but then suddenly find out that its provider network has changed and your doctors are no longer participating. Confirm that your plan still offers the best coverage for your area and budget compared to alternatives, read the list of covered medications in Part D plans carefully. These lists are called formularies. Medicare Part D plans and pharmacy benefit managers (PBMs) re-evaluate their formularies and pricing strategies due to negotiated drug prices. As a result, it is important to check if the medication you are taking is covered before joining a plan for 2027, and seek expert help and work with an independent Medicare insurance broker who does not just work for one insurance company. Your broker can help you understand your options, particularly if you are considering a switch from Medicare Advantage to Original Medicare plus a Medigap plan. Hospital CareWhen you get inpatient hospital care, your care is measured in benefit periods, which is related to the number of days in a row you receive care. Each time you start a new benefit period, you must pay a Part A deductible of $1,736 for 2027. For Days 1-60, after you pay the deductible, you pay $0 each day. For days 61-90 you pay $434 each day. For days 91-150, you pay $868 each day. After day 150, you pay all costs. Your benefit period ends once you have been out of the hospital for 60 days in a row. If you are admitted to the hospital again after those
195360 days, a new benefit period will start. You must pay Part A deductible each time you start a new benefit period. This could be multiple times in a calendar year. If you are readmitted to the hospital prior to 60 days after your initial discharge, you remain in the previous benefit period and will not have to meet a deductible.Skilled Nursing Facility Care Medicare covers short-term skilled nursing facility care after a 3-day minimum medically necessary inpatient hospital stay (not including the day you leave the hospital) for an illness or injury related to the hospital stay. Again, your care is measured in benefit periods, which are related to the number of days in a row you get care. Each time you start a new benefit period (after 60 days in a row) you must pay $1,736 before Medicare starts to pay. However, you do not have to pay the Part A deductible for skilled nursing facility care if you already paid for care you received in a hospital during the same benefit period.Medicare Part A2027 RatesInpatient Hospital Care Days 1-60 Deductible for Each Benefit Period$1,736/ $0 each dayIn-patient Hospital Care Co-insuranceDays 61-90$434/dayIn-patient Hospital Care Co-insuranceDays 91 –150$868/dayWhile using your 60 lifetime reserve days. These are additional days that Medicare will pay for when you are in a hospital for more than 90 days. You have a total of 60 reserve days that can be used once during your lifetime. *In-patientHospital Care Days 151+Patient pays all costsSkilled Nursing Facility Daily Co-insuranceDays 21—100$217/day Medicare Part B2027 Premium(Projected)Average Standard Monthly Premium(for those receiving Social Security benefits)$218.60(May be higher depending on income, see next table)*60 Lifetime Reserve days: An extra pool of 60 days of inpatient hospital coverage per lifetime, available after you have exhausted your 90 regular days of coverage in a benefit period. To use a lifetime reserve day, you must first be formally admitted to the hospital for a medically necessary reason, and
1953your doctor must order two or more midnights of care. After your 90 regular days of coverage are used up, Medicare will pay for covered costs on your lifetime reserve days, but you will be responsible for the daily coinsurance cost. The daily coinsurance for a lifetime reserve day is a significant amount that increases each year. For example, if you have a 100-day hospital stay, you will use 10 lifetime reserve days. You would pay the daily coinsurance for those 10 days, and you would have 50 lifetime reserve days remaining for future use. Once used, lifetime reserve days cannot be replenished. You can choose not to use your lifetime reserve days if you want to save them for a future stay. This can be done at the time of admission or retroactively, as long as the election is made. Income-Related Monthly Adjustment Amount (IRMAA) is an extra premium for Medicare Parts B and D that higher-income individuals must pay (see chart below for IRMAA rates). Medicare determines the 2027 IRMAA charge in the 4th quarter of 2026. Your IRMAA determination is based on 2025 filing status and income, as it is the latest data point Medicare can obtain from the IRS to determine the 2027 IRMAA charge. IRMMA charges for Part D are available at the Social Security website https://www.ssa.gov/medicare. The official U.S. government Medicare handbook can be downloaded at Medicare and You Handbook 2027. Projected 2027 IRMMA Brackets and Surcharges for Medicare Part B Beneficiaries who file an individual tax return with income:Beneficiaries who file a joint tax return with income:Total monthly Part B premium amount:Less than or equal to $112,001Less than or equal to $224,000$218.60Greater than $112,000 and less than or equal to $142,000Greater than $224,001 and less than or equal to $284,000$306.00Greater than $142,001 and less than or equal to $177,000Greater than $284,001 and less than or equal to $354,000$437.20Greater than $177,001 and less than or equal to $212,000Greater than $354,001 and less than or equal to $424,000$568.40Greater than $212,001 and less than or equal to $499,999Greater than $424,001 and less than or equal to $749,999$699.50Greater than $500,000Greater than $750,000$743.20There are numerous changes this year and you need to do due diligence and choose the best options for you and your spouse if you are married. As noted above, enlisting an independent Medicare insurance broker who does not just work for one insurance company is most important. Your broker can help you understand your options, particularly if you are considering a switch from Medicare Advantage to Original Medicare plus a Medigap plan. Medicare is just one important part of an overall elder law long-term care plan that will likely include advance directives, living trusts, and Medicaid planning. The attorneys in the Elder Law Practice Group of Meltzer Lippe 2027can guide you through the planning process.Ronald Fatoullah, Esq. Chairs the firm’s Elder Law Practice Group and is a Partner of the firm’s Trusts & Estates Practice Group. This blog posting is for informational and educational purposes only. It is general in nature and not person or circumstance specific. This blog posting is not intended, nor should it be construed as rendering independent investment, legal or tax advice. It may but does not necessarily constitute attorney advertising.", 1954 "url": "https://www.answers4care.com/blog/2027-medicare-open-enrollment-is-here", 1955 "isPartOf": [ 1956 { 1957 "@type": "WebSite", 1958 "@id": "https://www.answers4care.com/#website" 1959 }, 1960 { 1961 "@type": "CollectionPage", 1962 "@id": "https://www.answers4care.com/blog#entity" 1963 }, 1964 { 1965 "@type": "CollectionPage", 1966 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 1967 } 1968 ], 1969 "publisher": { 1970 "@id": "https://www.answers4care.com/#organization" 1971 }, 1972 "comment": null 1973}</script>
1973 1974 <div class="grid_element"> 1975 1976 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 1977 <span> 1978 Posted 1979 10/05/2026 </span> 1980 1981 <span class="posted-by inline-block"> 1982 by 1983 <a class="bold notranslate" href="/united-states/mineola/legal-financial/meltzer-lippe-goldstein-breitstone-llp" title="Posted By Meltzer, Lippe, Goldstein & Breitstone, LLP"> 1984 Meltzer, Lippe, Goldstein & Breitstone, LLP </a> 1985 </span> 1986 1987 </div> 1988 1989 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 1990 <span class="postItem" data-userid="81" data-datatype="20" data-dataid="14" data-postid="175"></span> 1991 </div> 1992 1993 <div class="clearfix"></div> 1994 1995 1996 <div class="mid_section xs-nopad col-sm-12 nopad "> 1997 1998 <a class="h3 bold bmargin center-block" title="2027 Medicare Open Enrollment is Here" href="/blog/2027-medicare-open-enrollment-is-here"> 1999 2027 Medicare Open Enrollment is Here </a> 2000 2001 <div class="clearfix"></div> 2002 2003 <p class="xs-nomargin"> 2004 2027 Medicare Open Enrollment Is Here By Ronald Fatoullah, Esq. Medicare provides healthcare coverage for many Americans... 2005 <a class="inline-block bold" title="2027 Medicare Open Enrollment is Here" aria-label="2027 Medicare Open Enrollment is Here" href="/blog/2027-medicare-open-enrollment-is-here"> 2006 View More 2007 </a> 2008 </p> 2009 2010 <div class="clearfix"></div> 2011 2012 2013 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2014 Category 2015 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2016 News </a> 2017 </div> 2018 2019 </div> 2020 </div> 2021 <div class="clearfix"></div> 2022</div> 2023<div class="clearfix"></div> 2024<hr><div class="row-fluid search_result member-level-18" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2025 <meta itemprop="position" content="2"> 2026 <meta itemprop="url" content="/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia"> 2027 <meta itemprop="name" content="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia"> 2028 <!-- Structured Data Markup -->
2029<script type="application/ld+json"> 2030{ 2031 "@context": "https://schema.org/", 2032 "@type": "DiscussionForumPosting", 2033 "@id": "https://www.answers4care.com/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia#entity", 2034 "mainEntityOfPage": { 2035 "@type": "WebPage", 2036 "@id": "https://www.answers4care.com/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia" 2037 }, 2038 "headline": "Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia", 2039 "name": "Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia", 2040 "author": { 2041 "@type": "Organization", 2042 "url": "https://www.answers4care.com/united-states/glen-oaks/healthcare/parker-at-your-door", 2043 "name": "Parker at Your Door" 2044 }, 2045 "datePublished": "2026-10-05T10:43:00-04:00", 2046 "dateModified": "2026-10-05T10:45:39-04:00", 2047 "image": "/uploads/news-pictures/108-glen-oaks-blog-post-image-20261005104529.webp", 2048 "articleSection": "News", 2049 "about": { 2050 "@type": "Thing", 2051 "name": "News" 2052 },
2053 "keywords": [ 2054 "News", 2055 "Answers 4 Care", 2056 "Website Blog Article" 2057 ], 2058 "inLanguage": "en-US", 2059 "wordCount": 230, 2060 "articleBody": "Parker At Your Door: Making Preventive Care Part of Your CheckupAs flu season approaches, we encourage older adults to take an important step toward protecting their health. Annual influenza vaccination helps reduce the risk of serious illness, hospitalization, and complications from chronic conditions. For adults aged 65 and older, specially formulated flu vaccines offer enhanced protection, helping you stay healthy and active throughout the season.Parker At Your Door (PAYD), a physician-led medical house-call service through Parker Jewish Institute, provides comprehensive medical care in the comfort of patients’ homes. During a scheduled checkup, patients and caregivers can discuss preventive care, ask questions about vaccinations and receive guidance based on their individual health needs.Your PAYD provider can review your vaccination history, explain recommendations and help you understand when you may be due for a vaccine. These conversations are part of a broader approach to keeping patients healthy. A checkup also provides an opportunity to review medications, manage ongoing conditions and address changes or concerns about your health.By combining education, personalized guidance and routine medical care, Parker At Your Door helps patients and caregivers take an active role in preventive health throughout the year.Bringing Care HomeA medical house-call service through the New Hyde Park-based Parker Jewish Institute, Parker At Your Door serves patients throughout Brooklyn, Queens, Nassau, Suffolk and Westchester counties.To schedule a medical appointment, call 718-289-2606.", 2061 "url": "https://www.answers4care.com/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia", 2062 "isPartOf": [ 2063 { 2064 "@type": "WebSite", 2065 "@id": "https://www.answers4care.com/#website" 2066 }, 2067 { 2068 "@type": "CollectionPage", 2069 "@id": "https://www.answers4care.com/blog#entity" 2070 }, 2071 { 2072 "@type": "CollectionPage", 2073 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 2074 } 2075 ], 2076 "publisher": { 2077 "@id": "https://www.answers4care.com/#organization" 2078 }, 2079 "comment": null 2080}</script>
2080 2081 <div class="grid_element"> 2082 2083 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2084 <span> 2085 Posted 2086 10/05/2026 </span> 2087 2088 <span class="posted-by inline-block"> 2089 by 2090 <a class="bold notranslate" href="/united-states/glen-oaks/healthcare/parker-at-your-door" title="Posted By Parker at Your Door"> 2091 Parker at Your Door </a> 2092 </span> 2093 2094 </div> 2095 2096 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2097 <span class="postItem" data-userid="108" data-datatype="20" data-dataid="14" data-postid="174"></span> 2098 </div> 2099 2100 <div class="clearfix"></div> 2101 2102 <div class="img_section col-sm-4 nopad sm-bmargin"> 2103 <a title="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia" href="/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia"> 2104 <div class="alert-secondary btn-block text-center"> 2105 <img width="420" height="280" class="search_result_image center-block" alt="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia" title="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia" src="/uploads/news-pictures-thumbnails/108-glen-oaks-blog-post-image-20261005104529.webp"/> 2106 </div> 2107 </a> 2108 </div> 2109 2110 <div class="mid_section xs-nopad col-sm-8 "> 2111 2112 <a class="h3 bold bmargin center-block" title="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia" href="/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia"> 2113 Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia </a> 2114 2115 <div class="clearfix"></div> 2116 2117 <p class="xs-nomargin"> 2118 Parker At Your Door: Making Preventive Care Part of Your Checkup As flu season approaches, we encourage older adults... 2119 <a class="inline-block bold" title="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia" aria-label="Parker At Your Door: Protecting Against Flu, COVID-19 and Pneumonia" href="/blog/parker-at-your-door-protecting-against-flu-covid-19-and-pneumonia"> 2120 View More 2121 </a> 2122 </p> 2123 2124 <div class="clearfix"></div> 2125 2126 2127 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2128 Category 2129 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2130 News </a> 2131 </div> 2132 2133 </div> 2134 </div> 2135 <div class="clearfix"></div> 2136</div> 2137<div class="clearfix"></div> 2138<hr><div class="row-fluid search_result member-level-11" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2139 <meta itemprop="position" content="3"> 2140 <meta itemprop="url" content="/blog/a-deep-sharing"> 2141 <meta itemprop="name" content="A deep sharing"> 2142 <!-- Structured Data Markup -->
2143<script type="application/ld+json"> 2144{ 2145 "@context": "https://schema.org/", 2146 "@type": "DiscussionForumPosting", 2147 "@id": "https://www.answers4care.com/blog/a-deep-sharing#entity", 2148 "mainEntityOfPage": { 2149 "@type": "WebPage", 2150 "@id": "https://www.answers4care.com/blog/a-deep-sharing" 2151 }, 2152 "headline": "A deep sharing", 2153 "name": "A deep sharing", 2154 "author": { 2155 "@type": "Organization", 2156 "url": "https://www.answers4care.com/united-states/jericho/finacial-and-insurance/ryan-janowsky-financial-strategies-group", 2157 "name": "Ryan & Janowsky Financial Strategies Group" 2158 }, 2159 "datePublished": "2026-09-30T10:44:00-04:00", 2160 "dateModified": "2026-09-30T10:47:40-04:00", 2161 "image": "/uploads/news-pictures/29-jericho-blog-post-image-20260930104740.webp", 2162 "articleSection": "News", 2163 "about": { 2164 "@type": "Thing", 2165 "name": "News" 2166 }, 2167 "keywords": [ 2168 "News", 2169 "Answers 4 Care", 2170 "Website Blog Article" 2171 ], 2172 "inLanguage": "en-US", 2173 "wordCount": 266, 2174 "articleBody": "This October will mark the fifth anniversary of losing my best friend and business partner to cancer. For those of you that knew John, know that he was very active in our community and sincerely made a world of difference for many people. His bio is on this site - www.rjfsg.comWhen he left this world, he had seven grandchildren and that number will soon be eight. He and his wife Stephanie helped build a family that exemplifies what two people can create with love, devotion and genuine caring.He was a role model to many and, for me, an extraordinary mentor. The lessons never stopped—whether they were about business, relationships, or simply navigating all of life’s complexities. One page could never do justice to everything I learned from his guidance and, perhaps even more importantly, from watching him lead by example. I was blessed to have someone I could lean on for anything.There were three mindsets he never stopped reminding me about: Treat everyone with kindness.Live in the “now.”Never worry about what may not happen. Treating others with kindness may seem easy but living in the present and not worrying about what may or may not happen can be much harder. It goes against human nature to not think ahead, and certainly, we cannot disregard the importance of planning for the future. However, it is about balance. It took me years to obtain this balance and some of the most important mindsets to have may indeed take years to acquire.Peter Janowksy", 2175 "url": "https://www.answers4care.com/blog/a-deep-sharing", 2176 "isPartOf": [ 2177 { 2178 "@type": "WebSite", 2179 "@id": "https://www.answers4care.com/#website" 2180 }, 2181 { 2182 "@type": "CollectionPage", 2183 "@id": "https://www.answers4care.com/blog#entity" 2184 }, 2185 { 2186 "@type": "CollectionPage", 2187 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 2188 } 2189 ], 2190 "publisher": { 2191 "@id": "https://www.answers4care.com/#organization" 2192 }, 2193 "comment": null 2194}</script>
2194 2195 <div class="grid_element"> 2196 2197 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2198 <span> 2199 Posted 2200 09/30/2026 </span> 2201 2202 <span class="posted-by inline-block"> 2203 by 2204 <a class="bold notranslate" href="/united-states/jericho/finacial-and-insurance/ryan-janowsky-financial-strategies-group" title="Posted By Ryan & Janowsky Financial Strategies Group"> 2205 Ryan & Janowsky Financial Strategies Group </a> 2206 </span> 2207 2208 </div> 2209 2210 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2211 <span class="postItem" data-userid="29" data-datatype="20" data-dataid="14" data-postid="173"></span> 2212 </div> 2213 2214 <div class="clearfix"></div> 2215 2216 <div class="img_section col-sm-4 nopad sm-bmargin"> 2217 <a title="A deep sharing" href="/blog/a-deep-sharing"> 2218 <div class="alert-secondary btn-block text-center"> 2219 <img width="266" height="280" class="search_result_image center-block" alt="A deep sharing" title="A deep sharing" src="/uploads/news-pictures-thumbnails/29-jericho-blog-post-image-20260930104740.webp"/> 2220 </div> 2221 </a> 2222 </div> 2223 2224 <div class="mid_section xs-nopad col-sm-8 "> 2225 2226 <a class="h3 bold bmargin center-block" title="A deep sharing" href="/blog/a-deep-sharing"> 2227 A deep sharing </a> 2228 2229 <div class="clearfix"></div> 2230 2231 <p class="xs-nomargin"> 2232 This October will mark the fifth anniversary of losing my best friend and business partner to cancer. For those of... 2233 <a class="inline-block bold" title="A deep sharing" aria-label="A deep sharing" href="/blog/a-deep-sharing"> 2234 View More 2235 </a> 2236 </p> 2237 2238 <div class="clearfix"></div> 2239 2240 2241 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2242 Category 2243 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2244 News </a> 2245 </div> 2246 2247 </div> 2248 </div> 2249 <div class="clearfix"></div> 2250</div> 2251<div class="clearfix"></div> 2252<hr><div class="row-fluid search_result member-level-18" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2253 <meta itemprop="position" content="4"> 2254 <meta itemprop="url" content="/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model"> 2255 <meta itemprop="name" content="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model"> 2256 <!-- Structured Data Markup -->
2257<script type="application/ld+json"> 2258{ 2259 "@context": "https://schema.org/", 2260 "@type": "DiscussionForumPosting", 2261 "@id": "https://www.answers4care.com/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model#entity", 2262 "mainEntityOfPage": { 2263 "@type": "WebPage", 2264 "@id": "https://www.answers4care.com/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model" 2265 }, 2266 "headline": "Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model", 2267 "name": "Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model", 2268 "author": { 2269 "@type": "Organization", 2270 "url": "https://www.answers4care.com/united-states/glen-oaks/healthcare/parker-at-your-door", 2271 "name": "Parker at Your Door" 2272 }, 2273 "datePublished": "2026-09-21T09:11:00-04:00", 2274 "dateModified": "2026-09-21T09:16:26-04:00", 2275 "image": "/uploads/news-pictures/108-glen-oaks-blog-post-image-20260921091626.webp", 2276 "articleSection": "News", 2277 "about": { 2278 "@type": "Thing", 2279 "name": "News" 2280 },
2281 "keywords": [ 2282 "News", 2283 "Answers 4 Care", 2284 "Website Blog Article" 2285 ], 2286 "inLanguage": "en-US", 2287 "wordCount": 803, 2288 "articleBody": "When I meet families caring for someone with dementia, I see how this diagnosis transcends medical terminology. It reshapes daily routines and relationships. Spouses become full-time caregivers. Adult children assume unexpected responsibilities. Through our work at Parker at Your Door, it became clear that families needed a more structured, anticipatory approach to dementia care. The Dementia Guide program was designed to meet that need.At Parker Jewish Institute for Health Care and Rehabilitation, we recognize that dementia care requires more than medical intervention. Through Parker at Your Door, we provide structured, compassionate home-based support. The Medicare Dementia Guide model offers families guidance, clear strategies, and continuous assistance beyond isolated visits.The Medicare Dementia Guide model is designed for individuals living with a confirmed diagnosis of dementia who are enrolled in traditional Medicare and continue to reside in the community. Participation is voluntary and intended for those who would benefit from structured dementia-specific support alongside their existing medical care. Once enrolled, patients remain under the care of their primary provider, while our team delivers dementia-focused assessments, caregiver education, referrals, and ongoing care coordination related to cognitive decline. The model operates alongside—not in place of—primary care, strengthening communication, anticipating changes in condition, and helping families access appropriate services as needs evolve. There is no additional cost to the Medicare beneficiary for participation, and the program includes access to a respite benefit to provide temporary relief for caregivers when clinically appropriate. Respite hours are determined based on clinical assessment of caregiver need and are coordinated directly by our team to ensure appropriate scheduling and documentation in alignment with Medicare program guidelines.Dementia progresses gradually, yet each stage feels sudden and disorienting. Families initially notice memory lapses, then confront behavioral changes, medication challenges, safety concerns, and emotional strain. Care becomes reactive—a fall triggers an ER visit, agitation prompts medication adjustments, caregivers burn out. The Dementia Guide emphasizes proactive planning.We begin with comprehensive assessments examining more than cognitive function. We evaluate home safety, review medications, address behavioral issues, and assess caregiver capacity. We discuss what's working and what isn't. We prioritize family dynamics, stress levels, and communication patterns.Education is central. Families receive diagnoses without roadmaps. We provide guidance on disease progression. Understanding that late-day agitation stems from sundowning or sleep disturbances are common reduces fear and builds confidence.Medication safety is crucial. People with dementia often take multiple medications that may worsen confusion or increase falls. Our team reviews prescriptions collaboratively with physicians, translating medical recommendations into practical guidance for recognizing side effects.Behavioral challenges like agitation, wandering, or resisting help exhaust caregivers. The Dementia Guide prioritizes non-drug interventions. We identify triggers, examine routines, and address unmet needs. Simple adjustments—improved lighting, consistent schedules, simplified tasks—yield significant improvements. We guide families through implementing these changes. Caregiver support is fundamental. Long-term caregiving causes burnout, guilt, and isolation. We help families acknowledge struggles and validate their feelings. We explore respite options, community resources, and stress management techniques. Stronger caregivers improve patient outcomes. A key component of the Dementia Guide model is caregiver support groups. Dementia creates isolation, and numerous caregivers silently bear emotional burdens without recognizing others face identical struggles. Support groups establish a secure, professionally guided environment where caregivers exchange experiences, acquire practical management te
2288chniques, and receive validation from peers navigating similar journeys. These groups aren't merely discussions—they are organized goal-based sessions emphasizing education, stress reduction, behavioral techniques, and proactive planning. Families repeatedly report that connecting with others diminishes guilt, validates their feelings, and builds a sense of belonging. Future care planning begins early. As dementia erodes decision-making capacity, we facilitate discussions about healthcare proxies, care preferences, and goals. These conversations foster understanding and prevent crisis-driven decisions. The Dementia Guide model supports dementia-related care coordination and referrals, including resource linkage and communication support across the care team. Our focus is ensuring the patient’s dementia care plan is consistent, practical, and connected to the right supports as needs change. This program aligns with healthcare priorities by decreasing unnecessary hospitalizations, improving satisfaction, and optimizing medication management. Beyond metrics, it creates stability. Families transition from reactive crisis management to confident problem-solving. They have reliable support, recognize warning signs, and feel less alone. Dementia brings profound loss yet offers connection opportunities. We encourage families to cherish moments—shared music, familiar routines, small rituals. Quality of life remains achievable despite memory decline.The Dementia Guide reflects our conviction that structured, compassionate home support transforms dementia care. It integrates medical oversight, emotional support, caregiver education, and coordination. Primarily, it provides direction when families feel lost. At Parker at Your Door, we accompany families throughout this journey. Dementia changes the path, but proper support ensures families never walk it alone.", 2289 "url": "https://www.answers4care.com/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model", 2290 "isPartOf": [ 2291 { 2292 "@type": "WebSite", 2293 "@id": "https://www.answers4care.com/#website" 2294 }, 2295 { 2296 "@type": "CollectionPage", 2297 "@id": "https://www.answers4care.com/blog#entity" 2298 }, 2299 { 2300 "@type": "CollectionPage", 2301 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 2302 } 2303 ], 2304 "publisher": { 2305 "@id": "https://www.answers4care.com/#organization" 2306 }, 2307 "comment": null 2308}</script>
2308 2309 <div class="grid_element"> 2310 2311 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2312 <span> 2313 Posted 2314 09/21/2026 </span> 2315 2316 <span class="posted-by inline-block"> 2317 by 2318 <a class="bold notranslate" href="/united-states/glen-oaks/healthcare/parker-at-your-door" title="Posted By Parker at Your Door"> 2319 Parker at Your Door </a> 2320 </span> 2321 2322 </div> 2323 2324 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2325 <span class="postItem" data-userid="108" data-datatype="20" data-dataid="14" data-postid="168"></span> 2326 </div> 2327 2328 <div class="clearfix"></div> 2329 2330 <div class="img_section col-sm-4 nopad sm-bmargin"> 2331 <a title="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model" href="/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model"> 2332 <div class="alert-secondary btn-block text-center"> 2333 <img width="399" height="280" class="search_result_image center-block" alt="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model" title="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model" src="/uploads/news-pictures-thumbnails/108-glen-oaks-blog-post-image-20260921091626.webp"/> 2334 </div> 2335 </a> 2336 </div> 2337 2338 <div class="mid_section xs-nopad col-sm-8 "> 2339 2340 <a class="h3 bold bmargin center-block" title="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model" href="/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model"> 2341 Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model </a> 2342 2343 <div class="clearfix"></div> 2344 2345 <p class="xs-nomargin"> 2346 When I meet families caring for someone with dementia, I see how this diagnosis transcends medical terminology. It... 2347 <a class="inline-block bold" title="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model" aria-label="Guiding Families Through Dementia: The Parker at Your Door Medicare Dementia Guide Model" href="/blog/guiding-families-through-dementia-the-parker-at-your-door-medicare-dementia-guide-model"> 2348 View More 2349 </a> 2350 </p> 2351 2352 <div class="clearfix"></div> 2353 2354 2355 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2356 Category 2357 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2358 News </a> 2359 </div> 2360 2361 </div> 2362 </div> 2363 <div class="clearfix"></div> 2364</div> 2365<div class="clearfix"></div> 2366<hr><div class="row-fluid search_result member-level-11" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2367 <meta itemprop="position" content="5"> 2368 <meta itemprop="url" content="/blog/planning-is-emotional"> 2369 <meta itemprop="name" content="Planning is emotional"> 2370 <!-- Structured Data Markup -->
2371<script type="application/ld+json"> 2372{ 2373 "@context": "https://schema.org/", 2374 "@type": "DiscussionForumPosting", 2375 "@id": "https://www.answers4care.com/blog/planning-is-emotional#entity", 2376 "mainEntityOfPage": { 2377 "@type": "WebPage", 2378 "@id": "https://www.answers4care.com/blog/planning-is-emotional" 2379 }, 2380 "headline": "Planning is emotional", 2381 "name": "Planning is emotional", 2382 "author": { 2383 "@type": "Organization", 2384 "url": "https://www.answers4care.com/united-states/jericho/finacial-and-insurance/ryan-janowsky-financial-strategies-group", 2385 "name": "Ryan & Janowsky Financial Strategies Group" 2386 }, 2387 "datePublished": "2026-09-15T14:23:00-04:00", 2388 "dateModified": "2026-09-15T14:26:52-04:00", 2389 "image": "/uploads/news-pictures/29-jericho-blog-post-image-20260915142652.webp", 2390 "articleSection": "News", 2391 "about": { 2392 "@type": "Thing", 2393 "name": "News" 2394 }, 2395 "keywords": [ 2396 "News", 2397 "Answers 4 Care", 2398 "Website Blog Article" 2399 ], 2400 "inLanguage": "en-US", 2401 "wordCount": 318, 2402 "articleBody": "Most decisions that involve money are more emotional than people realize. Whether it is a first-time home purchase, life insurance or long-term investing, human’s natural thought processes usually gravitate towards the risks involved. This is not always a bad thing as decisions involving money need to be calculated. However, we cannot let ourselves be overcautious and either miss an opportunity or fail to plan for the future.Recently I had conversations with young couples that were looking to buy their first house while trying not to sacrifice planning for their future retirement. First, I tell them that in my opinion it’s not just a house but a home that they will be buying and it is indeed a big life decision which is quite emotional. In that market, like many markets, it may be seasonal considering when it is supposed to be the best time of year to buy based on supply of houses. Then the usual questions arise; maybe rates will come down, maybe prices will come down, what if we need to put money into the house, what if the roof blows off right after we buy it? These are all normal and typical concerns. The risk of trying to time the real estate market probably mirrors the risk of trying to time any market.We as humans may tend to worry about what may never happen. This is not to say we should be reckless with spending or controlling risk. But there is a balance between over thinking and understanding that no matter what we do to try to mitigate risk, there may be unforeseen circumstances we cannot avoid. The same goes for long-term investing, we should never try to time the markets and do what we can to mitigate risk while understanding we should not try to make decisions solely based on emotions.Peter Janowsky", 2403 "url": "https://www.answers4care.com/blog/planning-is-emotional", 2404 "isPartOf": [ 2405 { 2406 "@type": "WebSite", 2407 "@id": "https://www.answers4care.com/#website" 2408 }, 2409 { 2410 "@type": "CollectionPage", 2411 "@id": "https://www.answers4care.com/blog#entity" 2412 }, 2413 { 2414 "@type": "CollectionPage", 2415 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 2416 } 2417 ], 2418 "publisher": { 2419 "@id": "https://www.answers4care.com/#organization" 2420 }, 2421 "comment": null 2422}</script>
2422 2423 <div class="grid_element"> 2424 2425 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2426 <span> 2427 Posted 2428 09/15/2026 </span> 2429 2430 <span class="posted-by inline-block"> 2431 by 2432 <a class="bold notranslate" href="/united-states/jericho/finacial-and-insurance/ryan-janowsky-financial-strategies-group" title="Posted By Ryan & Janowsky Financial Strategies Group"> 2433 Ryan & Janowsky Financial Strategies Group </a> 2434 </span> 2435 2436 </div> 2437 2438 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2439 <span class="postItem" data-userid="29" data-datatype="20" data-dataid="14" data-postid="167"></span> 2440 </div> 2441 2442 <div class="clearfix"></div> 2443 2444 <div class="img_section col-sm-4 nopad sm-bmargin"> 2445 <a title="Planning is emotional" href="/blog/planning-is-emotional"> 2446 <div class="alert-secondary btn-block text-center"> 2447 <img width="266" height="280" class="search_result_image center-block" alt="Planning is emotional" title="Planning is emotional" src="/uploads/news-pictures-thumbnails/29-jericho-blog-post-image-20260915142652.webp"/> 2448 </div> 2449 </a> 2450 </div> 2451 2452 <div class="mid_section xs-nopad col-sm-8 "> 2453 2454 <a class="h3 bold bmargin center-block" title="Planning is emotional" href="/blog/planning-is-emotional"> 2455 Planning is emotional </a> 2456 2457 <div class="clearfix"></div> 2458 2459 <p class="xs-nomargin"> 2460 Most decisions that involve money are more emotional than people realize. Whether it is a first-time home... 2461 <a class="inline-block bold" title="Planning is emotional" aria-label="Planning is emotional" href="/blog/planning-is-emotional"> 2462 View More 2463 </a> 2464 </p> 2465 2466 <div class="clearfix"></div> 2467 2468 2469 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2470 Category 2471 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2472 News </a> 2473 </div> 2474 2475 </div> 2476 </div> 2477 <div class="clearfix"></div> 2478</div> 2479<div class="clearfix"></div> 2480<hr><div class="row-fluid search_result member-level-15" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2481 <meta itemprop="position" content="6"> 2482 <meta itemprop="url" content="/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter"> 2483 <meta itemprop="name" content="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter"> 2484 <!-- Structured Data Markup -->
2485<script type="application/ld+json"> 2486{ 2487 "@context": "https://schema.org/", 2488 "@type": "DiscussionForumPosting", 2489 "@id": "https://www.answers4care.com/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter#entity", 2490 "mainEntityOfPage": { 2491 "@type": "WebPage", 2492 "@id": "https://www.answers4care.com/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter" 2493 }, 2494 "headline": "Flu, RSV and Covid: A Senior's Guide to a Healthy Winter", 2495 "name": "Flu, RSV and Covid: A Senior's Guide to a Healthy Winter", 2496 "author": { 2497 "@type": "Organization", 2498 "url": "https://www.answers4care.com/united-states/commack/healthcare/gurwin-healthcare-system", 2499 "name": "Gurwin Healthcare System" 2500 }, 2501 "datePublished": "2026-09-14T16:42:00-04:00", 2502 "dateModified": "2026-09-14T16:50:31-04:00", 2503 "image": "/uploads/news-pictures/86-commack-blog-post-image-20260914165022.webp", 2504 "articleSection": "News", 2505 "about": { 2506 "@type": "Thing", 2507 "name": "News" 2508 },
2509 "keywords": [ 2510 "News", 2511 "Answers 4 Care", 2512 "Website Blog Article" 2513 ], 2514 "inLanguage": "en-US", 2515 "wordCount": 373, 2516 "articleBody": "As the days grow shorter and the air turns crisp, it's the perfect time to get ahead of the season — not by worrying, but by preparing. The good news: staying healthy through fall and winter has never been more within your control, and a few simple steps can make all the difference.Three respiratory viruses tend to circulate during colder months: influenza (flu), RSV and COVID-19. They can look a lot alike — cough, congestion, fatigue, fever — which is why it's worth knowing a bit about each. Flu tends to come on suddenly, often with a high fever and body aches, and remains one of the leading causes of hospitalization among older adults every year. RSV (respiratory syncytial virus) tends to hit harder as we age, since our immune response naturally shifts over time; each year, an estimated 110,000 to 180,000 adults 50 and older are hospitalized with RSV in the U.S. alone. COVID-19 is still part of the seasonal picture too, and for older adults or those managing heart, lung, or immune-related conditions, it can bring the same kind of complications as flu and RSV.The empowering part of this story is that we have real tools to help protect against all three. The flu vaccine is recommended annually for everyone 65 and older, with higher-dose and adjuvanted formulations designed specifically to give an older immune system extra support. For RSV, the vaccine is recommended for everyone 75 and older, and for adults 50 to 74 who have certain health conditions that raise their risk. A COVID-19 vaccine is also available each season, and those at highest risk, including older adults managing chronic health conditions, may want to consider it as part of their winter plan.Beyond vaccines, everyday habits still matter for all three viruses: washing hands often, keeping living spaces well-ventilated, staying home and resting when you're not feeling well and checking in with your doctor about what's right for your own health picture.Winter doesn't have to mean slowing down. With a little preparation, you can move through the season doing what you love, all while feeling your best, staying connected and enjoying every bit of life.by Meghan Tyrrel, RPh, Director of Pharmacy at Gurwin Healthcare System", 2517 "url": "https://www.answers4care.com/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter", 2518 "isPartOf": [ 2519 { 2520 "@type": "WebSite", 2521 "@id": "https://www.answers4care.com/#website" 2522 }, 2523 { 2524 "@type": "CollectionPage", 2525 "@id": "https://www.answers4care.com/blog#entity" 2526 }, 2527 { 2528 "@type": "CollectionPage", 2529 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 2530 } 2531 ], 2532 "publisher": { 2533 "@id": "https://www.answers4care.com/#organization" 2534 }, 2535 "comment": null 2536}</script>
2536 2537 <div class="grid_element"> 2538 2539 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2540 <span> 2541 Posted 2542 09/14/2026 </span> 2543 2544 <span class="posted-by inline-block"> 2545 by 2546 <a class="bold notranslate" href="/united-states/commack/healthcare/gurwin-healthcare-system" title="Posted By Gurwin Healthcare System"> 2547 Gurwin Healthcare System </a> 2548 </span> 2549 2550 </div> 2551 2552 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2553 <span class="postItem" data-userid="86" data-datatype="20" data-dataid="14" data-postid="166"></span> 2554 </div> 2555 2556 <div class="clearfix"></div> 2557 2558 <div class="img_section col-sm-4 nopad sm-bmargin"> 2559 <a title="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter" href="/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter"> 2560 <div class="alert-secondary btn-block text-center"> 2561 <img width="516" height="280" class="search_result_image center-block" alt="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter" title="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter" src="/uploads/news-pictures-thumbnails/86-commack-blog-post-image-20260914165022.webp"/> 2562 </div> 2563 </a> 2564 </div> 2565 2566 <div class="mid_section xs-nopad col-sm-8 "> 2567 2568 <a class="h3 bold bmargin center-block" title="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter" href="/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter"> 2569 Flu, RSV and Covid: A Senior's Guide to a Healthy Winter </a> 2570 2571 <div class="clearfix"></div> 2572 2573 <p class="xs-nomargin"> 2574 As the days grow shorter and the air turns crisp, it's the perfect time to get ahead of the season — not... 2575 <a class="inline-block bold" title="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter" aria-label="Flu, RSV and Covid: A Senior's Guide to a Healthy Winter" href="/blog/flu-rsv-and-covid-a-seniors-guide-to-a-healthy-winter"> 2576 View More 2577 </a> 2578 </p> 2579 2580 <div class="clearfix"></div> 2581 2582 2583 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2584 Category 2585 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2586 News </a> 2587 </div> 2588 2589 </div> 2590 </div> 2591 <div class="clearfix"></div> 2592</div> 2593<div class="clearfix"></div> 2594<hr><div class="row-fluid search_result member-level-18" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2595 <meta itemprop="position" content="7"> 2596 <meta itemprop="url" content="/blog/parker-at-your-door-gives-families-peace-of-mind"> 2597 <meta itemprop="name" content="Parker At Your Door Gives Families Peace of Mind"> 2598 <!-- Structured Data Markup -->
2599<script type="application/ld+json"> 2600{ 2601 "@context": "https://schema.org/", 2602 "@type": "DiscussionForumPosting", 2603 "@id": "https://www.answers4care.com/blog/parker-at-your-door-gives-families-peace-of-mind#entity", 2604 "mainEntityOfPage": { 2605 "@type": "WebPage", 2606 "@id": "https://www.answers4care.com/blog/parker-at-your-door-gives-families-peace-of-mind" 2607 }, 2608 "headline": "Parker At Your Door Gives Families Peace of Mind", 2609 "name": "Parker At Your Door Gives Families Peace of Mind", 2610 "author": { 2611 "@type": "Organization", 2612 "url": "https://www.answers4care.com/united-states/glen-oaks/healthcare/parker-at-your-door", 2613 "name": "Parker at Your Door" 2614 }, 2615 "datePublished": "2026-09-08T09:34:00-04:00", 2616 "dateModified": "2026-09-08T09:38:01-04:00", 2617 "image": "/uploads/news-pictures/108-glen-oaks-blog-post-image-20260908093749.webp", 2618 "articleSection": "News", 2619 "about": { 2620 "@type": "Thing", 2621 "name": "News" 2622 }, 2623 "keywords": [ 2624 "News", 2625 "Answers 4 Care", 2626 "Website Blog Article" 2627 ], 2628 "inLanguage": "en-US", 2629 "wordCount": 288, 2630 "articleBody": "Our 99-year-old, wheelchair-bound mother was content in the home she had lived in for the past 50 years. Although dementia had set in, my siblings and I had established the support and routine needed for our mom to remain comfortably at home. Yet doctor visits for wellness checks or when our mom wasn’t feeling well, were becoming increasingly challenging, especially when she was reluctant to travel to the doctor. Managing her care – from juggling medical appointments to taking time away from work to accompany her to the doctor – were a growing concern for my siblings and me. How could we ensure our mom would receive the medical attention she needed?Parker At Your Door (PAYD), which I had learned about through a friend, eliminated that concern. A medical house call service through the Parker Jewish Institute in New Hyde Park, New York, PAYD brings expert, compassionate care to our family home. In addition to providing regular wellness checks to help our mom stay healthy, PAYD provides in-home sick visits – and even telecare – when she needs medical attention. PAYD can also arrange for prescriptions, vaccines, blood tests and physical therapy, helping our mom receive the care she needs without leaving home.Parker At Your Door helps us navigate our mom’s care, supporting her overall health. I wish we’d learned about this service sooner.With medical care available at home through Parker At Your Door, we gained greater peace of mind knowing our mom’s health care needs are met, without the challenges of getting her to a doctor’s office.Parker At Your Door serves homebound patients in Brooklyn, Queens, Nassau, Suffolk and Westchester.*Testimonial by AG", 2631 "url": "https://www.answers4care.com/blog/parker-at-your-door-gives-families-peace-of-mind", 2632 "isPartOf": [ 2633 { 2634 "@type": "WebSite", 2635 "@id": "https://www.answers4care.com/#website" 2636 }, 2637 { 2638 "@type": "CollectionPage", 2639 "@id": "https://www.answers4care.com/blog#entity" 2640 }, 2641 { 2642 "@type": "CollectionPage", 2643 "@id": "https://www.answers4care.com/blog?category[]=News#entity" 2644 } 2645 ], 2646 "publisher": { 2647 "@id": "https://www.answers4care.com/#organization" 2648 }, 2649 "comment": null 2650}</script>
2650 2651 <div class="grid_element"> 2652 2653 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2654 <span> 2655 Posted 2656 09/08/2026 </span> 2657 2658 <span class="posted-by inline-block"> 2659 by 2660 <a class="bold notranslate" href="/united-states/glen-oaks/healthcare/parker-at-your-door" title="Posted By Parker at Your Door"> 2661 Parker at Your Door </a> 2662 </span> 2663 2664 </div> 2665 2666 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2667 <span class="postItem" data-userid="108" data-datatype="20" data-dataid="14" data-postid="164"></span> 2668 </div> 2669 2670 <div class="clearfix"></div> 2671 2672 <div class="img_section col-sm-4 nopad sm-bmargin"> 2673 <a title="Parker At Your Door Gives Families Peace of Mind" href="/blog/parker-at-your-door-gives-families-peace-of-mind"> 2674 <div class="alert-secondary btn-block text-center"> 2675 <img width="420" height="280" class="search_result_image center-block" alt="Parker At Your Door Gives Families Peace of Mind" title="Parker At Your Door Gives Families Peace of Mind" src="/uploads/news-pictures-thumbnails/108-glen-oaks-blog-post-image-20260908093749.webp"/> 2676 </div> 2677 </a> 2678 </div> 2679 2680 <div class="mid_section xs-nopad col-sm-8 "> 2681 2682 <a class="h3 bold bmargin center-block" title="Parker At Your Door Gives Families Peace of Mind" href="/blog/parker-at-your-door-gives-families-peace-of-mind"> 2683 Parker At Your Door Gives Families Peace of Mind </a> 2684 2685 <div class="clearfix"></div> 2686 2687 <p class="xs-nomargin"> 2688 Our 99-year-old, wheelchair-bound mother was content in the home she had lived in for the past 50 years. Although... 2689 <a class="inline-block bold" title="Parker At Your Door Gives Families Peace of Mind" aria-label="Parker At Your Door Gives Families Peace of Mind" href="/blog/parker-at-your-door-gives-families-peace-of-mind"> 2690 View More 2691 </a> 2692 </p> 2693 2694 <div class="clearfix"></div> 2695 2696 2697 <div class="nolpad hidden-sm hidden-xs font-sm text-left post-search-category inline-block"> 2698 Category 2699 <a class="bold" title="Website Blog Article - News" href="/blog?category[]=News"> 2700 News </a> 2701 </div> 2702 2703 </div> 2704 </div> 2705 <div class="clearfix"></div> 2706</div> 2707<div class="clearfix"></div> 2708<hr><div class="row-fluid search_result member-level-10" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2709 <meta itemprop="position" content="8"> 2710 <meta itemprop="url" content="/blog/deed-fraud-explained-how-to-protect-your-long-island-home"> 2711 <meta itemprop="name" content="Deed Fraud Explained: How to Protect your Long Island Home"> 2712 <!-- Structured Data Markup -->
2713<script type="application/ld+json"> 2714{ 2715 "@context": "https://schema.org/", 2716 "@type": "DiscussionForumPosting", 2717 "@id": "https://www.answers4care.com/blog/deed-fraud-explained-how-to-protect-your-long-island-home#entity", 2718 "mainEntityOfPage": { 2719 "@type": "WebPage", 2720 "@id": "https://www.answers4care.com/blog/deed-fraud-explained-how-to-protect-your-long-island-home" 2721 }, 2722 "headline": "Deed Fraud Explained: How to Protect your Long Island Home", 2723 "name": "Deed Fraud Explained: How to Protect your Long Island Home", 2724 "author": { 2725 "@type": "Organization", 2726 "url": "https://www.answers4care.com/united-states/freeport/navigate-care-support/care-answered", 2727 "name": "Care Answered" 2728 }, 2729 "datePublished": "2026-09-07T12:21:00-04:00", 2730 "dateModified": "2026-09-08T19:24:40-04:00", 2731 "image": "/uploads/news-pictures/22-freeport-blog-post-image-20260907123719.webp", 2732 "articleSection": "Website Blog Article - Aging Focused Professionals", 2733 "about": { 2734 "@type": "Thing", 2735 "name": "Website Blog Article - Aging Focused Professionals" 2736 },
2737 "keywords": [ 2738 "Website Blog Article - Aging Focused Professionals", 2739 "Answers 4 Care", 2740 "Website Blog Article" 2741 ], 2742 "inLanguage": "en-US", 2743 "wordCount": 622, 2744 "articleBody": "Deed Fraud Explained: How to Protect Your Long Island HomeDeed fraud, also known as property title theft, happens when someone steals ownership of your home without your knowledge. It can be financially and emotionally devastating, especially for older adults and their families.This scheme first became common in New York City a few years ago. Today it shows up regularly across Nassau and Suffolk Counties and in communities throughout the US.In a recent Care Answered Financial Predators: Tips to Avoid Them episode, Answers 4 Care’s Peter Janowsky of Ryan and Janowsky joined us to share tips on protecting yourself and your loved ones from fraud. We did not get a chance to cover deed fraud in that conversation, so here is what you need to know.How Does Deed Fraud Work?According to AARP, there are two common types of deed fraud.Forged deed transfers. Thieves forge a deed that transfers ownership of a property to themselves. They file it with the county clerk, who records the sale. The property is then quickly resold to an unsuspecting buyer.Deceptive deed signing. Scammers deceive a homeowner into signing a deed that transfers ownership, often with a false promise like help refinancing a mortgage or paying off overdue property taxes.Who Deed Fraud TargetsThese criminals tend to target vacant homes, properties with no mortgage, and older homeowners. For many families, a home is their most valuable asset. Sometimes it is their only asset and a way to pass down generational wealth.How Long Islanders Can Protect Themselves and Their Loved OnesRegister for a property fraud alert in Nassau or Suffolk County. Once you sign up, the county will email you any time a document is recorded using your name or property information. That gives you a chance to act fast if something looks wrong.Nassau County: www.nassaucountyny.gov/clerk/pfaSuffolk County: Homeowners Watch List (HOWL)Take steps now to protect yourself. Visit Answers4Care for other trusted professionals who can help with financial and legal matters. Care costs money. Let us save you money, time, and stress.Quick AnswersWhat is deed fraud?Deed fraud is when someone steals ownership of your home, either by forging your signature on a deed or by tricking you into signing one.Who does deed fraud target?Criminals typically target vacant homes, homes with no mortgage, and older homeowners.How can I protect my home from deed fraud?Register for a property fraud alert through your county clerk. In Nassau and Suffolk Counties, this free service emails you whenever a document is recorded using your name or property information.Property Deeds: 4 Things to KnowAARP also shared this guidance on protecting your property deed.What it is. A property deed is a document that transfers ownership from one person to another. Typically, your home deed is held by a local government land records office.Whose name is on it? If you own your home outright, the deed is in your name (and perhaps your spouse’s). If you have a mortgage, it varies by state. In some states, your name stays on the deed while the bank holds a lien on the property. In others, the bank holds the deed until the loan is paid off.How to protect it. It takes your signature to finalize a property transfer. Never sign a real estate document under pressure. Take documents to a reputable lawyer so you understand exactly what you are signing.What else to watch for. Never ignore mail sent to another name at your address, especially tax and other home-related documents. That could mean someone has illegally transferred your deed into their name.Source: Jay Inwald, Legal Services NYC", 2745 "url": "https://www.answers4care.com/blog/deed-fraud-explained-how-to-protect-your-long-island-home", 2746 "isPartOf": [ 2747 { 2748 "@type": "WebSite", 2749 "@id": "https://www.answers4care.com/#website" 2750 }, 2751 { 2752 "@type": "CollectionPage", 2753 "@id": "https://www.answers4care.com/blog#entity" 2754 } 2755 ], 2756 "publisher": { 2757 "@id": "https://www.answers4care.com/#organization" 2758 }, 2759 "comment": null 2760}</script>
2760 2761 <div class="grid_element"> 2762 2763 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2764 <span> 2765 Posted 2766 09/07/2026 </span> 2767 2768 <span class="posted-by inline-block"> 2769 by 2770 <a class="bold notranslate" href="/united-states/freeport/navigate-care-support/care-answered" title="Posted By Care Answered"> 2771 Care Answered </a> 2772 </span> 2773 2774 </div> 2775 2776 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2777 <span class="postItem" data-userid="22" data-datatype="20" data-dataid="14" data-postid="162"></span> 2778 </div> 2779 2780 <div class="clearfix"></div> 2781 2782 <div class="img_section col-sm-4 nopad sm-bmargin"> 2783 <a title="Deed Fraud Explained: How to Protect your Long Island Home" href="/blog/deed-fraud-explained-how-to-protect-your-long-island-home"> 2784 <div class="alert-secondary btn-block text-center"> 2785 <img width="300" height="168" class="search_result_image center-block" alt="Deed Fraud Explained: How to Protect your Long Island Home" title="Deed Fraud Explained: How to Protect your Long Island Home" src="/uploads/news-pictures-thumbnails/22-freeport-blog-post-image-20260907123719.webp"/> 2786 </div> 2787 </a> 2788 </div> 2789 2790 <div class="mid_section xs-nopad col-sm-8 "> 2791 2792 <a class="h3 bold bmargin center-block" title="Deed Fraud Explained: How to Protect your Long Island Home" href="/blog/deed-fraud-explained-how-to-protect-your-long-island-home"> 2793 Deed Fraud Explained: How to Protect your Long Island Home </a> 2794 2795 <div class="clearfix"></div> 2796 2797 <p class="xs-nomargin"> 2798 Deed Fraud Explained: How to Protect Your Long Island Home Deed fraud, also known as property title... 2799 <a class="inline-block bold" title="Deed Fraud Explained: How to Protect your Long Island Home" aria-label="Deed Fraud Explained: How to Protect your Long Island Home" href="/blog/deed-fraud-explained-how-to-protect-your-long-island-home"> 2800 View More 2801 </a> 2802 </p> 2803 2804 <div class="clearfix"></div> 2805 2806 2807 </div> 2808 </div> 2809 <div class="clearfix"></div> 2810</div> 2811<div class="clearfix"></div> 2812<hr><div class="row-fluid search_result member-level-17" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> 2813 <meta itemprop="position" content="9"> 2814 <meta itemprop="url" content="/blog/what-does-assisted-living-include-a-guide-to-services-and-support"> 2815 <meta itemprop="name" content="What Does Assisted Living Include? A Guide to Services and Support"> 2816 <!-- Structured Data Markup -->
2817<script type="application/ld+json"> 2818{ 2819 "@context": "https://schema.org/", 2820 "@type": "DiscussionForumPosting", 2821 "@id": "https://www.answers4care.com/blog/what-does-assisted-living-include-a-guide-to-services-and-support#entity", 2822 "mainEntityOfPage": { 2823 "@type": "WebPage", 2824 "@id": "https://www.answers4care.com/blog/what-does-assisted-living-include-a-guide-to-services-and-support" 2825 }, 2826 "headline": "What Does Assisted Living Include? A Guide to Services and Support", 2827 "name": "What Does Assisted Living Include? A Guide to Services and Support", 2828 "author": { 2829 "@type": "Organization", 2830 "url": "https://www.answers4care.com/united-states/westbury/healthcare/amber-court-assisted-living-communities", 2831 "name": "Amber Court Assisted Living Communities" 2832 }, 2833 "datePublished": "2026-09-03T13:08:00-04:00", 2834 "dateModified": "2026-09-03T13:17:55-04:00", 2835 "image": "/uploads/news-pictures/103-westbury-blog-post-image-20260903131754.webp", 2836 "articleSection": "Website Blog Article - Aging Focused Professionals", 2837 "about": { 2838 "@type": "Thing", 2839 "name": "Website Blog Article - Aging Focused Professionals" 2840 },
2841 "keywords": [ 2842 "Website Blog Article - Aging Focused Professionals", 2843 "Answers 4 Care", 2844 "Website Blog Article" 2845 ], 2846 "inLanguage": "en-US", 2847 "wordCount": 989, 2848 "articleBody": "Choosing an assisted living community is a major decision, and one of the first questions families often ask is: what does assisted living actually include? While services can vary from one community to another, assisted living is generally designed to provide older adults with the support they need while helping them maintain as much independence as possible.From personal care and meals to social activities and wellness support, assisted living combines everyday convenience with access to help when it is needed. Understanding these services can make it easier for families to compare communities and decide which setting may be the best fit for a loved one.Personal Care and Daily Living SupportOne of the main benefits of assisted living is access to help with activities of daily living, often called ADLs. These are everyday tasks that may become more difficult with age.Depending on the resident’s needs, support may include:BathingDressingGroomingToiletingMobilityGetting in and out of bed or chairsOther personal care needsThe goal is not to take over a resident’s routine. Instead, assisted living staff can provide the right level of help so residents can continue doing as much as they are able to do independently.Medication Assistance and Wellness SupportManaging medications can become complicated, especially when someone takes several prescriptions throughout the day. Many assisted living communities offer medication assistance or supervision as part of their care services.Residents may also have access to wellness staff, routine health monitoring, and coordination with outside healthcare providers. Some communities work with visiting physicians or other medical professionals to make care more convenient.The exact level of support will depend on the community and the resident’s individual needs. Families should always ask what wellness and medication services are included when comparing assisted living options.Meals and Dining ServicesMeals are another important part of daily life in assisted living. Many communities provide regular meals and snacks in a shared dining setting.This can make life easier for residents who no longer want to shop for groceries or prepare meals on their own. It can also create more opportunities for residents to spend time together.Dining programs often focus on providing balanced meals while also making mealtime enjoyable and social. Families may want to ask about menu choices, dining schedules, special dietary needs, and how meals are prepared.Housekeeping and Everyday ConvenienceKeeping up with household chores can become tiring over time. Assisted living communities often help reduce those responsibilities by offering housekeeping and other routine services.Depending on the community, this may include:CleaningLaundryLinen serviceBasic maintenanceUtilitiesTransportationThese services can give residents more time to focus on the parts of daily life they enjoy instead of worrying about household upkeep.Activities, Recreation, and Social OpportunitiesAssisted living is not only about care. Social connection is also a major part of community life.Residents may have access to a wide range of activities, including exercise classes, arts and crafts, games, music, outings, holiday celebrations, and other group programs. These opportunities can help residents stay active, meet new people, and continue enjoying familiar interests.For seniors who have been living alone, this sense of connection can be especially meaningful. A full activity calendar can make each day feel more engaging and provide residents with opportunities to participate at their own pace.Safety and Staff SupportAnother important feature of assisted living is having trained staff available to provide support when needed.For many families, simply knowing that someone is nearby can provide greater peace of mind. Staff may be able to respond to concerns, assist with mobility, help residents navigate the community, and provide support throughout the day.Assisted living communities may also have safety features such as emergency response systems, secure entrances, accessible layouts, and other measures designed to support residents.Transportation and Community AccessTransportation can become more challenging as people get older, especially if they no longer drive. Many assisted living communities offer transportation for appointments, shopping trips, outings, and other scheduled activities.This service can help residents stay connected to the larger community and maintain a greater sense of independence.Transportation options vary, so families should ask what is available, how trips are scheduled, and whether there are additional fees.What Is Usually Not Included in Assisted Living?It is also important to understand that assisted living is different from skilled nursing care.Assisted living generally does not provide the same level of around-the-clock medical treatment found in a nursing home or rehabilitation facility. Residents who require highly complex medical care may need a different type of setting.Services also vary by community. Some care needs may be included in the base monthly rate, while others may carry an additional cost. Before making a decision, families should ask for a clear explanation of what is included and what may be billed separately.Questions Families Should AskWhen comparing assisted living communities, it helps to ask specific questions about services and support.Consider asking:What personal care services are included?Is medication assistance available?How are meals and snacks provided?Are housekeeping and laundry included?What activities are offered?Is transportation available?How are changes in care needs handled?Are there additional fees for certain services?How often are care plans reviewed?Having these conversations early can make it easier to understand the true value of each community.Finding the Right Level of SupportSo, what does assisted living include? In most cases, it combines housing, personal care, meals, activities, housekeeping, safety support, and access to staff in one community setting.The exact services will depend on the resident and the community they choose. That is
2848why touring, asking questions, and reviewing care options carefully are so important.At Amber Court Assisted Living Communities, we believe the right support should help residents feel comfortable, respected, and confident in their daily lives. Assisted living can offer families peace of mind while giving older adults the opportunity to remain active, social, and as independent as possible.", 2849 "url": "https://www.answers4care.com/blog/what-does-assisted-living-include-a-guide-to-services-and-support", 2850 "isPartOf": [ 2851 { 2852 "@type": "WebSite", 2853 "@id": "https://www.answers4care.com/#website" 2854 }, 2855 { 2856 "@type": "CollectionPage", 2857 "@id": "https://www.answers4care.com/blog#entity" 2858 } 2859 ], 2860 "publisher": { 2861 "@id": "https://www.answers4care.com/#organization" 2862 }, 2863 "comment": null 2864}</script>
2864 2865 <div class="grid_element"> 2866 2867 <div class="col-xs-8 col-sm-10 nolpad font-sm bmargin posted_meta_data"> 2868 <span> 2869 Posted 2870 09/03/2026 </span> 2871 2872 <span class="posted-by inline-block"> 2873 by 2874 <a class="bold notranslate" href="/united-states/westbury/healthcare/amber-court-assisted-living-communities" title="Posted By Amber Court Assisted Living Communities"> 2875 Amber Court Assisted Living Communities </a> 2876 </span> 2877 2878 </div> 2879 2880 <div class="col-xs-4 col-sm-2 norpad favorite_button"> 2881 <span class="postItem" data-userid="103" data-datatype="20" data-dataid="14" data-postid="161"></span> 2882 </div> 2883 2884 <div class="clearfix"></div> 2885 2886 <div class="img_section col-sm-4 nopad sm-bmargin"> 2887 <a title="What Does Assisted Living Include? A Guide to Services and Support" href="/blog/what-does-assisted-living-include-a-guide-to-services-and-support"> 2888 <div class="alert-secondary btn-block text-center"> 2889 <img width="392" height="280" class="search_result_image center-block" alt="What Does Assisted Living Include? A Guide to Services and Support" title="What Does Assisted Living Include? A Guide to Services and Support" src="/uploads/news-pictures-thumbnails/103-westbury-blog-post-image-20260903131754.webp"/> 2890 </div> 2891 </a> 2892 </div> 2893 2894 <div class="mid_section xs-nopad col-sm-8 "> 2895 2896 <a class="h3 bold bmargin center-block" title="What Does Assisted Living Include? A Guide to Services and Support" href="/blog/what-does-assisted-living-include-a-guide-to-services-and-support"> 2897 What Does Assisted Living Include? A Guide to Services and Support </a> 2898 2899 <div class="clearfix"></div> 2900 2901 <p class="xs-nomargin"> 2902 Choosing an assisted living community is a major decision, and one of the first questions families often ask is: what... 2903 <a class="inline-block bold" title="What Does Assisted Living Include? A Guide to Services and Support" aria-label="What Does Assisted Living Include? A Guide to Services and Support" href="/blog/what-does-assisted-living-include-a-guide-to-services-and-support"> 2904 View More 2905 </a> 2906 </p> 2907 2908 <div class="clearfix"></div> 2909 2910 2911 </div> 2912 </div> 2913 <div class="clearfix"></div> 2914</div> 2915<div class="clearfix"></div> 2916<hr></div> 2917<div class="col-md-12 text-center nopad clickToLoadMoreContainer"> 2918 <div id="btnToLoadMorePost" class="btn btn-secondary btn-block btn-lg bold clickToLoadMoreBtn " data-page="2" data-lvl="" data-type="20" data-dc="14">Click To Load More Results</div> 2919</div><div class="clearfix clearfix-lg"></div> 2920<style> 2921 .gridBtnLazyLoadOld { 2922 clear: both; 2923 position: absolute; 2924 bottom: -30px; 2925 } 2926 .loadingMore{ 2927 pointer-events: none; 2928 } 2929 .grid-container.visible.row hr { 2930 display: none; 2931 } 2932</style> </div> 2933</div> 2934 <div class="clearfix"></div> 2935 <div class="post-pagination-block"> 2936 <ul class="pagination"> 2937 </ul> 2938 <div class="clearfix"></div> 2939 </div> 2940 <div class="clearfix"></div> 2941 </div> <!-- <div class="tab-content"> --> 2942 2943 <div class="col-md-4 col-md-pull-8"><!-- 2944 2945This search module will detect which of the default membership features' search results pages is being viewed and display the related search feature. 2946 2947IMPORTANT: This module will only work with the default search features that come with the software when they are using the default forms associated with those features. If the form or the membership feature is modified, this widget may not work as expected. 2948 2949--> 2950 2951 2952<div class="module"> 2953 <h2>Website Blog Article Search</h2> 2954 2955 <form class="form" action="/blog" method="get"> 2956 <div class="input-group md-autosuggest bmargin"> 2957 <span class="input-group-addon"><i class="fa fa-search"></i></span> 2958 <input type="text" class="form-control blogs_search md-autosuggest-input" id="keyword" placeholder="Keyword (Optional)" name="q" value=""> 2959 </div> 2960 <div class="form-group bmargin"> 2961 <select name="category[]" multiple data-selected-text-format="count>
29612" id="type_blogArticle" class="selectpicker" title="Select Category"> 2962 <option value="">All Categories</option> 2963 <option value="News">News</option> </select> 2964 </div> 2965 <div class="form-group nobmargin"> 2966 <button type="submit" class="btn btn-primary btn-block">Search Now</button> 2967 </div> 2968 </form> 2969</div><div class="module newsletter-sign-up-form"> 2970 <h2 class="bpad text-center">Join Our Newsletter</h2> 2971 <a href="#" data-toggle="modal" data-target="#newsletter_subscribe_modal" class="btn btn-primary btn-block"> 2972 Click to Subscribe 2973 </a> 2974</div> 2975 2976<div class="modal fade" id="newsletter_subscribe_modal" tabindex="-1" role="dialog" aria-hidden="true"> 2977 <div class="modal-dialog"> 2978 <div class="modal-content"> 2979 <div class="container-fluid"> 2980 <div class="row"> 2981 <div class="col-md-12"> 2982 <br> 2983 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 2984 <span aria-hidden="true">×</span> 2985 </button> 2986 <h3 class="nomargin"> 2987 Join Our Newsletter 2988 </h3> 2989 <hr> 2990 <div class="newsletter_modal_form_container"> 2991 <style type="text/css">label span.required { color: #B94A48; }span.help-inline, span.help-block {font-size: .9em; }</style><form action="/api/widget/json/get/Bootstrap%20Theme%20-%20Module%20-%20Newsletter%20Actions" id="newsletter_modal_signup_380" method="post" labelwidth="100" labelpaddingtop="0.5em" enctype="multipart/form-data" form_action_type="widget" form_action_div=".newsletter_modal_form_container" return_data_type="" name="newsletter_modal_signup_380" class=" "><input type="hidden" name="sized" value="0" id="newsletter_modal_signup_380-element-0"/><input type="hidden" name="mysql_real_escape_string_runned" value="1" id="newsletter_modal_signup_380-element-1"/><input type="hidden" name="form" value="myform" id="newsletter_modal_signup_380-element-2"/><input type="hidden" name="formname" value="newsletter_modal_signup" id="newsletter_modal_signup_380-element-3"/><input type="hidden" name="dowiz" value="1" id="newsletter_modal_signup_380-element-4"/><input type="hidden" name="save" value="1" id="newsletter_modal_signup_380-element-5"/><input type="hidden" name="url_origin_pars" value="/blog" id="newsletter_modal_signup_380-element-6"/><input type="hidden" name="action" autocomplete="off" value="subscribe" id="newsletter_modal_signup_380-element-7"/><div class="form-group"><input type="text" name="first_name" placeholder="Name" autocomplete="off" value class="form-control control-group form-control " id="newsletter_modal_signup_380-element-8"/></div><div class="form-group"><input type="email" name="email" required placeholder="Enter email address" autocomplete="off" value class="form-control control-group form-control" id="newsletter_modal_signup_380-element-9"/></div><div class="form-group"><div class="form-group security_question_label"> 2992 <div id="newsletter_modal_signup_380-captchaContainer" class="control-group"> 2993 <div class="g-recaptcha" id="newsletter_modal_signup_380-google-recaptcha"></div> 2994 </div> 2995 <small class="help-block" id="recaptcha_error" style="display:none;" data-fv-validator="notEmpty" data-fv-for="recaptcha" data-fv-result="INVALID" />The security check was not completed successfully.</small> 2996 <div class="clearfix bmargin"></div> 2997 <input type="hidden" name="recaptcha" id="newsletter_modal_signup_380-rcap"> 2998</div> 2999 <style> 3000 .modal .g-recaptcha-scale, .col-md-4 .g-recaptcha-scale, .col-md-3 .g-recaptcha-scale, .col-lg-3 .g-recaptcha-scale, .col-lg-4 .g-recaptcha-scale { 3001 transform: scale(0.77); 3002 -webkit-transform: scale(0.77); 3003 transform-origin: 0 0; 3004 -webkit-transform-origin: 0 0; 3005 margin-bottom: -15px; 3006 } 3007 3008 .modal #newsletter_modal_signup_380-captchaContainer, .col-md-4 #newsletter_modal_signup_380-captchaContainer, .col-md-3 #newsletter_modal_signup_380-captchaContainer, .col-lg-3 #newsletter_modal_signup_380-captchaContainer, .col-lg-4 #newsletter_modal_signup_380-captchaContainer { 3009 transform: scale(0.77); 3010 -webkit-transform: scale(0.77); 3011 transform-origin: 0 0; 3012 -webkit-transform-origin: 0 0; 3013 margin-bottom: -15px; 3014 } 3015 </style> 3016
3016<script type="text/javascript"> 3017 if(typeof formsFound == "undefined"){ 3018 var formID = ''; 3019 var currentCaptcha = {}; 3020 var captchaHolders = {}; 3021 var formsFound = {}; 3022 var captchaApiRequested = false; 3023 /* The forms the visitor has actually interacted with - only these get a widget. */ 3024 var captchaArmedForms = []; 3025 /* api.js stays lazy - nothing is fetched from Google until the visitor actually 3026 touches the form. 'click' alone was too narrow: a keyboard-only visitor tabs in 3027 and presses Enter without ever clicking, so api.js never loaded, the captcha 3028 never rendered, and the form POSTed an empty token. */ 3029 var captchaTriggerEvents = ['click', 'keydown', 'focusin', 'touchstart']; 3030 3031 window.addEventListener('load', () => { 3032 formID = document.querySelectorAll('[name="recaptcha"]'); 3033 if (typeof formID != "undefined" && formID !== null) { 3034 for (let i = 0; i < formID.length; i++) { 3035 let formIDForm = formID[i].closest('form'); 3036 let captchaHolder = formIDForm.querySelector(".g-recaptcha"); 3037 3038 if (typeof formsFound[formIDForm.id] != "undefined") { 3039 formsFound[formIDForm.id]['counter']++; 3040 }else{ 3041 formsFound[formIDForm.id] = {'counter' : 1}; 3042 } 3043 3044 formIDForm.setAttribute('data-counter', formsFound[formIDForm.id]['counter']); 3045 captchaHolder.setAttribute('id',captchaHolder.id+'-'+formsFound[formIDForm.id]['counter']); 3046 3047 if (typeof formIDForm != "undefined" && formIDForm !== null) { 3048 captchaTriggerEvents.forEach( evt => 3049 formIDForm.addEventListener(evt, reCaptchaOnFormInteraction, false) 3050 ); 3051 } 3052 } 3053 } 3054 }); 3055 } 3056 3057 function reCaptchaOnFormInteraction(event) { 3058 if (event && event.currentTarget) { 3059 captchaArmForm(event.currentTarget); 3060 } 3061 if (captchaApiRequested) { 3062 renderArmedCaptchas(); 3063 return; 3064 } 3065 captchaApiRequested = true; 3066 3067 var head = document.getElementsByTagName('head')[0]; 3068 var script = document.createElement('script'); 3069 script.type = 'text/javascript'; 3070 script.src = 'https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl=en'; 3071 head.appendChild(script); 3072 } 3073 3074 var captchaArmForm = function (formEl) { 3075 if (!formEl) { 3076 return; 3077 } 3078 for (var a = 0; a < captchaArmedForms.length; a++) { 3079 if (captchaArmedForms[a] === formEl) { 3080 return; 3081 } 3082 } 3083 captchaArmedForms.push(formEl); 3084 }; 3085 3086 var captchaSolvedCallback = function (holder) { 3087 return function () { 3088 var formEl = holder.closest('form'); 3089 if (!formEl) { 3090 return; 3091 } 3092 $(formEl).find('.security_question_label').removeClass('has-error'); 3093 $(formEl).find('#recaptcha_error').css('display', 'none'); 3094 var notification = document.getElementById(formEl.id + '-notification'); 3095 if (notification && notification.classList.contains('alert-danger-subtle')) { 3096 $(notification).slideUp(); 3097 } 3098 }; 3099 }; 3100 3101 var renderArmedCaptchas = function () { 3102 if (typeof grecaptcha === "undefined" || typeof grecaptcha.render !== "function") { 3103 return; 3104 } 3105 for (var f = 0; f < captchaArmedForms.length; f++) { 3106 var holder = captchaArmedForms[f].querySelector('div[class=g-rec
3106aptcha]'); 3107 3108 if (!holder || !holder.id || holder.getClientRects().length === 0) { 3109 continue; 3110 } 3111 /* Guard a second render: grecaptcha throws on an element it already claimed. */ 3112 if (typeof captchaHolders[holder.id] === "undefined") { 3113 captchaHolders[holder.id] = grecaptcha.render(holder.id, { 3114 'sitekey': '6LcQwVQrAAAAADGNrTr3nlpLXDAgaUYdIWOhcaKw', 3115 'callback': captchaSolvedCallback(holder) 3116 }); 3117 } 3118 } 3119 }; 3120 3121 var onloadCallback = function (event) { 3122 renderArmedCaptchas(); 3123 }; 3124 3125 </script>
vendor: 1 bytes, line 3125
3125
3126<script> 3127 $(document).ready(function(){ 3128 /* Implicit submission (Enter inside a field) fires 'submit' without firing a click on 3129 the submit button, so the click guard below never sees it and the form POSTed an 3130 empty token. Bound on document/capture so it runs before FormValidation's own 3131 handler on the form - at AT_TARGET the capture flag does not order listeners, so a 3132 listener on the form itself would not reliably win. Native HTMLFormElement.submit() 3133 does not dispatch 'submit', so the solved-captcha path below is unaffected. */ 3134 var captchaGuardedForm = document.getElementById('newsletter_modal_signup_380'); 3135 if (captchaGuardedForm) { 3136 document.addEventListener('submit', function (event) { 3137 if (event.target !== captchaGuardedForm) { 3138 return; 3139 } 3140 3141 var formId = captchaGuardedForm.id; 3142 var captchaHolderKey = formId + "-google-recaptcha-" + $(captchaGuardedForm).data('counter'); 3143 var captchaRendered = typeof captchaHolders[captchaHolderKey] != "undefined"; 3144 3145 if (captchaRendered && grecaptcha.getResponse(captchaHolders[captchaHolderKey]) !== "") { 3146 $("#" + formId + " .security_question_label").removeClass("has-error"); 3147 $("#" + formId + " #recaptcha_error").css("display", "none"); 3148 return; 3149 } 3150 3151 /* Unsolved, or api.js still in flight: either way there is no token to send. */ 3152 event.preventDefault(); 3153 event.stopImmediatePropagation(); 3154 $("#" + formId + " .security_question_label").addClass("has-error"); 3155 $("#" + formId + " #recaptcha_error").css("display", "block"); 3156 return false; 3157 }, true); 3158 } 3159 $("#newsletter_modal_signup_380 input[type=submit]").unbind('click'); 3160 $("#newsletter_modal_signup_380 input[type=submit]").click(function (event) { 3161 3162 var formId = $(this.form).attr('id'); 3163 var captchaHolderKey = formId + "-google-recaptcha-" +$(this.form).data('counter'); 3164 3165 if (typeof captchaHolders[captchaHolderKey] != "undefined") { 3166 if (grecaptcha.getResponse(captchaHolders[captchaHolderKey]) === "") { 3167 event.preventDefault(); 3168 $("#" + formId).formValidation('validate'); 3169 $("#" + formId + " .security_question_label").addClass("has-error"); 3170 $("#" + formId + " #recaptcha_error").css("display", "block"); 3171 return false; 3172 } 3173 3174 /* Solved captcha: clear the error UI and let the click proceed untouched. 3175 The browser then fires a REAL, button-initiated submit event, so 3176 FormValidation runs its normal chain (success.form.fv -> AJAX modal on 3177 checkout / native POST on login). Re-submitting here artificially broke 3178 both ways: native form.submit() skips the FV chain (checkout rendered the 3179 raw JSON response), and jQuery .submit() fires a synthetic submit that FV 3180 refuses, leaving the form stuck after the first error (Bug 2). */ 3181 $("#" + formId + " .security_question_label").removeClass("has-error"); 3182 $("#" + formId + " #recaptcha_error").css("display", "none"); 3183 } 3184 }); 3185 }); 3186</script>
3186</div><div class="form-group"><input type="hidden" name="bd_hpc" autocomplete="off" value class="form-control control-group " id="newsletter_modal_signup_380-element-12"/></div><div class="form-actions"><input type="submit" value="Subscribe Now" name class="btn btn-primary btn-block btn-lg bold " id="newsletter_modal_signup_380-element-13"/></div><input type='hidden' name='origin' value='/blog'></form>
3186<script type="text/javascript">jQuery(document).ready(function() { jQuery("#newsletter_modal_signup_380").bind("submit", function() { 3187 });}); </script>
3187 </div> 3188 <br> 3189 </div> 3190 </div> 3191 </div> 3192 </div> 3193 </div> 3194</div><div class="module member-join-offer"> 3195 <h2>Join Our Community</h2> 3196 <p> 3197 <b>1.</b> Register a member account<br> 3198 <b>2.</b> Create a searchable listing<br> 3199 <b>3.</b> Connect with more clients 3200 </p> 3201 <a title="Get Listed Today" href="/the-program" class="btn btn-primary btn-block">Get Listed Today</a> 3202</div> 3203 </div> 3204 3205 </div> 3206 <div class="clearfix"></div> 3207 </div> 3208</div> 3209</main> 3210<!-- End Content --> 3211<div class="clearfix footer-clear-element clearfix-lg"></div> 3212 3213<div class="footer"> 3214 <div class="container"> 3215 <div class="row"> 3216 <ul class="footer_menu sm-text-center"> 3217 <li class='col-md-offset-3 col-md-6 fpad-xl vmargin'><a href='/the-program' id='link212' class='btn btn_footer_get_listed btn-lg btn-block bold center sm-block' style='white-space:normal'>List Your Business Now <i class="fa fa-plus fa-fw"></i></a></li><li class='col-md-offset-3 col-md-6 tpad tmargin sm-text-center'><span id='link211' class='text-center'> <style>.network-icon.twitter,.network-icon.tiktok{background:#000}</style> 3218<div class="list-social-links"> 3219 <a class="network-icon contact" href="/about/contact" title="Contact Us Answers 4 Care"> 3220 <i class="bi bi-envelope"></i> 3221 </a> 3222 <a class="network-icon facebook" href="https://www.facebook.com/profile.php?id=61566999383271" target="_blank" title="Answers 4 Care Facebook"> 3223 <i class="bi bi-facebook"></i> 3224 </a> 3225 3226 3227 <a class="network-icon linkedin" href="https://www.linkedin.com/company/answers-4-care" target="_blank" title="Answers 4 Care LinkedIn"> 3228 <i class="bi bi-linkedin"></i> 3229 </a> 3230 <a class="network-icon youtube" href="https://www.youtube.com/@careanswered516" target="_blank" title="Answers 4 Care YouTube"> 3231 <i class="bi bi-youtube"></i> 3232 </a> 3233 3234 <a class="network-icon instagram" href="https://www.instagram.com/answers4care" target="_blank" title="Answers 4 Care Instagram"> 3235 <i class="bi bi-instagram"></i> 3236 </a> 3237 <div class="clearfix"></div> 3238</div></span></li><li class='col-md-5'><span id='link157' class='head'> Answers 4 Care</span><ul><li class=''><a href='https://www.answers4care.com/about' id='link158' class='content'>About</a></li><li class=''><a href='https://www.answers4care.com/faq?bdt=SEVLSFpFbWNKQ0tXZlowL3BzVDZ4RlcyU2dNR0NLc1RpdW9zZ0lTZnJIQURSOEIzUUxXR1pWT3JoTDAzOW05SWJWQUNneDQrT2pJQ1ZPeUxvNzlWS3hYT3ZhUnJGV1hLTHJDcnV5NU9KTjFmRHEyaTQwV2xXbGpIR3lyK0N1eGc4L2VLMVowZUovc1YxNWJJYXRZQlBqNnlpMm1OeTJvMkl1NU' id='link319'>Frequently Asked Questions</a></li></ul></li><li class='col-md-2 col-md-offset-1'><span id='link159' class='head'> Service Pros</span><ul><li class=''><a href='/the-program' id='link161'>List Your Business</a></li></ul></li><li class='col-md-2'><span id='link162' class='head'> Explore</span><ul><li class=''><a href='/categories' id='link163'>Browse Categories</a></li><li class=''><a href='/locations' id='link164'>Browse Locations</a></li></ul></li><li class='col-md-2'><span id='link165' class='head'> Support</span><ul><li class=''><a href='https://www.answers4care.com/questions-to-ask' id='link320'>The Right Questions To Ask</a></li><li class=''><a href='/login/retrieval' id='link166'>Password Retrieval</a></li><li class=''><a href='/about/contact' id='link167'>Contact Us</a></li></ul></li><li class='vmargin'><span id='link268'> <div class="clearfix"></div></span></li><li class=''><a href='https://www.answers4care.com/about/privacy' id='link277'>Privacy Policy</a><ul><li class=''><a href='https://www.answers4care.com/about/terms' id='link278'>Terms of Use</a></li></ul></li><li class=''><span id='link322'> © 2025 Answers 4 Care. All rights reserved.</span></li> </ul> 3239 </div> 3240 </div> 3241</div><style type='text/css'> .scrollup { 3242 border-radius: 3px; 3243 width: 40px; 3244 height: 40px; 3245 opacity: 0.4; 3246 position: fixed; 3247 bottom: 30px; 3248 right: 30px; 3249 display: none; 3250 background: rgba(119, 119, 119, 0.8); 3251 z-index: 1000000; 3252} 3253.scrollup i { 3254 font-size: 36px; 3255 color: white; 3256 position: relative; 3257 top: 0px; 3258 left: 10px; 3259} </style> <div class="myModal modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="mySmallMod
3259alLabel" 3260 data-backdrop="static" data-keyboard="false"> 3261 <div class="modal-dialog" role="document"> 3262 <div class="modal-content"> 3263 <div class="modal-body nohpad nobpad"> 3264 <button type="button" style="z-index:10;position:absolute;right:15px;" class="close hmargin" 3265 data-dismiss="modal">× 3266 </button> 3267 <style> 3268 .member-login-container:not(.modal .module) { 3269 width: 555px; 3270 max-width: 100%; 3271 margin-left: auto; 3272 margin-right: auto; 3273 margin-bottom:0; 3274 background-color: rgb(255, 255, 255)!important; 3275 border-color: rgb(234, 234, 234)!important; 3276 color: rgb(34, 34, 34)!important; 3277 } 3278 .login-register-tabs, .login-register-content { 3279 width: 555px!important; 3280 max-width: 100%; 3281 margin-left: auto!important; 3282 margin-right: auto!important; 3283 background-color: rgb(234, 234, 234); 3284 } 3285 .login-register-content { 3286 background: transparent; 3287 padding: 0; 3288 border: none; 3289 } 3290 .login-register-content h2, .login-register-content h2+hr, .login-register-content .account-menu-title { 3291 display: none!important; 3292 } 3293 .express_login_create_account_prefix hr { 3294 margin: 15px 0 10px; 3295 }
3296 .modal-content #containerFBLogin, .modal-content #containerGoogleLogin { 3297 margin:15px 0; 3298 } 3299 3300 /* CSS When Login Form and Express Registration Rendered in Sidebar */ 3301 .col-md-3 .bd-chat-well-container,.col-md-4 .bd-chat-well-container { 3302 padding: 15px 10px; 3303 } 3304 .col-md-3 .bd-chat-center-text,.col-md-4 .bd-chat-center-text { 3305 margin: 0; 3306 font-size: 20px; 3307 padding: 0 15px; 3308 } 3309 .col-md-3 .member-login-page-container .login-register-tabs *, .col-md-4 .member-login-page-container .login-register-tabs * { 3310 font-size: 12px; 3311 line-height: 1.2em; 3312 vertical-align: bottom; 3313 } 3314 .col-md-3 .member-login-page-container .login-register-tabs a, .col-md-4 .member-login-page-container .login-register-tabs a { 3315 padding: 5px !important; 3316 height: 50px; 3317 vertical-align: middle; 3318 display: table-cell !important; 3319 width: 1%; 3320 } 3321 .col-md-3 .member-login-page-container .login-register-content, .col-md-4 .member-login-page-container .login-register-content { 3322 padding: 0; 3323 } 3324 .col-md-3 .member-login-container, .col-md-4 .member-login-container { 3325 padding: 15px !important; 3326 font-size: 13px; 3327 } 3328 .col-md-3 .member-login-page-container .input-lg, .col-md-4 .member-login-page-container .input-lg { 3329 height: 34px; 3330 padding: 6px 12px; 3331 font-size: 14px; 3332 } 3333 .col-md-3 .member-login-page-container .security_question_label, .col-md-4 .member-login-page-container .security_question_label { 3334 transform: scale(.85); 3335 margin: -1.15em -1.15em 0; 3336 } 3337 .col-md-3 #containerFBLogin, .col-md-4 #containerFBLogin, .col-md-3 #containerGoogleLogin, .col-md-4 #containerGoogleLogin, .col-md-3 .login-cta-buttons li, .col-md-4 .login-cta-buttons li { 3338 width: 100%; 3339 display: block; 3340 margin-top:5px; 3341 } 3342 .col-md-3 .login-cta-buttons li, .col-md-4 .login-cta-buttons li { 3343 padding:0 3344 } 3345 .col-md-3 .login-cta-buttons ul.nav, .col-md-4 .login-cta-buttons ul.nav { 3346 margin-top: -10px; 3347 } 3348 .col-md-3 #googleAction, .col-md-3 #facebookAction, .col-md-4 #googleAction, .col-md-4 #facebookAction { 3349 padding: 0; 3350 min-height: 0; 3351 font-size: 14px; 3352 margin: 0; 3353 } 3354 .col-md-3 #googleAction img, .col-md-3 #facebookAction img, .col-md-4 #googleAction img, .col-md-4 #facebookAction img { 3355 height: 36px !important; 3356 margin-right: 5px; 3357 position: relative!important; 3358 display: inline-block; 3359 } 3360 @media only screen and (max-width: 767px) { 3361 .col-md-3 .member-login-page-container .login-register-tabs a, .col-md-4 .member-login-page-container .login-register-tabs a { 3362 display: block !important; 3363 width: 100%; 3364 line-height: 40px; 3365 } 3366 3367 #containerGoogleLogin { 3368 text-align: center; 3369 margin-top: 10px; 3370 } 3371 #containerGoogleLogin #gBtn { 3372 display: inline-block; 3373 } 3374 } 3375 </style> 3376 <div class="row member-login-page-container"> 3377 <div class="fpad-lg novpad"> 3378 3379 3380 <div class="module fpad-xl member-login-container"> 3381 <style type="text/css">label span.required { color: #B94A48; }span.help-inline, span.help-block {font-size: .9em; }</style><form action="/api/widget/json/get/Bootstrap%20Theme%20-%20Member%20Login%20Page" id="member_login_190" method="post" labelwidth="100" labelpaddingtop="0.5em" enctype="multipart/form-data" form_action_type="redirect" form_action_div return_data_type="" name="member_login_190" class=" ">
3381<input type="hidden" name="sized" value="0" id="member_login_190-element-0"/><input type="hidden" name="mysql_real_escape_string_runned" value="1" id="member_login_190-element-1"/><input type="hidden" name="form" value="myform" id="member_login_190-element-2"/><input type="hidden" name="formname" value="member_login" id="member_login_190-element-3"/><input type="hidden" name="dowiz" value="1" id="member_login_190-element-4"/><input type="hidden" name="save" value="1" id="member_login_190-element-5"/><input type="hidden" name="url_origin_pars" value="/blog" id="member_login_190-element-6"/><input type="hidden" name="action" autocomplete="off" value="login" id="member_login_190-element-7"/><h2 class="nomargin member-login-h2-form-title">Member Login</h2><hr><style type='text/css'> #containerGoogleLogin #gBtn { 3382 display: inline-block; 3383 text-align: center; 3384 width: 216px; 3385} 3386 3387.module #containerFBLogin #facebookAction img, .module #containerFBLogin #facebookAction img { 3388 position: absolute !important; 3389} 3390.module #containerFBLogin a#facebookAction { 3391 max-width: 200px; 3392 position: relative; 3393 left: -8px; 3394 3395} </style><div class="form-group"><label class="vertical-label bd-email" for="member_login_190-element-10"><span class="required">* </span>Email Address</label><input type="email" name="email" required placeholder="[email protected]" autocomplete="off" value class="form-control input-lg" id="member_login_190-element-10"/></div><div class="form-group"><label class="vertical-label bd-password" for="member_login_190-element-11"><span class="required">* </span>Password</label> 3396 <style> 3397 #togglePassword { 3398 background: none; 3399 border: none; 3400 cursor: pointer; 3401 font-weight: bold; 3402 font-size: .85em; 3403 position: absolute; 3404 right: 5px; 3405 top: 0; 3406 } 3407 </style><button type="button" tabindex="-1" id="togglePassword" onclick="showPassword(this);"> <i class="fa fa-lock" aria-hidden="true"></i></button> 3408
3408<script> 3409 function showPassword(node){ 3410 const parent = node.closest('.form-group'); 3411 const passwordField = parent.querySelector(`input[type='password'], input[type='text']`); 3412 const isPassword = passwordField.getAttribute('type') === 'password'; 3413 passwordField.setAttribute('type', isPassword ? 'text' : 'password'); 3414 const iconHTML = isPassword ? `<i class="fa fa-unlock" aria-hidden="true"></i>` : `<i class="fa fa-lock" aria-hidden="true"></i>`; 3415 node.innerHTML = iconHTML; 3416 } 3417 </script>
3417<input type="password" name="pass" required placeholder="Enter Password" autocomplete="off" value class="form-control input-lg" id="member_login_190-element-11"/></div><span class="help-block bpad bmargin notmargin"> <a href="/login/retrieval">Forgot Password? Click to Reset Password</a></span><div class="form-group"><div class="form-group security_question_label"> 3418 <div id="member_login_190-captchaContainer" class="control-group"> 3419 <div class="g-recaptcha" id="member_login_190-google-recaptcha"></div> 3420 </div> 3421 <small class="help-block" id="recaptcha_error" style="display:none;" data-fv-validator="notEmpty" data-fv-for="recaptcha" data-fv-result="INVALID" />The security check was not completed successfully.</small> 3422 <div class="clearfix bmargin"></div> 3423 <input type="hidden" name="recaptcha" id="member_login_190-rcap"> 3424</div> 3425 <style> 3426 .modal .g-recaptcha-scale, .col-md-4 .g-recaptcha-scale, .col-md-3 .g-recaptcha-scale, .col-lg-3 .g-recaptcha-scale, .col-lg-4 .g-recaptcha-scale { 3427 transform: scale(0.77); 3428 -webkit-transform: scale(0.77); 3429 transform-origin: 0 0; 3430 -webkit-transform-origin: 0 0; 3431 margin-bottom: -15px; 3432 } 3433 3434 .modal #member_login_190-captchaContainer, .col-md-4 #member_login_190-captchaContainer, .col-md-3 #member_login_190-captchaContainer, .col-lg-3 #member_login_190-captchaContainer, .col-lg-4 #member_login_190-captchaContainer { 3435 transform: scale(0.77); 3436 -webkit-transform: scale(0.77); 3437 transform-origin: 0 0; 3438 -webkit-transform-origin: 0 0; 3439 margin-bottom: -15px; 3440 } 3441 </style> 3442
3442<script type="text/javascript"> 3443 if(typeof formsFound == "undefined"){ 3444 var formID = ''; 3445 var currentCaptcha = {}; 3446 var captchaHolders = {}; 3447 var formsFound = {}; 3448 var captchaApiRequested = false; 3449 /* The forms the visitor has actually interacted with - only these get a widget. */ 3450 var captchaArmedForms = []; 3451 /* api.js stays lazy - nothing is fetched from Google until the visitor actually 3452 touches the form. 'click' alone was too narrow: a keyboard-only visitor tabs in 3453 and presses Enter without ever clicking, so api.js never loaded, the captcha 3454 never rendered, and the form POSTed an empty token. */ 3455 var captchaTriggerEvents = ['click', 'keydown', 'focusin', 'touchstart']; 3456 3457 window.addEventListener('load', () => { 3458 formID = document.querySelectorAll('[name="recaptcha"]'); 3459 if (typeof formID != "undefined" && formID !== null) { 3460 for (let i = 0; i < formID.length; i++) { 3461 let formIDForm = formID[i].closest('form'); 3462 let captchaHolder = formIDForm.querySelector(".g-recaptcha"); 3463 3464 if (typeof formsFound[formIDForm.id] != "undefined") { 3465 formsFound[formIDForm.id]['counter']++; 3466 }else{ 3467 formsFound[formIDForm.id] = {'counter' : 1}; 3468 } 3469 3470 formIDForm.setAttribute('data-counter', formsFound[formIDForm.id]['counter']); 3471 captchaHolder.setAttribute('id',captchaHolder.id+'-'+formsFound[formIDForm.id]['counter']); 3472 3473 if (typeof formIDForm != "undefined" && formIDForm !== null) { 3474 captchaTriggerEvents.forEach( evt => 3475 formIDForm.addEventListener(evt, reCaptchaOnFormInteraction, false) 3476 ); 3477 } 3478 } 3479 } 3480 }); 3481 } 3482 3483 function reCaptchaOnFormInteraction(event) { 3484 if (event && event.currentTarget) { 3485 captchaArmForm(event.currentTarget); 3486 } 3487 if (captchaApiRequested) { 3488 renderArmedCaptchas(); 3489 return; 3490 } 3491 captchaApiRequested = true; 3492 3493 var head = document.getElementsByTagName('head')[0]; 3494 var script = document.createElement('script'); 3495 script.type = 'text/javascript'; 3496 script.src = 'https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl=en'; 3497 head.appendChild(script); 3498 } 3499 3500 var captchaArmForm = function (formEl) { 3501 if (!formEl) { 3502 return; 3503 } 3504 for (var a = 0; a < captchaArmedForms.length; a++) { 3505 if (captchaArmedForms[a] === formEl) { 3506 return; 3507 } 3508 } 3509 captchaArmedForms.push(formEl); 3510 }; 3511 3512 var captchaSolvedCallback = function (holder) { 3513 return function () { 3514 var formEl = holder.closest('form'); 3515 if (!formEl) { 3516 return; 3517 } 3518 $(formEl).find('.security_question_label').removeClass('has-error'); 3519 $(formEl).find('#recaptcha_error').css('display', 'none'); 3520 var notification = document.getElementById(formEl.id + '-notification'); 3521 if (notification && notification.classList.contains('alert-danger-subtle')) { 3522 $(notification).slideUp(); 3523 } 3524 }; 3525 }; 3526 3527 var renderArmedCaptchas = function () { 3528 if (typeof grecaptcha === "undefined" || typeof grecaptcha.render !== "function") { 3529 return; 3530 } 3531 for (var f = 0; f < captchaArmedForms.length; f++) { 3532 var holder = captchaArmedForms[f].querySelector('div[class=g-rec
3532aptcha]'); 3533 3534 if (!holder || !holder.id || holder.getClientRects().length === 0) { 3535 continue; 3536 } 3537 /* Guard a second render: grecaptcha throws on an element it already claimed. */ 3538 if (typeof captchaHolders[holder.id] === "undefined") { 3539 captchaHolders[holder.id] = grecaptcha.render(holder.id, { 3540 'sitekey': '6LcQwVQrAAAAADGNrTr3nlpLXDAgaUYdIWOhcaKw', 3541 'callback': captchaSolvedCallback(holder) 3542 }); 3543 } 3544 } 3545 }; 3546 3547 var onloadCallback = function (event) { 3548 renderArmedCaptchas(); 3549 }; 3550 3551 </script>
vendor: 1 bytes, line 3551
3551
3552<script> 3553 $(document).ready(function(){ 3554 /* Implicit submission (Enter inside a field) fires 'submit' without firing a click on 3555 the submit button, so the click guard below never sees it and the form POSTed an 3556 empty token. Bound on document/capture so it runs before FormValidation's own 3557 handler on the form - at AT_TARGET the capture flag does not order listeners, so a 3558 listener on the form itself would not reliably win. Native HTMLFormElement.submit() 3559 does not dispatch 'submit', so the solved-captcha path below is unaffected. */ 3560 var captchaGuardedForm = document.getElementById('member_login_190'); 3561 if (captchaGuardedForm) { 3562 document.addEventListener('submit', function (event) { 3563 if (event.target !== captchaGuardedForm) { 3564 return; 3565 } 3566 3567 var formId = captchaGuardedForm.id; 3568 var captchaHolderKey = formId + "-google-recaptcha-" + $(captchaGuardedForm).data('counter'); 3569 var captchaRendered = typeof captchaHolders[captchaHolderKey] != "undefined"; 3570 3571 if (captchaRendered && grecaptcha.getResponse(captchaHolders[captchaHolderKey]) !== "") { 3572 $("#" + formId + " .security_question_label").removeClass("has-error"); 3573 $("#" + formId + " #recaptcha_error").css("display", "none"); 3574 return; 3575 } 3576 3577 /* Unsolved, or api.js still in flight: either way there is no token to send. */ 3578 event.preventDefault(); 3579 event.stopImmediatePropagation(); 3580 $("#" + formId + " .security_question_label").addClass("has-error"); 3581 $("#" + formId + " #recaptcha_error").css("display", "block"); 3582 return false; 3583 }, true); 3584 } 3585 $("#member_login_190 input[type=submit]").unbind('click'); 3586 $("#member_login_190 input[type=submit]").click(function (event) { 3587 3588 var formId = $(this.form).attr('id'); 3589 var captchaHolderKey = formId + "-google-recaptcha-" +$(this.form).data('counter'); 3590 3591 if (typeof captchaHolders[captchaHolderKey] != "undefined") { 3592 if (grecaptcha.getResponse(captchaHolders[captchaHolderKey]) === "") { 3593 event.preventDefault(); 3594 $("#" + formId).formValidation('validate'); 3595 $("#" + formId + " .security_question_label").addClass("has-error"); 3596 $("#" + formId + " #recaptcha_error").css("display", "block"); 3597 return false; 3598 } 3599 3600 /* Solved captcha: clear the error UI and let the click proceed untouched. 3601 The browser then fires a REAL, button-initiated submit event, so 3602 FormValidation runs its normal chain (success.form.fv -> AJAX modal on 3603 checkout / native POST on login). Re-submitting here artificially broke 3604 both ways: native form.submit() skips the FV chain (checkout rendered the 3605 raw JSON response), and jQuery .submit() fires a synthetic submit that FV 3606 refuses, leaving the form stuck after the first error (Bug 2). */ 3607 $("#" + formId + " .security_question_label").removeClass("has-error"); 3608 $("#" + formId + " #recaptcha_error").css("display", "none"); 3609 } 3610 }); 3611 }); 3612</script>
3612</div><div class="form-actions"><input type="submit" value="Login Now" name class="btn btn-primary btn-lg btn-block " id="member_login_190-element-14"/></div><div class="login-cta-buttons"><hr class="cta-hr"><ul class="list-inline nomargin inline-block btn-block"><li class='col-md-6 nolpad sm-nopad nav'><a href='/checkout/5' id='link264' class='btn btn-danger btn-block sm-bmargin'>Not a Registered User? <span class="inline-block">Create Free User Account</span></a></li><li class='col-md-6 nolpad sm-nopad nav'><a href='/join' id='link265' class='btn btn-success btn-block'>Are You a Local Business <span class="inline-block">List Your Company Now</span></a></li></ul><div class="clearfix"></div></div></form>
3612<script type="text/javascript">jQuery(document).ready(function() { jQuery("#member_login_190").bind("submit", function() { 3613 });}); </script>
3613 <div class="clearfix"></div> 3614 </div> 3615 3616 3617 </div> 3618 </div> 3619 </div> 3620 </div> 3621 </div> 3622 </div> 3623 3624 3625 3626 <link rel="stylesheet" type="text/css" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/limonte-sweetalert2/6.11.2/sweetalert2.min.css">
3627<script src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/limonte-sweetalert2/6.11.2/sweetalert2.min.js"></script>
3627 3628
3629<script> 3630 function clearContent(thisObj){ 3631 var size; 3632 if(thisObj.hasClass('input-sm') || thisObj.parents('.input-group').hasClass('input-group-sm')){ 3633 size = "small"; 3634 } else if (thisObj.hasClass('input-lg') || thisObj.parents('.input-group').hasClass('large-autosuggest')){ 3635 size = "large"; 3636 } else { 3637 size = "medium"; 3638 } 3639 if(!thisObj.parent().hasClass('input_wrapper')){ 3640 if(thisObj.parent().hasClass('input-group-sm')){ 3641 thisObj.wrap('<span class="input-group-sm input_wrapper"></span>'); 3642 } else if (thisObj.parent().hasClass('input-group-lg')){ 3643 thisObj.wrap('<span class="input-group-lg input_wrapper"></span>'); 3644 } else { 3645 thisObj.wrap('<span class="input_wrapper"></span>'); 3646 } 3647 } 3648 if(thisObj.val() != ""){ 3649 if(thisObj.hasClass('googleSuggest')){ 3650 thisObj.parent().find('.fill_location').remove(); 3651 } 3652 if (!thisObj.parent().find('.clear_content').length){ 3653 thisObj.parent().append(`<span class="clear_content ${size}"><i class="fa fa-times-circle" aria-hidden="true"></i></span>`); 3654 if (thisObj.hasClass("tt-input")) { 3655 thisObj.focus(); 3656 } 3657 3658 } 3659 } 3660 } 3661 3662 $(document).on('click', '.drp-buttons .applyBtn', function(){ 3663 clearContent($(".dateRange input")); 3664 }); 3665 3666 $('.sm-autosuggest input, .googleSuggest, .large-autosuggest input, .md-autosuggest input, .normal-autosuggest input, .google-writen-location, .dateRange input').keyup(function(){ 3667 clearContent($(this)); 3668 }); 3669 3670 $(document).ready(function(){ 3671 $('.sm-autosuggest input, input.googleSuggest, .large-autosuggest input, .md-autosuggest input, .normal-autosuggest input, .google-writen-location, .dateRange input').each(function(){ 3672 clearContent($(this)); 3673 }) 3674 }) 3675 3676 $(document).on('click', '.clear_content', function(){ 3677 $(this).parent().find('input').val(''); 3678 //tt-input its a class for typeahead auto-suggest 3679 if ($(this).parent().find('input').hasClass("tt-input")) { 3680 $(this).parent().find('input').typeahead('val',''); 3681 } 3682 clearContent($(this).parent().find('input')); 3683 $(this).remove(); 3684 }); 3685 3686 $(window).on('load', function () { 3687 setTimeout(function() { 3688 // add missing href attribute to multi-category options in search modules 3689 $('.bootstrap-select.show-tick .dropdown-menu a').attr('href', '#'); 3690 }, 2000); 3691 }); 3692</script>
3692 3693 3694 3695 3696<a href="#" class="scrollup" title="scrollup"> 3697 <i class="fa fa-caret-up" aria-hidden="true"></i> 3698</a>
3699<script> 3700 $(document).ready(function(){ 3701 // .progressbar() comes from bootstrap-progressbar.min.js, loaded only by widgets 1236/1318. 3702 // Elsewhere it used to fall through to jQuery UI's; jQuery UI is no longer global, so an 3703 // unguarded call throws and kills the rest of this ready() handler (scrollup, crop button). 3704 if ($.fn.progressbar) { 3705 $('.progress .progress-bar').progressbar({ 3706 display_text: 'fill' 3707 }); 3708 } 3709 $(window).scroll(function(){ 3710 3711 if ($(this).scrollTop() > 600) { 3712 $('.scrollup').fadeIn(); 3713 3714 } else { 3715 $('.scrollup').fadeOut(); 3716 } 3717 }); 3718 $('.scrollup').click(function(){ 3719 $("html, body").animate({ 3720 scrollTop: 0 3721 }, 600); 3722 return false; 3723 }); 3724 $('#cropButton').click(function(){ 3725 var iframe = $("#cropiFrame"); 3726 iframe.attr("src", iframe.data("src")); 3727 }); 3728 }); 3729</script>
vendor: 2 bytes, line 3729
3729
3730<script> 3731 function loadMasonryJs() { 3732 return new Promise((resolve, reject) => { 3733 if (window["masonryJs"]) { 3734 resolve("already load masonry"); 3735 } else { 3736 let script = document.createElement('script'); 3737 script.type = 'text/javascript'; 3738 script.src = "https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/masonry_gridview.pkgd.min.js"; 3739 script.async = true; 3740 script.onload = function () { 3741 window['masonryJs'] = true; 3742 resolve("ok"); 3743 }; 3744 let head = document.getElementsByTagName('head')[0]; 3745 head.appendChild(script); 3746 3747 } 3748 }); 3749 } 3750 3751 var map_opened = 0; 3752 var masonry_opened = 0; 3753 3754 $(".views > i").click(function () { 3755 $(".views > i").removeClass('activeView'); 3756 $(this).addClass('activeView'); 3757 }); 3758 $(".views > i.gridView").click(async function () { 3759 await loadMasonryJs(); 3760 $('.grid-container .clickToLoadMoreContainer').addClass('gridBtnLazyLoad') 3761 if (map_opened == 1) { 3762 $('.grid-container').removeClass('hidden'); 3763 $('.map_container').hide(); 3764 map_opened = 0; 3765 } 3766 $('.grid-container').addClass('visible'); 3767 $('.img_section.col-xs-2').removeClass('col-xs-2').addClass('col-xs-12 bmargin ex-col-2'); 3768 $('.img_section.col-sm-3').removeClass('col-sm-3').addClass('col-sm-12 bmargin ex-col-3'); 3769 $('.img_section.col-sm-4').removeClass('col-sm-4').addClass('col-sm-12 bmargin ex-col-4'); 3770 $('.mid_section.col-sm-9').removeClass('col-sm-9').addClass('col-sm-12 ex-col-9'); 3771 $('.mid_section.col-sm-6').removeClass('col-sm-6').addClass('col-sm-12 ex-col-6'); 3772 $('.mid_section.col-sm-7').removeClass('col-sm-7').addClass('col-sm-12 nohpad ex-col-7 text-center bpad'); 3773 $('.mid_section.col-sm-8').removeClass('col-sm-8').addClass('col-sm-12 ex-col-8 nohpad bpad'); 3774 $('.mid_section .post-location-snippet').addClass('text-center'); 3775 $('.mid_section.ex-col-7 .sm-block').addClass('show'); 3776 $('.mid_section .row-fluid.bpad .col-md-8').removeClass('col-md-8').addClass('col-sm-12 bmargin'); 3777 $('.mid_section .row-fluid.bpad a').addClass('btn-block'); 3778 $('.mid_section .row-fluid.bpad').addClass('text-center'); 3779 $('.info_section').removeClass('col-sm-3 norpad').addClass('col-sm-12 nopad'); 3780 $('.mid_section > div > p').addClass('text-center'); 3781 $('.mid_section h2').addClass('nomargin'); 3782 $('.mid_section a.h3').addClass('text-center h4 tmargin'); 3783 $('.mid_section .view-details').removeClass('rmargin'); 3784 $('.mid_section .contact-member').removeClass('lmargin'); 3785 $('.member-search-full-name').removeClass('rmargin'); 3786 $('.member-search-reviews').removeClass('rmargin'); 3787 $('.member-search-location').removeClass('rmargin rpad'); 3788 $('.member-search-company').addClass('btn-block'); 3789 $('.view_phone_number').addClass('center-block'); 3790 $('.phone_number').addClass('btn-block'); 3791 $('.search_result_image').addClass('grid_image'); 3792 $('.post-search-category').removeClass('inline-block').addClass('text-center'); 3793 $('.post-results-star').removeClass('pull-right').addClass('text-center tmargin'); 3794 3795 $('.grid-container.visible > hr:nth-of-type(3n)').addClass('gridBreak'); 3796 $('.search_result').addClass('col-xs-12 col-sm-4 col-md-4 grid').removeClass('row-fluid'); 3797 $('.grid_element').addClass('well xs-center-block'); 3798 3799 $('.col-md-3 + .clearfix, .col-md-4 + .clearfix, .clearfix + hr, .search_result hr + .clearfix, .mid_section > p, .mid_section .row-fluid.bpad p.nomargin, .tags, table.bmargin,.posted-by,.star_rating .the-rating-text').hide(); 3800 $('h2.h3.bold > a').addClass('gridA'); 3801 $('.info_section .module').removeClass('module fpad'); 3802 $('.grid-container').addClass('row'); 3803 document.body.classList.add('bdGridDone'); 3804 $('.grid-container').masonry({ 3805 // options 3806 itemSelector: '.search_result', 3807 columnWidth: '.search_result', 3808 horizontalOrder: true, 3809 3810 }); 3811 masonry_opened = 1; 3812 3813 });
3814 $(".views > i.listView").click(function () { 3815 $('.grid-container .clickToLoadMoreContainer').removeClass('gridBtnLazyLoad') 3816 3817 $('.clearfix.spacing').remove(); 3818 if (masonry_opened == 1) { 3819 $('.grid-container').masonry('destroy'); 3820 } 3821 $('.grid-container').addClass('visible'); 3822 $('.img_section.ex-col-2').removeClass('col-xs-12 ex-col-2 bmargin').addClass('col-xs-2'); 3823 $('.img_section.ex-col-3').removeClass('col-sm-12 ex-col-3 bmargin').addClass('col-sm-3'); 3824 $('.img_section.ex-col-4').removeClass('col-sm-12 ex-col-4 bmargin').addClass('col-sm-4'); 3825 $('.mid_section.col-sm-12.ex-col-9').removeClass('col-sm-12').addClass('col-sm-9'); 3826 $('.mid_section.col-sm-12.ex-col-6').removeClass('col-sm-12').addClass('col-sm-6'); 3827 $('.mid_section.col-sm-12.ex-col-7').removeClass('col-sm-12 nohpad bpad ex-col-7 text-center').addClass('col-sm-7'); 3828 $('.mid_section.col-sm-12.ex-col-8').removeClass('col-sm-12 nohpad bpad').addClass('col-sm-8'); 3829 $('.mid_section .post-location-snippet.text-center').removeClass('text-center'); 3830 $('.mid_section.col-sm-7 .sm-block').removeClass('show'); 3831 $('.mid_section.col-sm-12.ex-col-12').removeClass('col-sm-12').addClass('col-sm-12'); 3832 $('.mid_section .row-fluid.bpad .col-sm-12').removeClass('col-sm-12 bmargin').addClass('col-md-8'); 3833 $('.mid_section .row-fluid.bpad a').removeClass('btn-block'); 3834 $('.mid_section .row-fluid.bpad').removeClass('text-center'); 3835 $('.info_section').removeClass('col-sm-12 nopad').addClass('col-sm-3 norpad'); 3836 $('.info_section > div.nomargin').addClass('module fpad'); 3837 $('.mid_section > div > p').removeClass('text-center'); 3838 $('.mid_section h2').removeClass('nomargin'); 3839 $('.mid_section a.h3').removeClass('text-center h4 tmargin'); 3840 $('.mid_section .view-details').addClass('rmargin'); 3841 $('.mid_section .contact-member').addClass('lmargin'); 3842 $('.member-search-full-name').addClass('rmargin'); 3843 $('.member-search-reviews').addClass('rmargin'); 3844 $('.member-search-location').addClass('rmargin rpad'); 3845 $('.member-search-company').removeClass('btn-block'); 3846 $('.view_phone_number').removeClass('center-block'); 3847 $('.search_result_image').removeClass('grid_image'); 3848 $('.ex-col-8 h2.h3.bold a.gridA').removeClass('bmargin'); 3849 $('.gridBreak').removeClass('gridBreak'); 3850 $('.post-search-category').removeClass('text-center').addClass('inline-block'); 3851 $('.post-results-star').removeClass('text-center tmargin').addClass(' pull-right'); 3852 $('.search_result').removeClass('col-md-4 col-sm-4 col-xs-12 grid').addClass('row-fluid'); 3853 $('.grid_element').removeClass('well'); 3854 $('.search_result .grid_element + .clearfix, .clearfix + hr, hr + .clearfix, .clearfix, .mid_section > p, .mid_section .row-fluid.bpad p.nomargin, .tags,.posted-by, table.bmargin, .star_rating span').show(); 3855 $('h2.h3.bold > a').removeClass('gridA'); 3856 $('.grid-container').removeClass('row'); 3857 if (map_opened == 1) { 3858 $('.grid-container').removeClass('hidden'); 3859 $('.map_container').hide(); 3860 map_opened = 0; 3861 } 3862 }); 3863 3864 $('.views > i.mapView').click(function () { 3865 $('.clearfix.spacing').remove(); 3866 $('.grid-container').addClass('hidden'); 3867 $('.map_container').show(); 3868 map_opened = 1; 3869 if(typeof initializeGoogleMaps === "function"){ 3870 initializeGoogleMaps(); 3871 } 3872 }); 3873 if (document.getElementById("google-pin") !== null) { 3874 $('.mapView').css('display', 'inline-block'); 3875 } 3876 $(document).ready(function () { 3877 if ($('.views .fa:visible').length == 1) { 3878 $('.views').hide(); 3879 } else { 3880 $('.views').show(); 3881 } 3882 }) 3883</script>
3883<script defer> 3884 var favoriteMode = ""; 3885 var apiEngine = ""; 3886 var api = 0; // Set API to use. Default is 0 3887 var activeMembershipLevelEnable = ""; 3888 var favoriteUserClickId = ""; 3889 var bookmarkLabel = `LIKE`; 3890 var bookmarkCountLabel = `LIKES`; 3891 var currentButton; 3892 3893 function favoriteOn(lookForAll = false) { 3894 $('.col-md-6.col-md-offset-3').addClass("col-md-12").removeClass('col-md-6 col-md-offset-3'); 3895 favoriteMode = 'search'; 3896 if ($('.sidebarenabled').data('sidebar')) { 3897 favoriteMode = 'detail'; 3898 if (!$('.sidebarenabled').siblings('.postItem').data('userid')) { 3899 $('.sidebarenabled').siblings('.listingData').remove(); 3900 } 3901 } 3902 favoriteUserClickId = $('.favorite').data('activeuser'); 3903 activeMembershipLevelEnable = $('.favorite').data('activefeatureenable'); 3904 3905// Sets the API URL to use based on API value 3906 if (api == 0) { 3907 apiEngine = '/api/data/html/get/data_widgets/widget_name?name=Bootstrap%20Theme%20-%20Function%20-%20Add%20to%20Favorites%20Button'; 3908 } else if (api == 1) { 3909 apiEngine = '/api/data/html/get/data_widgets/widget_name?name=Bootstrap Theme - Function - Add to Favorites Button'; 3910 } else { 3911 apiEngine = '/api/widget/json/get/Bootstrap Theme - Function - Add to Favorites Button'; 3912 } 3913 if (favoriteUserClickId) { 3914 var favoriteCounter = $('.favorite').siblings('.postItem'); 3915 if ($('.sidebarenabled').data('sidebar') || lookForAll) { 3916 3917 if (favoriteCounter.length == 1) { 3918 var favoriteMode = 'detail'; 3919 var favoriteDataType = $('.sidebarenabled').siblings('.postItem').data('datatype'); 3920 var favoriteDataId = $('.sidebarenabled').siblings('.postItem').data('dataid'); 3921 var favoritePostId = $('.sidebarenabled').siblings('.postItem').data('postid'); 3922 var favoriteUserId = []; 3923 $('.sidebarenabled').siblings('.postItem').each(function () { 3924 favoriteUserId.push($(this).data('userid')); 3925 }); 3926 } else { 3927 var favoriteMode = 'multiSidebar'; 3928 var favoriteDataType = []; 3929 var favoriteDataId = []; 3930 var favoritePostId = []; 3931 var favoriteUserId = []; 3932 $('.postItem').each(function () { 3933 favoriteDataType.push($(this).data('datatype')); 3934 favoriteDataId.push($(this).data('dataid')); 3935 favoritePostId.push($(this).data('postid')); 3936 favoriteUserId.push($(this).data('userid')); 3937 }); 3938 } 3939 } else { 3940 var favoriteMode = 'search'; 3941 var favoriteDataType = $('.favorite').siblings('.postItem').data('datatype'); 3942 var favoriteDataId = $('.favorite').siblings('.postItem').data('dataid'); 3943 if (lookForAll) { 3944 favoriteDataType = (favoriteDataType == 10) ? 11 : 10; 3945 } 3946 if (favoriteDataType != 10) { 3947 var favoritePostId = []; 3948 $('.postItem').each(function () { 3949 favoritePostId.push($(this).data('postid')); 3950 }); 3951 var favoriteUserId = $('.favorite').siblings('.postItem').data('userid'); 3952 } else { 3953 var favoriteUserId = []; 3954 $('.postItem').each(function () { 3955 favoriteUserId.push($(this).data('userid')); 3956 }); 3957 var favoritePostId = $('.favorite').siblings('.postItem').data('postid'); 3958 } 3959 } 3960 favoriteCall(favoriteUserClickId, favoriteUserId, favoriteDataType, favoriteDataId, favoritePostId, favoriteMode, 'check'); 3961 } 3962 } 3963 3964 $(document).on('click', '.favorite', function (e) { 3965 var favoriteUserClickId = $('.favorite').data('activeuser'); 3966 if (favoriteUserClickId && activeMembershipLevelEnable) { 3967 var thisButton = $(this); 3968 currentButton = thisButton; 3969 $(thisButton).attr("disabled", true); 3970 var favoriteUserClickId = $(this).data('activeuser'); 3971 var favoriteUserId = $(this).siblings('.postItem').data('userid'); 3972 var favoriteDataType = $(this).siblings('.postItem').data('datatype'); 3973 var favoriteDataId = $(this).siblings('.postItem').data('dataid'); 3974 var favoritePostId = $(this).siblings('.postItem').data('postid'); 3975 $(this).toggleClass('favoriteActive'); 3976 if ($(this).data('state') == 0) { 3977 favoriteCall(favoriteUserClickId, favoriteUserId, favoriteDataType, favoriteDataId, favoritePostId, favoriteMode, 'add'); 3978 $(this).data('state', 1); 3979 } else { 3980 favoriteCall(favoriteUserClickId, favoriteUserId, favoriteDataType, favoriteDataId, favoritePostId, favoriteMode, 'delete'); 3981 $(this).data('state', 0); 3982 } 3983 setTimeout(function () { 3984 $(thisButton).attr("disabled", false); 3985 }, 500); 3986 } 3987 });
3988 3989 function toogleBookmark(node) { 3990 var postId = $(node).data('postid'); 3991 var count = $(node).data('count'); 3992 var numberNode = $(node).find("#number-" + postId); 3993 var textLabelNode = $(node).find("#bookmark-content"); 3994 3995 if ($(node).hasClass('favoriteActive') !== false) { 3996 count--; 3997 } else { 3998 count++; 3999 } 4000 4001 $(node).data("count", count); 4002 4003 if (count > 0) { 4004 $(textLabelNode).html(bookmarkCountLabel); 4005 $(numberNode).html(' (' + count + ')'); 4006 } else { 4007 $(textLabelNode).html(bookmarkLabel); 4008 $(numberNode).html(''); 4009 } 4010 } 4011 4012 // Function that Adds, Deletes and Selects Favorites from Backend 4013 function favoriteCall(favoriteUserClickId, favoriteUserId, favoriteDataType, favoriteDataId, favoritePostId, favoriteMode, favoriteAction) { 4014 $.post(apiEngine, { 4015 favoriteUserClickId: favoriteUserClickId, 4016 favoriteUserId: favoriteUserId, 4017 favoriteDataType: favoriteDataType, 4018 favoriteDataId: favoriteDataId, 4019 favoritePostId: favoritePostId, 4020 favoriteMode: favoriteMode, 4021 favoriteAction: favoriteAction 4022 }, function (data) { 4023 if (api == 0) { 4024 var splitData = data.split('<split>'); 4025 data = splitData[1]; 4026 } 4027 4028 if(favoriteAction == "add" && data == "save_favorite_error"){ 4029 $(currentButton).trigger('click'); 4030 swal({ 4031 type:"warning", 4032 title: `Action Unavailable`, 4033 html: `Your account is currently not ACTIVE. <br> Only ACTIVE accounts can perform this action.`, 4034 }); 4035 } 4036 4037 if (data !== null && data !== 'null') { 4038 // Checks if the action 'check' was send 4039 if (favoriteAction == 'check' && favoriteMode != 'multiSidebar') { 4040 // Checks if we are in a Detail Page 4041 if (!$('.sidebarenabled').data('sidebar')) { 4042 // Checks if we are viewing a Member 4043 if (favoriteDataType != 10) { 4044 $.each(JSON.parse(data), function (index, value) { 4045 $('.postItem[data-postid="' + value + '"]').siblings('.favorite').addClass('favoriteActive'); 4046 $('.postItem[data-postid="' + value + '"]').siblings('.favorite').data('state', 1); 4047 }); 4048 } else { 4049 $.each(JSON.parse(data), function (index, value) { 4050 $('.member_results .postItem[data-userid="' + value + '"]').siblings('.favorite').addClass('favoriteActive'); 4051 $('.member_results .postItem[data-userid="' + value + '"]').siblings('.favorite').data('state', 1); 4052 }); 4053 } 4054 } else { 4055 // Checks if we are viewing a Member 4056 if (favoriteDataType != 10) { 4057 $.each(JSON.parse(data), function (index, value) { 4058 $('.sidebarenabled').siblings('.favorite').addClass('favoriteActive'); 4059 $('.sidebarenabled').siblings('.favorite').data('state', 1); 4060 }); 4061 } else { 4062 $.each(JSON.parse(data), function (index, value) { 4063 $('.sidebarenabled').siblings('.favorite').addClass('favoriteActive'); 4064 $('.sidebarenabled').siblings('.favorite').data('state', 1); 4065 }); 4066 } 4067 } 4068 } else if (favoriteAction == 'check' && favoriteMode == 'multiSidebar') { 4069 let totalDataCount = JSON.parse(data); 4070 if (totalDataCount) { 4071 totalDataCount = totalDataCount.length; 4072 for (let i = 0; i < totalDataCount; i++) { 4073 if (JSON.parse(data)[i].dataQuery != 0) { 4074 $('.postItem[data-postid="' + JSON.parse(data)[i].postQuery + '"][data-dataid="' + JSON.parse(data)[i].dataQuery + '"]').siblings('.favorite').addClass('favoriteActive'); 4075 $('.postItem[data-postid="' + JSON.parse(data)[i].postQuery + '"][data-dataid="' + JSON.parse(data)[i].dataQuery + '"]').siblings('.favorite').data('state', 1); 4076 } else { 4077 /* dataQuery == 0 means a MEMBER favorite (users_favorite dataType 10). 4078 Restrict the match to member-type spans: on profile pages the owner's 4079 post spans carry the same data-userid, and without this filter one 4080 member favorite marked every post button of that owner as saved. */ 4081 $('.postItem[data-userid="' + JSON.parse(data)[i].postQuery + '"][data-datatype="10"]').siblings('.favorite').addClass('favoriteActive'); 4082 $('.postItem[data-userid="' + JSON.parse(data)[i].postQuery + '"][data-datatype="10"]').siblings('.favorite').data('state', 1); 4083 } 4084 } 4085 } 4086 } 4087 } 4088 }); 4089 } 4090 4091 // Code that runs once to show all favored posts by a registered user 4092 4093 favoriteOn(); 4094 favoriteOn(true); 4095</script>
4095<script> 4096 const listView = document.getElementsByClassName('listView')[0]; 4097 const gridView = document.getElementsByClassName('gridView')[0]; 4098 const queryString = {"sized":0,"mysql_real_escape_string_runned":"1","form":"myform","formname":"member_login","dowiz":1,"save":1,"url_origin_pars":"\/blog"}; 4099 const profId = ``; 4100 const servId =null; 4101 const countryId = ``; 4102 const stateId = ``; 4103 const cityId = ``; 4104 const seed = ``; 4105 const profs = null; 4106 const btnPositionInside = document.querySelector('.grid-container .clickToLoadMoreContainer'); 4107 const btnPositionOutside = document.querySelector('.grid-container ~ .clickToLoadMoreContainer'); 4108 const amountToSum = 9; 4109 let currentAmountText = document.querySelector('.current__amount__js'); 4110 let totalAmount = document.querySelector('.total__js'); 4111 let btnClickMore = document.getElementsByClassName('clickToLoadMoreBtn')[0]; 4112 let btnClickMoreContainer = document.getElementsByClassName('clickToLoadMoreContainer')[0]; 4113 let flagFirstTime = true; 4114 let autoLoadResults = true; 4115 let lastElementPost ; 4116 if(typeof totalAmount !== "undefined" && totalAmount !== null){ 4117 let removeCommasAndDots = /[.,\s]/g; 4118 totalAmount = totalAmount.innerHTML.replace(removeCommasAndDots, ''); 4119 } 4120 /*event listener*/ 4121 if (typeof btnClickMore !== "undefined") { 4122 btnClickMore.addEventListener('click', function (event) { 4123 let viewIcons = document.querySelectorAll('.views i.gridView.activeView')[0]; 4124 let featureDCId = this.dataset.dc; 4125 let currentPage = this.dataset.page; 4126 let dataType = this.dataset.type; 4127 let levId = this.dataset.lvl; 4128 this.dataset.page = parseInt(currentPage) + 1; 4129 let url = `/wapi/widget`; 4130 let currentBTN = this;
4131 let currentHTML = this.innerHTML; 4132 lastElementPost = document.querySelectorAll('.search_result'); 4133 this.classList.add('loadingMore'); 4134 this.innerHTML = `<i class="fa fa-circle-o-notch fa-spin fa-fw"></i> Loading...`; 4135 let formData = new FormData(); 4136 autoLoadResults=false; 4137 setClassLoaded(); 4138 4139 formData.append('dc_id', featureDCId); 4140 formData.append('header_type', 'html'); 4141 formData.append('request_type', 'POST'); 4142 formData.append('currentPage', currentPage); 4143 formData.append('dataType', dataType); 4144 formData.append('queryString', JSON.stringify(queryString)); 4145 formData.append('profId', profId); 4146 formData.append('servId', JSON.stringify(servId)); 4147 formData.append('countryId', countryId); 4148 formData.append('stateId', stateId); 4149 formData.append('cityId', cityId); 4150 formData.append('levId', levId); 4151 formData.append('seed', seed); 4152 formData.append('profsPost', JSON.stringify(profs)); 4153 formData.append('widget_name', 'Add-On - Bootstrap Theme - Search - Lazy Loader'); 4154 let myInit = { 4155 method: 'POST', 4156 body: formData 4157 }; 4158 fetch(url, myInit) 4159 .then(function (response) { 4160 return response.text(); 4161 }).then(function (html) { 4162 let parser = new DOMParser(); 4163 4164 // Parse the text 4165 let result = parser.parseFromString(html, "text/html"); 4166 let newResultsHTML = result.getElementById('grabHTML__js').innerHTML; 4167 autoLoadResults =true; 4168 let amountOfClicks = result.getElementById('grabHTML__js').dataset.pages; 4169 4170 var countBefore = $('.grid-container .search_result').length; 4171 4172 if (typeof btnPositionOutside !== "undefined" && btnPositionOutside !== null) { 4173 $('.grid-container').append(newResultsHTML); 4174 } 4175 if (typeof btnPositionInside !== "undefined" && btnPositionInside !== null || btnPositionOutside === null && dataType == 13) { 4176 $('.clickToLoadMoreContainer').before(newResultsHTML); 4177 } 4178 4179 // Fade in only the actually new results 4180 var newCount = $('.grid-container .search_result').length - countBefore; 4181 var $allNew = $('.grid-container .search_result').slice(-newCount); 4182 $allNew.css({opacity: 0, transition: 'opacity 0.4s ease'}); 4183 4184 currentBTN.innerHTML = currentHTML; // default html 4185 currentBTN.classList.remove('loadingMore'); 4186 4187 if (typeof viewIcons !== 'undefined') { 4188 applyGridClasses($allNew); 4189 // Recalculate gridBreak classes and hide clearfix/hr between grid items 4190 $('.gridBreak').removeClass('gridBreak'); 4191 /* Row-break stride must follow the column class actually on the page, same rule as applyGridClasses */ 4192 var bdGridFourPerRow = $('.grid-container .search_result.col-md-3.grid').length > 0; 4193 $('.grid-container.visible > hr:nth-of-type(' + (bdGridFourPerRow ? '4n' : '3n') + ')').addClass('gridBreak'); 4194 $('.grid-container .col-md-4 + .clearfix:not(.search_result), .grid-container .col-md-3 + .clearfix:not(.search_result), .grid-container .clearfix + hr, .grid-container hr + .clearfix:not(.search_result)').hide(); 4195 if (typeof masonry_opened !== 'undefined' && masonry_opened == 1) { 4196 setTimeout(function(){ 4197 $('.grid-container').masonry('appended', $allNew); 4198 setTimeout(function(){ $allNew.css('opacity', 1); }, 100); 4199 checkAllImagesLoaded(); 4200 }, 500); 4201 } else { 4202 setTimeout(function(){ $allNew.css('opacity', 1); }, 100); 4203 checkAllImagesLoaded(); 4204 } 4205 } else { 4206 setTimeout(function(){ $allNew.css('opacity', 1); }, 50); 4207 } 4208 if (typeof favoriteOn == 'function') { 4209 favoriteOn(); 4210 } 4211 if (typeof runRoyalSlider == 'function') { 4212 runRoyalSlider(); 4213 } 4214 4215 setAmountPages(currentBTN, amountOfClicks); 4216 if (typeof currentAmountText !== "undefined" && currentAmountText !== null) { 4217 let newAmount = parseInt(currentAmountText.innerHTML) + parseInt(amountToSum); 4218 if (newAmount >= parseInt(totalAmount)) { 4219 newAmount = document.querySelector('.total__js').innerHTML; 4220 } 4221 currentAmountText.innerHTML = newAmount.toString() 4222 } 4223 if (typeof google != "undefined" && google.hasOwnProperty('maps')){ 4224 if (typeof initializeMapSR == 'function') { 4225 initializeMapSR(); 4226 }else{ 4227 $('.mapView.activeView').click(); 4228 } 4229 } 4230 }).catch((error) => { 4231 console.error('Error:', error); 4232 }); 4233 }); 4234 // Check if insta_load_btn_behavior is set 4235 4236 } 4237 if (typeof gridView !== "undefined" && typeof btnClickMoreContainer !== "undefined") { 4238 gridView.addEventListener('click', function () { 4239 gridView.classList.add('activeView'); 4240 if (gridView.classList.contains('activeView')) { 4241 btnClickMoreContainer.classList.add('gridBtnLazyLoad'); 4242 } else { 4243 btnClickMoreContainer.classList.remove('gridBtnLazyLoad'); 4244 } 4245 }); 4246 } 4247 if (typeof listView !== "undefined" && typeof btnClickMoreContainer !== "undefined") { 4248 4249 listView.addEventListener('click', function () { 4250 listView.classList.add('activeView'); 4251 if (listView.classList.contains('activeView')) { 4252 btnClickMoreContainer.classList.remove('gridBtnLazyLoad'); 4253 } else { 4254 btnClickMoreContainer.classList.add('gridBtnLazyLoad'); 4255 } 4256 }); 4257 } 4258 4259 function setAmountPages(btn, amount) { 4260 if (!("pages" in btn.dataset)) { 4261 btn.dataset.pages = parseInt(amount) - 1; // we do -1 because the one just clicked 4262 } else { 4263 btn.dataset.pages = parseInt(btn.dataset.pages) - 1; 4264 } 4265 if (btn.dataset.pages <= 0) { 4266 removeListenToScroll(); 4267 btn.remove(); 4268 } 4269 } 4270 4271 function setClassLoaded() { 4272 if (flagFirstTime) { 4273 flagFirstTime = false; 4274 let images = document.querySelectorAll('.grid-container img:not(.loaded)');
4275 images.forEach(image => { 4276 image.classList.add("loaded"); 4277 }); 4278 } 4279 } 4280 function applyGridClasses($el) { 4281 $el.find('.img_section.col-xs-2').removeClass('col-xs-2').addClass('col-xs-12 bmargin ex-col-2'); 4282 $el.find('.img_section.col-sm-3').removeClass('col-sm-3').addClass('col-sm-12 bmargin ex-col-3'); 4283 $el.find('.img_section.col-sm-4').removeClass('col-sm-4').addClass('col-sm-12 bmargin ex-col-4'); 4284 $el.find('.mid_section.col-sm-9').removeClass('col-sm-9').addClass('col-sm-12 ex-col-9'); 4285 $el.find('.mid_section.col-sm-6').removeClass('col-sm-6').addClass('col-sm-12 ex-col-6'); 4286 $el.find('.mid_section.col-sm-7').removeClass('col-sm-7').addClass('col-sm-12 nohpad ex-col-7 text-center bpad'); 4287 $el.find('.mid_section.col-sm-8').removeClass('col-sm-8').addClass('col-sm-12 ex-col-8 nohpad bpad'); 4288 $el.find('.mid_section .post-location-snippet').addClass('text-center'); 4289 $el.find('.mid_section.ex-col-7 .sm-block').addClass('show'); 4290 $el.find('.mid_section .row-fluid.bpad .col-md-8').removeClass('col-md-8').addClass('col-sm-12 bmargin'); 4291 $el.find('.mid_section .row-fluid.bpad a').addClass('btn-block'); 4292 $el.find('.mid_section .row-fluid.bpad').addClass('text-center'); 4293 $el.find('.info_section').removeClass('col-sm-3 norpad').addClass('col-sm-12 nopad'); 4294 $el.find('.mid_section > div > p').addClass('text-center'); 4295 $el.find('.mid_section h2').addClass('nomargin'); 4296 $el.find('.mid_section a.h3').addClass('text-center h4 tmargin'); 4297 $el.find('.mid_section .view-details').removeClass('rmargin'); 4298 $el.find('.mid_section .contact-member').removeClass('lmargin'); 4299 $el.find('.member-search-full-name').removeClass('rmargin'); 4300 $el.find('.member-search-reviews').removeClass('rmargin'); 4301 $el.find('.member-search-location').removeClass('rmargin rpad'); 4302 $el.find('.member-search-company').addClass('btn-block'); 4303 $el.find('.view_phone_number').addClass('center-block'); 4304 $el.find('.phone_number').addClass('btn-block'); 4305 $el.find('.search_result_image').addClass('grid_image'); 4306 $el.find('.post-search-category').removeClass('inline-block').addClass('text-center'); 4307 $el.find('.post-results-star').removeClass('pull-right').addClass('text-center tmargin'); 4308 /* Mirror the column class the initial conversion (widget 2294) already applied - re-evaluating the conditions here can disagree and mix 3-per-row with 4-per-row; 2294 owns the decision (incl. the Web Page sidebar override) */ 4309 if ($('.grid-container .search_result.col-md-3.grid').not($el).length > 0) { 4310 $el.addClass('col-xs-12 col-sm-3 col-md-3 grid').removeClass('row-fluid'); 4311 } else { 4312 $el.addClass('col-xs-12 col-sm-4 col-md-4 grid').removeClass('row-fluid'); 4313 } 4314 $el.find('.grid_element').addClass('well xs-center-block'); 4315 $el.find('.col-md-3 + .clearfix, .col-md-4 + .clearfix, .clearfix + hr, hr + .clearfix, .mid_section > p, .mid_section .row-fluid.bpad p.nomargin, .tags, table.bmargin,.posted-by,.star_rating .the-rating-text').hide(); 4316 $el.find('h2.h3.bold > a').addClass('gridA'); 4317 $el.find('.info_section .module').removeClass('module fpad'); 4318 } 4319 4320 function refreshUI(){ 4321 if (typeof masonry_opened !== 'undefined' && masonry_opened == 1) { 4322 $('.grid-container').masonry('layout'); 4323 } 4324 } 4325 function checkAllImagesLoaded() { 4326 let images = document.querySelectorAll('.grid-container img:not(.loaded)'); 4327 let countImg = 0; 4328 4329 if (images.length === 0) { 4330 refreshUI(); 4331 return; 4332 } 4333 4334 images.forEach(image => { 4335 image.classList.add("loaded"); 4336 4337 if (image.complete) { 4338 countImg++; 4339 if (countImg === images.length) { 4340 refreshUI(); 4341 } 4342 return; 4343 } 4344 4345 image.addEventListener('load', () => { 4346 countImg++; 4347 if (countImg === images.length) { 4348 refreshUI() 4349 } 4350 }); 4351 image.addEventListener('error', () => { 4352 countImg++; 4353 if (countImg === images.length) { 4354 refreshUI() 4355 } 4356 }); 4357 }); 4358 4359 } 4360 4361 // Variables 4362 let userStartedScrolling = false; // Flag to check if the user has started scrolling 4363 let wasPreviouslyInViewport = false; // To track if the button was in the viewport previously 4364 4365 4366 // Function to remove the scroll event listener 4367 function removeListenToScroll(){ 4368 window.removeEventListener('scroll', listenToScroll); 4369 } 4370 4371 // Function to check button visibility and load content 4372 function listenToScroll() { 4373 const isInViewport = isElementInViewport(btnClickMore); 4374 4375 // Check if the button has just entered the viewport 4376 const justEnteredViewport = !wasPreviouslyInViewport && isInViewport; 4377 4378 // If button just entered the viewport, user has started scrolling, and autoLoadResults is true 4379 if (userStartedScrolling && justEnteredViewport && autoLoadResults) { 4380 // Add a delay (2 seconds) before automatically clicking the button to load content 4381 setTimeout(function() { 4382 btnClickMore.click(); 4383 autoLoadResults = false; // Set the flag too false to avoid subsequent auto-clicks 4384 }, 2000); 4385 } 4386 4387 // If the button is out of the viewport, reset autoLoadResults 4388 if (!isInViewport) { 4389 autoLoadResults = true; 4390 } 4391 4392 // Update the previous viewport status for the next check 4393 wasPreviouslyInViewport = isInViewport; 4394 } 4395 4396 // Function to determine if a DOM element is in the viewport 4397 function isElementInViewport(el) { 4398 const rect = el.getBoundingClientRect(); 4399 return ( 4400 rect.top >= 0 && 4401 rect.left >= 0 && 4402 rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && 4403 rect.right <= (window.innerWidth || document.documentElement.clientWidth) 4404 ); 4405 } 4406 4407</script>
4407 <!-- Google tag (gtag.js) -->
vendor: 69 bytes, lines 4407-4408
4407 4408 <script async src="https://www.googletagmanager.com/gtag/js?id=
4408G-P1XB9V3NG1
vendor: 17 bytes, lines 4408-4409
4408"></script> 4409
4409<script> 4410
vendor: 154 bytes, lines 4410-4413
4410window.dataLayer = window.dataLayer || []; 4411 function gtag(){dataLayer.push(arguments);} 4412 gtag('js', new Date()); 4413 gtag('config', '
4413G-P1XB9V3NG1
vendor: 9 bytes, lines 4413-4414
4413'); 4414
4414</script>
4414 4415 4416
4416<script type="text/javascript"> 4417 /* CT dissolved its county governments in 1960, so Google returns its 8 counties as 4418 colloquial_area instead of administrative_area_level_2 â they must never reach a 4419 city field. Google translates the component name to the site language, so the 4420 language-stable place_id is checked first and the word list only backs it up. */ 4421 if (typeof window.bdIsColloquialCounty !== 'function') { 4422 window.bdIsColloquialCounty = function (componentName, resultPlaceId) { 4423 var countyPlaceIds = [ 4424 'ChIJWRM2Nakw5okRoTCxHvz_5xw', /* Middlesex County, CT */ 4425 'ChIJmeTbuDYH6IkR3xgeNvszpgg', /* Fairfield County, CT */ 4426 'ChIJiT24cvvP54kR2fSPHkp0Akc', /* New Haven County, CT */ 4427 'ChIJvYe7N7eQ54kRL6nZaXRwPkI', /* Litchfield County, CT */ 4428 'ChIJtxC3p6qs54kRIvK-2bctar0', /* Hartford County, CT */ 4429 'ChIJj-lvZQli5okRGCuGRd6xKt0', /* Tolland County, CT */ 4430 'ChIJRWKqeLdi5okRLXWDlSEGeTY', /* Windham County, CT */ 4431 'ChIJwTIQbvVv5okRU5_gSJczUTQ' /* New London County, CT */ 4432 ]; 4433 4434 if (typeof resultPlaceId === 'string' && resultPlaceId !== '' 4435 && countyPlaceIds.indexOf(resultPlaceId) !== -1) { 4436 return true; 4437 } 4438 4439 if (typeof componentName !== 'string' || componentName === '') { 4440 return false; 4441 } 4442 4443 var name = componentName.toLowerCase(); 4444 4445 /* Only unambiguous county words â generic ones (region, district) would strip 4446 legitimate colloquial areas, and their languages already match on place_id. 4447 Word-boundary matched so names like "Countyline, OK" are left alone. */ 4448 var wordTokens = ['county', 'condado', 'comté', 'contea', 4449 'comitatul', 'hrabstwo', 'megye', 'konderria']; 4450 var isAlnum = function (ch) { 4451 return (ch >= 'a' && ch <= 'z') || (ch >= '0' && ch <= '9'); 4452 }; 4453 4454 for (var t = 0; t < wordTokens.length; t++) { 4455 var token = wordTokens[t]; 4456 var from = 0; 4457 while (true) { 4458 var at = name.indexOf(token, from); 4459 if (at === -1) { 4460 break; 4461 } 4462 var before = (at > 0) ? name.charAt(at - 1) : ' '; 4463 var after = ((at + token.length) < name.length) ? name.charAt(at + token.length) : ' '; 4464 if (!isAlnum(before) && !isAlnum(after)) { 4465 return true; 4466 } 4467 from = at + 1; 4468 } 4469 } 4470 4471 /* Non-latin scripts have no alphanumeric word boundary. */ 4472 var scriptTokens = ['каÑнÑи', 'کاؤÙÙ¹Û', 'à¤à¤¾à¤à¤à¤à¥', 'ì¹´ì´í°']; 4473 for (var s = 0; s < scriptTokens.length; s++) { 4474 if (name.indexOf(scriptTokens[s]) !== -1) { 4475 return true; 4476 } 4477 } 4478 4479 return false; 4480 }; 4481 } 4482 4483 // Try to load coordinates from sessionStorage on page load 4484 var vlat = 0; 4485 var vlon = 0; 4486 try { 4487 var savedLat = sessionStorage.getItem('bd_geolocation_lat'); 4488 var savedLon = sessionStorage.getItem('bd_geolocation_lon'); 4489 if (savedLat && savedLon) { 4490 vlat = parseFloat(savedLat); 4491 vlon = parseFloat(savedLon); 4492 } 4493 } catch(e) {} 4494 var isSubmit = false; 4495 var isGettingLocation = false; // Flag to prevent multiple simultaneous geolocation requests 4496 4497 // Function to save coordinates to sessionStorage 4498 function saveCoordinatesToSession(lat, lon) { 4499 try { 4500 sessionStorage.setItem('bd_geolocation_lat', lat.toString()); 4501 sessionStorage.setItem('bd_geolocation_lon', lon.toString()); 4502 } catch(e) {} 4503 } 4504 4505 // Function to get coordinates from sessionStorage if current ones are 0 4506 function getCoordinatesFromSession() { 4507 if (vlat === 0 && vlon === 0) { 4508 try { 4509 var savedLat = sessionStorage.getItem('bd_geolocation_lat'); 4510 var savedLon = sessionStorage.getItem('bd_geolocation_lon'); 4511 if (savedLat && savedLon) { 4512 vlat = parseFloat(savedLat); 4513 vlon = parseFloat(savedLon); 4514 return true; 4515 } 4516 } catch(e) {} 4517 } 4518 return false; 4519 } 4520 var cityTypes = [ 4521 'colloquial_area', 4522 'locality', 4523 'sublocality', 4524 'sublocality_level_1', 4525 'sublocality_level_2', 4526 'sublocality_level_3', 4527 'sublocality_level_4', 4528 'sublocality_level_5', 4529 'neighborhood', 4530 'ward', 4531 'postal_town' 4532 ]; 4533 4534 var postalTypes = [ 4535 'postal_code', 4536 'postal_code_prefix', 4537 'postal_code_suffix', 4538 'street_number', 4539 'premise', 4540 'subpremise', 4541 'route', 4542 'intersection', 4543 'street_address', 4544 'floor', 4545 'room', 4546 'post_box', 4547 'delivery_address' 4548 ]; 4549 4550 var isSubmitting = false; 4551 window.cachedSelectedOption = [{ 'typed_location': '' }]; 4552 window.isSubmittingMainSearch = false; 4553 4554 document.addEventListener('DOMContentLoaded', () => { 4555 let isSubmitting = false; // Add flag at the top level 4556 4557 setTimeout(()=>{ 4558 let googleSuggestForm = document.querySelectorAll('.googleSuggest,.google-writen-location,input[name="lead_location"],.fill_location'); 4559 if (typeof googleSuggestForm != "undefined") { 4560 for (let i = 0; i < googleSuggestForm.length; i++) { 4561 let closestForm = googleSuggestForm[i].closest('form'); 4562 if(typeof closestForm != "undefined" && closestForm != null){ 4563 closestForm.addEventListener('focusin', googleMapOnFormClick, false); 4564 4565 }else{ 4566 googleSuggestForm[i].addEventListener('input', googleMapOnFormClick, false); 4567 } 4568 googleSuggestForm[i].addEventListener('click', googleMapOnFormClick, false); 4569 } 4570 } 4571 },200);
4572 4573 $('.website-search button[type=submit]').click(async function (e) { 4574 e.preventDefault(); // Prevent the default submit action 4575 var nativeForm = $(this).closest('form')[0]; 4576 if (nativeForm && typeof nativeForm.reportValidity === 'function' && !nativeForm.reportValidity()) { 4577 return false; 4578 } 4579 await googleMapOnFormClick(); 4580 $(this).closest('form').submit(); 4581 }); 4582 }); 4583 window['gmapClick'] = false; 4584 function googleMapOnFormClick() { 4585 if(window.gmapClick){ 4586 return; 4587 } 4588 window.gmapClick = true; 4589 4590 return new Promise((resolve, reject) => { 4591 window.isSubmittingMainSearch = false; 4592 let googleSuggestForm = document.querySelectorAll('.googleSuggest, .google-writen-location, input[name="lead_location"], .fill_location'); 4593 let mapUri = "https://maps.googleapis.com/maps/api/js?v=quarterly&libraries=places®ion=US&callback=initializeG&language=en&key=AIzaSyA-9ALlYJqgIKMtCrSgZdVH41swnkqb0hk"; 4594 4595 if (typeof google !== "undefined" && google.hasOwnProperty('maps')) { 4596 resolve('already loaded'); 4597 return; 4598 } 4599 4600 let loadMapScriptAsync = function (uri) { 4601 return new Promise((resolve, reject) => { 4602 let script = document.createElement('script'); 4603 script.type = 'text/javascript'; 4604 script.src = uri; 4605 script.async = true; 4606 script.onload = function () { 4607 resolve("ok"); 4608 }; 4609 script.onerror = function () { 4610 reject("Failed to load Google Maps script."); 4611 }; 4612 document.head.appendChild(script); 4613 }); 4614 }; 4615 4616 loadMapScriptAsync(mapUri) 4617 .then(() => { 4618 resolve(); 4619 }) 4620 .catch((error) => { 4621 console.error(error); 4622 reject(); 4623 }); 4624 4625 }); 4626 } 4627 4628 function initializeG() { 4629 var geocoder; 4630 //This piece of code will create an autosuggest for every input with the class "googleSuggest" 4631 var counter = 1; 4632 var inputsArray = []; 4633 window.cachedSelectedOption = [{ 'typed_location': '' }]; 4634 let mapExists = document.querySelectorAll('[id^="map"]').length > 0; 4635 const functionsToInvoke = { 4636 setJsMap: true, 4637 setJsMapOverview: mapExists, 4638 setJsMapSR: mapExists, 4639 setJsMapSidebar: mapExists 4640 }; 4641 if (window['maps_loaded'] !== true) { 4642 for (let func in functionsToInvoke) { 4643 if (typeof window[func] === 'function' && functionsToInvoke[func]) { 4644 window['maps_loaded'] = true; 4645 window[func](); 4646 } 4647 } 4648 } 4649 $(".googleSuggest").each(function () { 4650 //get the id from the input to be the unique identifier for each autocomplete 4651 var inputId = $(this).attr("id"); 4652 var inputElement = $(this); 4653 inputsArray[counter] = /** @type {HTMLInputElement} */( 4654 document.getElementById('' + inputId)); 4655 const mainCountry = 'US'; 4656 const inputOptions = { 4657 fields: ['address_components', 'adr_address','formatted_address', 'geometry', 'icon', 'name','place_id','plus_code','type'], 4658 types: ['geocode'] 4659 } 4660 const language = "en"; 4661 4662 if (language) { 4663 inputOptions.language = language; 4664 } 4665 if (mainCountry) { 4666 inputOptions.componentRestrictions = {country: mainCountry}; 4667 inputOptions.region = mainCountry; 4668 } 4669 4670 var autocomplete = new google.maps.places.Autocomplete(inputsArray[counter], inputOptions); 4671 google.maps.event.addListener(autocomplete, 'place_changed', function () { 4672 const place = autocomplete.getPlace(); 4673 4674 cachedSelectedOption = []; 4675 cachedSelectedOption.push(place); 4676 4677 cachedSelectedOption[0]['typed_location'] = inputElement.val(); 4678 /* if(cachedSelectedOption[0]['adr_address']){ 4679 let cleanLocation = cachedSelectedOption[0]['adr_address'].replace(/<[^>]*>/g, ''); 4680 cachedSelectedOption[0]['typed_location'] = cleanLocation; 4681 inputElement.val(cleanLocation); 4682 }*/ 4683 if (cachedSelectedOption[0]['address_components'] == undefined) { 4684 cachedSelectedOption = []; 4685 var emptyObj = { 4686 'typed_location': '' 4687 }; 4688 cachedSelectedOption.push(emptyObj); 4689 } 4690 }); 4691 //the code that prevents the submition when hit enter on a google location autocomplete item 4692 inputElement.keydown( function (e) { 4693 if (e.keyCode == 13) { 4694 var pacCounter = 0; 4695 //need to run a loop to check each pac container 4696 $('.pac-container').each(function () { 4697 4698 if ($(this).css("display") != "none") { 4699 pacCounter++; 4700 } 4701 }); 4702 if (pacCounter > 0) { 4703 e.preventDefault(); 4704 } 4705 } 4706 }); 4707 counter++; 4708 }); 4709 4710 //triggers every time a form with the id website-search is trigered 4711 $('.website-search').submit(function (e) { 4712 4713 var currentForm = $(this); 4714 var locationInput = $(this).find(".googleLocation"); 4715 var $submitButton = currentForm.find('input[type=submit], button[type=submit]'); 4716 4717 4718 if (locationInput.val() != "" && typeof locationInput.val() != 'undefined') { 4719 4720 // Set submitting flag 4721 window.isSubmittingMainSearch = true; 4722 $submitButton.prop('disabled', true); 4723 4724 e.preventDefault(); 4725 //this variable has the main country of the site 4726 var form = currentForm; 4727 var urlGET = form.serialize(); 4728 var formActionUrl = form.attr("action"); 4729 var locationValue = locationInput.val(); 4730 4731 4732 4733 const mainCountry = 'US'; 4734 const inputOptions = { 4735 address:locationValue 4736 } 4737 const language = "en"; 4738 4739 if (language) { 4740 inputOptions.language = language; 4741 } 4742 if (mainCountry) { 4743 inputOptions.componentRestrictions = {country: mainCountry}; 4744 inputOptions.region = mainCountry; 4745 } 4746 4747 if (typeof cachedSelectedOption == 'undefined') { 4748 var emptyForm = { 4749 'typed_location': '' 4750 }; 4751 cachedSelectedOption.push(emptyForm); 4752 } 4753 4754 if (locationValue != cachedSelectedOption[0]['typed_location']) { 4755 geocoder = new google.maps.Geocoder(); 4756 geocoder.geocode(inputOptions, function (results, status) { 4757 4758 //if the google response of the geocoding was successful it will use that info to build the url for the new search 4759 if (status == google.maps.GeocoderStatus.OK) { 4760 parseInfoToSearch(results, urlGET, formActionUrl); 4761 4762 } else { 4763 var urlPath = formActionUrl; 4764 var redirect = urlPath + "?" + urlGET; 4765 //will redirect the page using the new url that has been constructed 4766 window.location.href = redirect; 4767 } 4768 }); 4769 4770 } else { 4771 parseInfoToSearch(cachedSelectedOption, urlGET, formActionUrl); 4772 } 4773 } 4774 }); 4775 4776 4777 //check if a map has been loaded 4778 if ($('#map-canvas').length > 0) { 4779 var cssHideLogo = "<style>.pac-container:after { /* Disclaimer: not needed to show 'powered by Google' if also a Google Map is shown */background-image: none !important;height: 0px;}</style>"; 4780 $('body').append(cssHideLogo); 4781 } else { 4782 var cssHideLogo = "<style>.pac-container:after { /* Disclaimer: not needed to show 'powered by Google' if also a Google Map is shown */background-image: block !important;height: 16px;}</style>"; 4783 $('body').append(cssHideLogo); 4784 } 4785
4786 if (geocodeVisitorsSetting == 1 && geocodingMethod === "IP") { 4787 populateSearchFields(); 4788 } 4789 4790 if($('.googleSuggest').val() == ""){ 4791 populateSearchFields(); 4792 } 4793 4794 var geocodeVisitorsSetting = '0'; 4795 var geocodingMethod = 'HTML5'; 4796 4797 //check the advanced setting "geocode_visitor_default" if set to 1 will override the "location_value" values to the formatted desire address from the google reverse geocoding response 4798 4799 var vlon = ''; 4800 var vlat = ''; 4801 } 4802 4803 function switchPlaceID(placeId,urlGET, formActionUrl) { 4804 let request = { 4805 placeId: placeId, 4806 fields: ['address_components', 'adr_address', 'formatted_address', 'geometry', 'icon', 'name', 'place_id', 'plus_code', 'type'], 4807 }; 4808 4809 let service = new google.maps.places.PlacesService(document.createElement('div')); 4810 service.getDetails(request, function(place, status) { 4811 if (status === google.maps.places.PlacesServiceStatus.OK) { 4812 let dataArray = []; 4813 dataArray.push(place); 4814 parseInfoToSearch(dataArray, urlGET, formActionUrl); 4815 } else { 4816 console.error('Place details request failed with status:', status); 4817 } 4818 }); 4819 } 4820 4821 function parseInfoToSearch(results, urlGET, formActionUrl) { 4822 var urlSearchParams = new URLSearchParams(urlGET); 4823 var parameters = {}; 4824 var addressComponentsArray = []; 4825 if (results.length > 1) { 4826 if(urlSearchParams.get("location_value")?.toLowerCase() === "nebraska" && results.length === 2){ 4827 let tempResult = results[0]; 4828 results[0] = results[1]; 4829 results[1] = tempResult; 4830 } 4831 for (let i = 0; i < results.length; i++) { 4832 if (results[i].types[0] === 'natural_feature' || 4833 results[i].types[0] === 'airport' || 4834 results[i].types[0] === 'point_of_interest' || 4835 results[i].types[0] === 'establishment' || 4836 results[i].types[0] === 'political' || 4837 results[i].types[0] === 'park') { 4838 results.splice(i, 1); 4839 } 4840 } 4841 } 4842 var adComLength = results[0].address_components.length; 4843 4844 if(results[0].place_id == 'ChIJmQrivHKsQjQR4MIK3c41aj8'){ 4845 switchPlaceID('ChIJi73bYWusQjQRgqQGXK260bw',urlGET, formActionUrl); 4846 return; 4847 } 4848 sessionStorage.setItem("google_result",JSON.stringify(results)); 4849 4850 4851 var foundPostalType = results[0].types.find(type => postalTypes.includes(type)); 4852 var foundCityType = results[0].types.find(type => cityTypes.includes(type)); 4853 4854 //loop that will build the array with the address components and will get the short name of country and administrative area level 1 4855 for (var i = 0; i < adComLength; i++) { 4856 4857 if (results[0].address_components[i]['types'][0] == "country") { 4858 parameters.country_sn = results[0].address_components[i]['short_name']; 4859 } 4860 if (results[0].address_components[i]['types'][0] == "administrative_area_level_1") { 4861 parameters.adm_lvl_1_sn = results[0].address_components[i]['short_name']; 4862 } 4863 if (results[0].address_components[i]['types'][0] == "administrative_area_level_1") { 4864 parameters.stateSearchLN = results[0].address_components[i]['long_name']; 4865 } 4866 if (results[0].address_components[i]['types'][0] == "administrative_area_level_2") { 4867 /* short_name is what the service-area writer stores in 4868 service_areas.county_sn, so the search must send the same 4869 form or county matching breaks wherever short != long. */ 4870 parameters.county_sn = results[0].address_components[i]['short_name']; 4871 } 4872 if ($.inArray(results[0].address_components[i]['types'][0], cityTypes) !== -1 && (foundCityType || foundPostalType ) ) { 4873 var addrType = results[0].address_components[i]['types'][0]; 4874 var addrLong = results[0].address_components[i]['long_name']; 4875 /* CT counties come back as colloquial_area â keep them out of parameters.city. */ 4876 if (addrType !== 'colloquial_area' 4877 || !window.bdIsColloquialCounty(addrLong, results[0].place_id)) { 4878 parameters.city = addrLong; 4879 } 4880 } 4881 if (results[0].address_components[i]['types'][0] == "postal_code" || results[0].address_components[i]['types'][0] == "postal_code_prefix") { 4882 parameters.postal_code = results[0].address_components[i]['long_name']; 4883 } 4884 } 4885 4886 4887 // Filter out 'political' from result types - use more specific type when available 4888 // Same pattern as BD-directory-maps-typePolitical (PR #5642) 4889 if (results[0].types && results[0].types.length > 1 && results[0].types[0] === 'political') { 4890 results[0].types.splice(0, 1); 4891 } 4892 4893 // Pick the most specific type from results, skip "political" (too generic) 4894 parameters.location_type = results[0].types[0]; 4895 for (var t = 0; t < results[0].types.length; t++) { 4896 if (results[0].types[t] != 'political') { 4897 parameters.location_type = results[0].types[t]; 4898 break; 4899 } 4900 } 4901 4902 // When searching by city/locality, omit postal_code â Google returns 4903 // a partial zip prefix that doesn't match all members in the city 4904 if (parameters.location_type == 'locality' && parameters.postal_code) { 4905 delete parameters.postal_code; 4906 } 4907 4908 if (parameters.adm_lvl_1_sn != '') { 4909 parameters.stateSearch = parameters.adm_lvl_1_sn; 4910 } 4911 if (parameters.country_sn == "GB") { 4912 delete parameters.adm_lvl_1_sn; 4913 } 4914 4915 //will check if the response had the bounds parameters 4916 //if it had it will add the south west and north east parameters to the new url 4917 if (results[0].geometry.hasOwnProperty('bounds') || results[0].geometry.hasOwnProperty('viewport')) { 4918 4919 if (results[0].geometry.hasOwnProperty('bounds')) { 4920 var boundsResponse = results[0].geometry.bounds; 4921 4922 } else { 4923 var boundsResponse = results[0].geometry.viewport; 4924 } 4925 parameters.swlat = boundsResponse.getSouthWest
4925().lat(); 4926 parameters.nelat = boundsResponse.getNorthEast().lat(); 4927 parameters.swlng = boundsResponse.getSouthWest().lng(); 4928 parameters.nelng = boundsResponse.getNorthEast().lng(); 4929 4930 //if there were not bounds parameters in the response it will send the parameter fsearch as radius so a radius search will be performed because of lack of info for this location 4931 } else { 4932 parameters.fsearch = "radius"; 4933 } 4934 var locationCenterResponse = results[0].geometry.location; 4935 parameters.lat = locationCenterResponse.lat(); 4936 parameters.lng = locationCenterResponse.lng(); 4937 parameters.faddress = results[0].formatted_address; 4938 parameters.place_id = results[0].place_id; 4939 var formatParameters = $.param(parameters); 4940 urlGET = urlGET + "&" + formatParameters; 4941 var urlPath = formActionUrl; 4942 var redirect = urlPath + "?" + urlGET; 4943 //will redirect the page using the new url that has been constructed 4944 window.location.href = redirect; 4945 } 4946 function populateSearchFields() { 4947 var prePopulateLocationSetting = '0'; 4948 var geolocationMethod = 'HTML5'; 4949 4950 // If geolocation is in progress and we don't have coordinates yet, wait a bit 4951 if (isGettingLocation && (vlat === 0 || vlon === 0)) { 4952 var waitStartTime = performance.now(); 4953 var waitInterval = setInterval(function() { 4954 if (!isGettingLocation || (vlat !== 0 && vlon !== 0)) { 4955 clearInterval(waitInterval); 4956 // Retry after a short delay to ensure coordinates are set 4957 setTimeout(function() { 4958 populateSearchFields(); 4959 }, 100); 4960 } else if ((performance.now() - waitStartTime) > 10000) { 4961 // Timeout after 10 seconds - try sessionStorage 4962 clearInterval(waitInterval); 4963 if (getCoordinatesFromSession()) { 4964 setTimeout(function() { 4965 populateSearchFields(); 4966 }, 100); 4967 } 4968 } 4969 }, 200); 4970 return; 4971 } 4972 4973 // If coordinates are 0, try to get from sessionStorage 4974 if (vlat === 0 || vlon === 0) { 4975 getCoordinatesFromSession(); 4976 } 4977 4978 // Validate coordinates first 4979 var hasValidCoordinates = (vlat !== '' && vlon !== '' && vlat != undefined && vlon != undefined && vlat != 0 && vlon != 0 && Math.abs(vlat) <= 90 && Math.abs(vlon) <= 180); 4980 4981 if (!hasValidCoordinates) { 4982 return; 4983 } 4984 4985 //if set to one will get the lat and lng to do reverse geocoding 4986 if (prePopulateLocationSetting == 1 && (geolocationMethod === "HTML5" || geolocationMethod === "IP")) { 4987 var visitorLatLng = new google.maps.LatLng(parseFloat(vlat), parseFloat(vlon)); 4988 var visitorGeocoder = new google.maps.Geocoder(); 4989 var formattedAddress = []; 4990 var preFormattedStructure = { 4991 "locality": "long_name", 4992 "administrative_area_level_2": "long_name", 4993 "administrative_area_level_1": "long_name", 4994 "country": "long_name" 4995 }; 4996 visitorGeocoder.geocode({'latLng': visitorLatLng}, function (results, status) { 4997 //if the google response of the geocoding was successful it will use that info to build the url for the new search 4998 if (status == google.maps.GeocoderStatus.OK) { 4999 window.cachedSelectedOption = results; 5000 $.each(preFormattedStructure, function (findex, fvalue) { 5001 $.each(results[0].address_components, function (rindex, rvalue) { 5002 if (rvalue.types[0] == findex) { 5003 formattedAddress.push(rvalue.long_name); 5004 } 5005 }); 5006 }); 5007 $('.googleSuggest').each(function () { 5008 if ($(this).val() == '') { 5009 if (formattedAddress.length > 0) { 5010 $(this).val(formattedAddress.join(', ')); 5011 clearContent($(this)); 5012 } 5013 } 5014 }); 5015 } else { 5016 $('.googleSuggest').each(function () { 5017 $(this).val(''); 5018 }); 5019 } 5020 }); 5021 } 5022 } 5023 function showError(error) { 5024 switch (error.code) { 5025 case error.PERMISSION_DENIED: 5026 case 1: // PERMISSION_DENIED 5027 $('.fill_location.clicked').popover({ 5028 content: `Your local browser settings have prevented location targeting. Please enable location permissions in your browser settings.`, 5029 container: 'body' 5030 }); 5031 $('.fill_location.clicked').popover('toggle'); 5032 setTimeout(function () { 5033 $('.fill_location.clicked').popover('hide'); 5034 $('.fill_location.clicked').removeClass('clicked'); 5035 }, 4000); 5036 break; 5037 case error.POSITION_UNAVAILABLE: 5038 case 2: // POSITION_UNAVAILABLE 5039 $('.fill_location.clicked').popover({ 5040 content: `Location information is unavailable. Please check your device location settings.`, 5041 container: 'body' 5042 }); 5043 $('.fill_location.clicked').popover('toggle'); 5044 setTimeout(function () { 5045 $('.fill_location.clicked').popover('hide'); 5046 $('.fill_location.clicked').removeClass('clicked'); 5047 }, 4000); 5048 break; 5049 case error.TIMEOUT: 5050 case 3: // TIMEOUT 5051 $('.fill_location.clicked').popover({ 5052 content: `Location request timed out. Please ensure location services are enabled and try again.`, 5053 container: 'body' 5054 }); 5055 $('.fill_location.clicked').popover('toggle'); 5056 setTimeout(function () { 5057 $('.fill_location.clicked').popover('hide'); 5058 $('.fill_location.clicked').removeClass('clicked'); 5059 }, 4000); 5060 break; 5061 case error.UNKNOWN_ERROR: 5062 default: 5063 $('.fill_location.clicked').popover({ 5064 content: `An error occurred while getting your location. Please try again.`, 5065 container: 'body' 5066 }); 5067 $('.fill_location.clicked').popover('toggle'); 5068 setTimeout(function () { 5069 $('.fill_location.clicked').popover('hide'); 5070 $('.fill_location.clicked').removeClass('clicked'); 5071 }, 4000); 5072 break; 5073 } 5074 } 5075 if (navigator.geolocation) { 5076 if ($(".googleSuggest")[0]) { 5077 $(document).on('click', '.fill_location', function getCXPosition() { 5078 // Prevent multiple simultaneous geolocation requests 5079 if (isGettingLocation) { 5080 return; 5081 } 5082 5083 var $button = $(this); 5084 $button.addClass('clicked'); 5085 var startPos; 5086 5087 // Set flag to prevent concurrent requests 5088 isGettingLocation = true; 5089 5090 // Function to actually get the position 5091 var attemptGetPosition = function() { 5092 // Try with shorter timeout first for faster response 5093 var geoOptions = {
5094 enableHighAccuracy: false, // Use false for faster response 5095 timeout: 8000, // 8 second timeout (reduced for faster failure) 5096 maximumAge: 300000 // Accept cached position up to 5 minutes old 5097 }; 5098 5099 navigator.geolocation.getCurrentPosition(function (position) { 5100 startPos = position; 5101 vlat = startPos.coords.latitude; 5102 vlon = startPos.coords.longitude; 5103 5104 // Validate coordinates before proceeding 5105 if (!vlat || !vlon || vlat === 0 || vlon === 0) { 5106 isGettingLocation = false; 5107 $button.removeClass('clicked'); 5108 return; 5109 } 5110 5111 // Save coordinates to sessionStorage 5112 saveCoordinatesToSession(vlat, vlon);
5113 5114 $.get("/api/data/html/get/data_widgets/widget_name", { 5115 "vlat": vlat, 5116 "vlon": vlon, 5117 "name": "Website - Save Coordinates Session" 5118 }); 5119 5120 populateSearchFields(); 5121 5122 // Clear flag 5123 isGettingLocation = false; 5124 $button.removeClass('clicked'); 5125 }, function(error) { 5126 // Clear flag on error 5127 isGettingLocation = false; 5128 $button.removeClass('clicked'); 5129 5130 // For timeout errors, try sessionStorage as fallback 5131 if (error.code === 3) { 5132 if (getCoordinatesFromSession()) { 5133 // Use cached coordinates 5134 $.get("/api/data/html/get/data_widgets/widget_name", { 5135 "vlat": vlat, 5136 "vlon": vlon, 5137 "name": "Website - Save Coordinates Session" 5138 }); 5139 5140 populateSearchFields(); 5141 5142 // Clear flag 5143 isGettingLocation = false; 5144 $button.removeClass('clicked'); 5145 } else { 5146 $button.popover({ 5147 content: `Location request timed out. Please ensure location services are enabled and grant permission when prompted.`, 5148 container: 'body' 5149 }); 5150 $button.popover('show'); 5151 setTimeout(function() { 5152 $button.popover('hide'); 5153 }, 5000); 5154 } 5155 } else { 5156 showError(error); 5157 } 5158 }, geoOptions); 5159 }; 5160 5161 // Check if geolocation permission is already denied (but don't block if it's prompt) 5162 if (navigator.permissions && navigator.permissions.query) { 5163 navigator.permissions.query({name: 'geolocation'}).then(function(result) { 5164 if (result.state === 'denied') { 5165 isGettingLocation = false; 5166 $button.removeClass('clicked'); 5167 showError({code: 1, message: 'Permission denied'}); 5168 return; 5169 } else { 5170 // Permission is granted or prompt - proceed with geolocation 5171 attemptGetPosition(); 5172 } 5173 }).catch(function(err) { 5174 // If permission API not supported, proceed anyway 5175 attemptGetPosition(); 5176 }); 5177 } else { 5178 // Permission API not available, proceed with geolocation 5179 attemptGetPosition(); 5180 } 5181 }) 5182 } 5183 } else { 5184 console.log('Geolocation is not supported for this Browser/OS version yet.'); 5185 } 5186 function getUrlParameter(sParam) { 5187 var sPageURL = window.location.search.substring(1); 5188 var sURLVariables = sPageURL.split('&'); 5189 5190 for (var i = 0; i < sURLVariables.length; i++) { 5191 var sParameterName = sURLVariables[i].split('='); 5192 5193 if (sParameterName[0] == sParam) { 5194 return decodeURIComponent(sParameterName[1]); 5195 } 5196 } 5197 } 5198 </script>
5198 5199
5199<script> 5200 // switchClass() is jQuery UI (Effects), which is no longer loaded on every page. 5201 // removeClass().addClass() is the same class swap, applied immediately instead of 5202 // after animateClass()'s queued 400ms default. 5203 $(document).ready(function(){ 5204 $('.navbar-header .navbar-toggle.main_menu').click(function(){ 5205 $('.mobile-main-menu').toggleClass('opened'); 5206 }); 5207 $('.mobile-main-menu .sidebar-nav').find('li').each(function(){ 5208 $(this).addClass('hasChildren'); 5209 if ($(this).children('ul').length > 0){ 5210 $(this).prepend('<i class="fa fa-plus" aria-hidden="true"></i>'); 5211 $(this).find('a').after('<div class="clearfix"></div>'); 5212 $(this).find('span').after('<div class="clearfix"></div>'); 5213 } 5214 $(this).append('<div class="clearfix"></div>'); 5215 }); 5216 5217 $('.mobile-main-menu .sidebar-nav li i').click(function(){ 5218 if ($(this).parent().children('ul').length > 0){ 5219 $(this).parent().toggleClass('sub_open'); 5220 } 5221 if ($(this).hasClass('fa-plus')){ 5222 $(this).removeClass('fa-plus').addClass('fa-minus'); 5223 } else { 5224 $(this).removeClass('fa-minus').addClass('fa-plus'); 5225 } 5226 }); 5227 }) 5228 5229 if ($(window).width() > 740 && $(window).width() < 1100) { 5230 5231 $(document).ready(function(){ 5232 $('.tablet-menu .tablet-menu-ul').find('li').each(function(){ 5233 5234 if ($(this).children('ul').length > 0){ 5235 $(this).prepend('<i class="fa fa-plus tablet-fa hidden-sm hidden-md hidden-lg" aria-hidden="true"></i>'); 5236 $(this).find('a').after('<div class="clearfix"></div>'); 5237 var this_link = $(this).children('a').text().replace(/[^\x00-\x7F]/g, "");; 5238 $(this).children('a').html(this_link); 5239 $(this).find('span').after('<div class="clearfix"></div>'); 5240 } 5241 $(this).append('<div class="clearfix"></div>'); 5242 }); 5243 5244 $('.tablet-menu .tablet-menu-ul li i').click(function(){ 5245 5246 if ($(this).parent().children('ul').length > 0){ 5247 $(this).parent().toggleClass('sub_open'); 5248 5249 if ($(this).siblings( "ul" ).hasClass('tablet-block')){ 5250 $(this).siblings( "ul" ).removeClass('tablet-block').addClass('tablet-none'); 5251 } else { 5252 $(this).siblings( "ul" ).addClass( "tablet-block" ); 5253 5254 if ($(this).siblings( "ul" ).hasClass('tablet-none')){ 5255 $(this).siblings( "ul" ).removeClass('tablet-none') 5256 } 5257 5258 if ($(this).parent().siblings().children('ul').hasClass('tablet-block')) { 5259 $(this).parent().siblings().children('ul').removeClass('tablet-block').addClass('tablet-none'); 5260 $(this).parent().siblings().children('i').removeClass('fa-minus').addClass('fa-plus'); 5261 } 5262 5263 if ($(this).parent().siblings().children('ul').children().children('ul').hasClass('tablet-block')) { 5264 $(this).parent().siblings().children('ul').children().children('ul').removeClass('tablet-block').addClass('tablet-none'); 5265 $(this).parent().siblings().children('ul').children().children('i').removeClass('fa-minus').addClass('fa-plus'); 5266 } 5267 5268 if ($(this).siblings('ul').children('ul').children().children('ul').hasClass('tablet-block')) { 5269 $(this).siblings('ul').children('ul').children().children('ul').removeClass('tablet-block').addClass('tablet-none'); 5270 $(this).siblings('ul').children('ul').children().children('i').removeClass('fa-minus').addClass('fa-plus'); 5271 } 5272 5273 } 5274 5275 } 5276 5277 if ($(this).hasClass('fa-plus')){ 5278 $(this).removeClass('fa-plus').addClass('fa-minus'); 5279 } else { 5280 $(this).removeClass('fa-minus').addClass('fa-plus'); 5281 } 5282 }); 5283 }) 5284 } 5285 // Append unique ID attribute for mobile main menu links 5286 $('.mobile-main-menu a,.mobile-main-menu span').attr("id", function() { return $(this).attr("id") + "-mobile" }); 5287</script>
5287 5288
5289<script> 5290/* Keeps the announcement bar flush with the navbar: this widget's CSS emits static 50px 5291 offsets that are blind to the hide-menu settings, so a hidden or fixed compact-logo 5292 navbar leaves a gap or an overlap. Measure the real navbar state and own the offset. */ 5293(function () { 5294 function alignAnnouncementToNavbar() { 5295 var ann = document.querySelector('.announcement-bar'); 5296 if (!ann) { return; } 5297 /* above the widget's own offset breakpoints: restore stylesheet values */ 5298 if (window.innerWidth > 1100) { 5299 ann.style.removeProperty('margin-top'); 5300 ann.style.removeProperty('top'); 5301 return; 5302 } 5303 var navbar = document.querySelector('.header nav.navbar.navbar-default'); 5304 var navStyle = navbar ? window.getComputedStyle(navbar) : null; 5305 /* navbar hidden: the 50px offsets have nothing to clear, sit flush */ 5306 if (!navbar || navStyle.display === 'none') { 5307 ann.style.setProperty('margin-top', '0px', 'important'); 5308 ann.style.setProperty('top', '0px', 'important'); 5309 return; 5310 } 5311 if (window.innerWidth >= 768) { return; } 5312 /* only act while the navbar is pinned and showing the compact logo */ 5313 if (navStyle.position !== 'fixed') { return; } 5314 var logo = navbar.querySelector('.mobile_website_logo'); 5315 if (!logo || window.getComputedStyle(logo).display === 'none') { return; } 5316 var navRect = navbar.getBoundingClientRect(); 5317 var annRect = ann.getBoundingClientRect(); 5318 var delta = Math.round(navRect.bottom - annRect.top); /* >0 overlap, <0 gap */ 5319 if (delta === 0) { return; } 5320 var currentMt = parseFloat(window.getComputedStyle(ann).marginTop) || 0; 5321 var nextMt = currentMt + delta; 5322 /* a transient element above the bar during load can inflate the measure; a 5323 negative margin would pull the bar behind the navbar, so clamp at 0 */ 5324 if (nextMt < 0) { nextMt = 0; } 5325 /* !important to beat the widget's "margin-top: 50px !important" rule */ 5326 ann.style.setProperty('margin-top', nextMt + 'px', 'important'); 5327 } 5328 5329 function run() { 5330 alignAnnouncementToNavbar(); 5331 /* re-run after late layout shifts (fonts, async embeds) */ 5332 window.setTimeout(alignAnnouncementToNavbar, 250); 5333 window.setTimeout(alignAnnouncementToNavbar, 1200); 5334 } 5335 5336 if (document.readyState === 'loading') { 5337 document.addEventListener('DOMContentLoaded', run); 5338 } else { 5339 run(); 5340 } 5341 window.addEventListener('load', alignAnnouncementToNavbar); 5342 var resizeTimer; 5343 window.addEventListener('resize', function () { 5344 window.clearTimeout(resizeTimer); 5345 resizeTimer = window.setTimeout(alignAnnouncementToNavbar, 150); 5346 }); 5347})(); 5348</script>
vendor: 2 bytes, line 5348
5348
5349<script> 5350 </script>
5350<script> 5351 $('#captchaContainer').removeClass('form-control '); 5352 $(".website_url_field").keyup(function(){ 5353 var fieldName = $(this).attr('name'); 5354 $(this).val($(this).val().replace(/\s+/g, '')); 5355 $('#myform').formValidation('revalidateField', fieldName); 5356 }); 5357</script>
vendor: 2 bytes, line 5357
5357
5358<script> 5359 $('#newsletter input[name="email"]').on('keypress', function() { 5360 $("#newsletter > .gdpr_consent_email").show(); 5361 }); 5362 $('#newsletter_signup_footer input[name="email"]').on('keypress', function() { 5363 $("#newsletter_signup_footer > .gdpr_consent_email").show(); 5364 }); 5365</script>
5365
5365<script src="https://www.optimizecdn.com/directory/cdn/bootstrap/formvalidation/current/dist/js/formValidation.min.js"></script>
5365 5366
5366<script src="https://www.optimizecdn.com/directory/cdn/bootstrap/formvalidation/current/dist/js/framework/bootstrap.min.js"></script>
5366 5367
5367<script type="text/javascript"> 5368 function decodeHtml(html) { 5369 var txt = document.createElement("textarea"); 5370 txt.innerHTML = html; 5371 return txt.value; 5372 } 5373 5374 // Override FormValidation URI validator to prevent recursion with URLs that contain @ characters 5375 $(function() { 5376 function applyFix() { 5377 // Check if FormValidation library and URI validator are loaded 5378 if (FormValidation && FormValidation.Validator && FormValidation.Validator.uri) { 5379 FormValidation.Validator.uri.validate = function(validator, $field, options) { 5380 var value = validator.getFieldValue($field, 'uri').trim(); 5381 return value === '' || new RegExp('^https?://[^\\s]+\\.[^\\s]{2,}').test(value); 5382 }; 5383 return true; 5384 } 5385 return false; 5386 } 5387 5388 if (!applyFix()) { 5389 setTimeout(applyFix, 50); 5390 } 5391 }); 5392 </script>
5392 5393
5393<script type="text/javascript"> 5394 5395 var counterSubmit = 0; 5396 $(document).ready(function() { 5397 /* grecaptcha.reset() with no argument always resets widget 0. On a page with two 5398 captcha holders that clears the wrong checkbox, so the widget the visitor solved 5399 keeps a token Google has already spent and every retry fails the security check. 5400 captchaHolders is published by widget 1995 keyed by "<formId>-google-recaptcha"; 5401 an undefined id means no per-form id is known and the arg-less call is used, 5402 exactly as before. */ 5403 function bdCaptchaWidgetId(formId) { 5404 if (typeof captchaHolders === "undefined" || !formId) { 5405 return undefined; 5406 } 5407 /* recaptcha.php renames each holder to "<id>-<counter>" before render (recaptcha.php ~L84), 5408 so captchaHolders is keyed by the RENAMED id - not "<formId>-google-recaptcha". Resolve from 5409 the holder element itself so the counter never has to be reconstructed. */ 5410 var form = document.getElementById(formId); 5411 var holder = form && form.querySelector(".g-recaptcha"); 5412 return holder ? captchaHolders[holder.id] : undefined; 5413 } 5414 5415 function bdCaptchaReset(formId) { 5416 if (typeof grecaptcha === "undefined" || typeof grecaptcha.reset !== "function") { 5417 return; 5418 } 5419 var widgetId = bdCaptchaWidgetId(formId); 5420 if (widgetId === undefined) { 5421 grecaptcha.reset(); 5422 } else { 5423 grecaptcha.reset(widgetId); 5424 } 5425 } 5426 5427 // Ghost-field strip (card d4tk1CMp): the server-side validator config can carry 5428 // rules for fields that are NOT rendered in this form (conditionally-rendered or 5429 // duplicated form configs). Those phantom rules make formValidation mis-evaluate 5430 // isValid(), so an empty required field bypasses validation and submits natively. 5431 // Remove any rule whose field has no matching element before initializing. 5432 // NOTE: this is the ONLY layer re-applied from reverted PR #5902. It strictly 5433 // REMOVES rules (never adds validators, never overrides native submit, never 5434 // intercepts on capture phase, never re-validates on click) â so it cannot 5435 // reproduce the "Save button slides down / nav broken / no success message" 5436 // regression that caused #5902 to be rolled back on site 19413. 5437 var validatorConfig = {"framework":"bootstrap","addOns":{"reCaptcha2":{"element":"captchaContainer","language":"en","theme":"light","siteKey":"6LcQwVQrAAAAADGNrTr3nlpLXDAgaUYdIWOhcaKw","timeout":"120","message":"The captcha is not valid"}},"fields":{"email":{"validators":{"notEmpty":{"message":"Required Field"},"emailAddress":{"message":"Please enter a valid email address"}}}}}; 5438 var formElement = $(`form[name='newsletter_modal_signup_380']`); 5439 if(validatorConfig && validatorConfig.fields) { 5440 Object.keys(validatorConfig.fields).forEach(function(fieldName) { 5441 if(formElement.find('[name="' + fieldName + '"]').length === 0) { 5442 delete validatorConfig.fields[fieldName]; 5443 } 5444 }); 5445 } 5446 5447 // Scroll to the first invalid field when submit fails validation, 5448 // so the user can immediately see why the form will not submit 5449 formElement.on('err.form.fv', function(e) { 5450 var $firstError = $(e.target).find('.form-group.has-error').first(); 5451 if ($firstError.length) { 5452 $('html, body').animate({ scrollTop: $firstError.offset().top - 100 }, 700); 5453 } 5454 }); 5455 5456 formElement.formValidation(validatorConfig).on('success.form.fv', function(e,fvdata) { 5457 5458 if('newsletter_modal_signup' == 'unsubscribe_email'){ 5459 return true; 5460 } 5461 // Prevent form submission 5462 e.preventDefault(); 5463 $form = $(e.target), 5464 fv = $form.data('formValidation'); 5465 5466 // Check HTML5 required fields that FormValidation may not know about 5467 var requiredEmpty = false; 5468 $form.find('[required]').each(function() { 5469 var val = $(this).val(); 5470 if (val === '' || val === null || (typeof val === 'string' && val.trim() === '')) { 5471 requiredEmpty = true; 5472 $(this).closest('.form-group').addClass('has-error'); 5473 if ($(this).siblings('.required-error').length === 0) { 5474 $(this).after('<small class="required-error help-block" style="color:#a94442;">Required Field</small>'); 5475 } 5476 } else { 5477 var $reqGroup = $(this).closest('.form-group'); 5478 $(this).siblings('.required-error').remove(); 5479 // Keep has-error if another validator is still failing for this field 5480 if ($reqGroup.find('small[data-fv-validator][data-fv-result="INVALID"]').length === 0) { 5481 $reqGroup.removeClass('has-error'); 5482 } 5483 } 5484 }); 5485 if (requiredEmpty) { 5486 fv.disableSubmitButtons(false); 5487 counterSubmit = 0; 5488 // Scroll to the first field with an error (HTML5-required scan does 5489 // not trigger err.form.fv, so handle the scroll here too) 5490 var $firstReqError = $form.find('.form-group.has-error').first(); 5491 if ($firstReqError.length) { 5492 $('html, body').animate({ scrollTop: $firstReqError.offset().top - 100 }, 700); 5493 } 5494 return false; 5495 } 5496 5497 var values = $(this).serialize(); 5498 5499 5500 var locationFieldCorrect = true; 5501 5502 if($("#newsletter_modal_signup_380 .location_required").length > 0){ 5503 $("#newsletter_modal_signup_380 .location_required").each(function (index) { 5504 if($(this).data('state') == 1){ 5505 if($('#newsletter_modal_signup_380 input[name="lead_location"]').val() == "" || $('#newsletter_modal_signup_380 input[name="lat"]').val() == "" || $('#newsletter_modal_signup_380 input[name="lng"]').val() == "") { 5506 locationFieldCorrect = false; 5507 } 5508 } 5509 }); 5510 } 5511 5512 if(locationFieldCorrect === false){ 5513 //check that there is a latitude or longitude 5514 swal(`Whoops!`, `The location information is required to submit this form`, "error"); 5515 return false; 5516 } 5517 5518 5519 if (!$(this).attr("action")) { 5520 var action = ''; 5521 5522 } else { 5523 var action = $(this).attr("action"); 5524 } 5525 if (!$(this).attr("method")) { 5526 var method = 'post'; 5527 5528 } else { 5529 var method = $(this).attr("method"); 5530 } 5531 if (!$(this).attr("form_action_type")) { 5532 var form_action_type = 'notification'; 5533 5534 } else { 5535 var form_action_type = $(this).attr("form_action_type"); 5536 } 5537 if (!$(this).attr("form_action_div")) { 5538 /* Empty "ID to Replace" default: prefer #main-content, fall back to legacy #first_container if absent */ 5539 var form_action_div = $('#main-content').length ? '#main-content' : '#first_container'; 5540 5541 } else { 5542 var form_action_div = $(this).attr("form_action_div"); 5543 } 5544 if (!$(this).attr("return_data_type")) { 5545 var return_data_type = 'json'; 5546 5547 } else { 5548 var return_data_type = $(this).attr("return_data_type"); 5549 } 5550 var submitInFlight = counterSubmit != 0 || (Date.now() - ($form.data('bdLastSubmitAt') || 0) < 5000); 5551 if (!submitInFlight) { 5552 if ($("#newsletter_modal_signup_380-notification").html() != "") { 5553 $("#newsletter_modal_signup_380-notification").remove(); 5554 } 5555 if ($(this).find('input[type="submit"]').length > 0) { 5556 $(this).find('input[type="submit"]').before('<div id="newsletter_modal_signup_380-notification" class="alert"></div>'); 5557 5558 } else { 5559 $(this).prepend('<div id="newsletter_modal_signup_380-notification" class="alert"></div>'); 5560 } 5561 } 5562 var notification = $("#newsletter_modal_signup_380-notification"); 5563 5564 if ((form_action_type == "" || form_action_type == "default") && action.indexOf("account") >= 0) { 5565 notification.html(`Processing Request...`).addClass("alert-warning-subtle"); 5566 setTimeout(function(){ 5567 fv.defaultSubmit(); 5568 }, 100); 5569 } else { 5570 notification.html(`Processing Request...`).addClass("alert-warning-subtle"); 5571 if(!submitInFlight) { 5572 counterSubmit++; 5573 $form.data('bdLastSubmitAt', Date.now()); 5574 5575 var fields = $(this).serializeArray(); 5576 var formField = []; 5577 var processData = true; 5578 var contentType = "application/x-www-form-urlencoded; charset=UTF-8"; 5579 5580 5581 5582 if($("#newsletter_modal_signup_380 input[type=file]").length > 0){ 5583 5584 var formObject = new FormData(); 5585 processData = false; 5586 contentType = false; 5587 5588 $(fields).each(function(index,field){ 5589 formField.push(field.name+"="+field.value); 5590 }); 5591 5592 values = formField.join("&"); 5593 5594 $(formField).each(function(index,fieldValue){ 5595 var fieldInfo = fieldValue.split('='); 5596 formObject.append(fieldInfo[0],fieldInfo[1]); 5597 }); 5598 5599 $("#newsletter_modal_signup_380 input[type=file]").each(function(index,node){ 5600 var file = this.files[0]; 5601 if(typeof file != "undefined"){ 5602 formObject.append("file_addon["+$(node).attr('name')+"]", file, file.name); 5603 } 5604 }); 5605 }else{ 5606 5607 $(fields).each(function(index,field){ 5608 formField.push(field.name+"="+encodeURIComponent(field.value)); 5609 }); 5610 5611 var formObject = formField.join("&"); 5612 } 5613 5614 $.ajax({
5615 url: action, 5616 type: method, 5617 data: formObject, 5618 dataType: return_data_type, 5619 processData: processData, 5620 contentType: contentType, 5621 success: function (data) { 5622 // Re-query live node: success.form.fv fires twice, orphaning the closure ref captured above. 5623 notification = $("#newsletter_modal_signup_380-notification"); 5624 if (return_data_type == "html") { 5625 var result = 'success'; 5626 5627 if (!data != "") { 5628 var result_widget = data['result_widget']; 5629 } 5630 5631 } else { 5632 5633 5634 if (!data['result']) { 5635 var result = 'error'; 5636 } else { 5637 var result = data['result']; 5638 } 5639 if (!data['result_widget']) { 5640 var result_widget = ''; 5641 5642 } else { 5643 var result_widget = data['result_widget']; 5644 } 5645 } 5646 if (result == "success") { 5647 5648 if (!data['message']) { 5649 var message = `Your information has submitted successfully!`; 5650 5651 } else { 5652 var message = data['message']; 5653 } 5654 if (!data['redirect_url']) { 5655 var redirect_url = ''; 5656 5657 } else { 5658 var redirect_url = data['redirect_url']; 5659 } 5660 5661 5662 5663 if (form_action_type == "notification") { 5664 if (redirect_url && (action.indexOf('Member%20Login%20Page') >= 0 || action.indexOf('Member Login Page') >= 0)) { 5665 if (redirect_url.substring(0, 1) != "/" && redirect_url.substring(0, 1) != "h") { 5666 redirect_url = "/" + redirect_url; 5667 } 5668 if (notification.parents('.modal').length) { 5669 $('.modal-backdrop').hide(); 5670 $('.modal').modal('hide'); 5671 } 5672 window.location.href = redirect_url; 5673 fv.resetForm(true); 5674 } else { 5675 notification.html(message + '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>') 5676 .addClass('alert-dismissible') 5677 .addClass("alert-success-subtle") 5678 .removeClass("alert-danger-subtle") 5679 .removeClass("alert-warning-subtle") 5680 5681 5682 5683 if(notification.parents('.modal').length && 'newsletter_modal_signup_380' == 'whmcs_billing_address'){ 5684 setTimeout(function(){ 5685 notification.parents('.modal').modal('hide'); 5686 }, 1000); 5687 } 5688 } 5689 5690 } else if (form_action_type == "widget") { 5691 5692 if (result_widget != '') { 5693 5694 setTimeout(function(){ 5695 if(form_action_div != '.newsletter_modal_form_container'){ 5696 $("html, body").animate({ scrollTop: 0 }, 600); 5697 } 5698 $(form_action_div).html(decodeHtml(result_widget)).text(); 5699 5700 }, 1000); 5701 } 5702 5703 } else if (form_action_type == "redirect") { 5704 5705 if (redirect_url == "") { 5706 redirect_url = decodeURIComponent(""); 5707 } 5708 5709 if (redirect_url.substring(0, 1) != "/" && redirect_url.substring(0, 1) != "h") { 5710 redirect_url = "/" + redirect_url; 5711 } 5712 current_location = "/blog"; 5713 refresh_pages_string = "/login"; 5714 refresh_pages_string = refresh_pages_string.replace(/ /g,''); 5715 refresh_pages_array = refresh_pages_string.split(','); 5716 notification.html(message) 5717 .addClass("alert-success-subtle") 5718 .removeClass("alert-danger-subtle") 5719 .removeClass("alert-warning-subtle") 5720 .delay(2000).slideUp(); 5721 if(action == "/api/widget/json/get/Bootstrap%20Theme%20-%20Member%20Login%20Page" && current_location.indexOf("/login") == -1 && refresh_pages_string != '' && (!refresh_pages_array.includes(current_location) || refresh_pages_string == "/login" )){ 5722 window.location.href = window.location.href+'?logged'; 5723 } else { 5724 window.location.href = redirect_url; 5725 } 5726 5727 fv.resetForm(true); 5728 } 5729 if(form_action_div != '.newsletter_modal_form_container' && 'newsletter_modal_signup_380' != 'whmcs_billing_address'){ 5730 $('.modal-backdrop').hide(); 5731 } 5732 } else { 5733 bdCaptchaReset(formElement.attr('id')); 5734 if (!data['message']) { 5735 var message = `You entered invali
5735d data. Please try to save again.`; 5736 5737 } else { 5738 var message = data['message']; 5739 } 5740 $("#newsletter_modal_signup_380-notification").html(message) 5741 .addClass("alert-danger-subtle") 5742 .removeClass("alert-success-subtle") 5743 .removeClass("alert-warning-subtle") 5744 .fadeIn(); 5745 fv.disableSubmitButtons(false); 5746 } 5747 counterSubmit = 0; 5748 }, 5749 error: function (e) { 5750 5751 if(typeof grecaptcha !== "undefined" && typeof grecaptcha.reset === "function"){ 5752 bdCaptchaReset(formElement.attr('id')); 5753 $("#newsletter_modal_signup_380-notification").html(`Recaptcha Error`); 5754 } else { 5755 $("#newsletter_modal_signup_380-notification").html(`A connection error occurred while saving. Please try to save again.`); 5756 } 5757 $("#newsletter_modal_signup_380-notification").addClass("alert-warning-subtle") 5758 .removeClass("alert-success-subtle") 5759 .removeClass("alert-warning-subtle") 5760 .fadeIn(); 5761 counterSubmit = 0; 5762 } 5763 });/// End Ajax 5764 } 5765 }//END else 5766 }).bind('keydown', function(event) { 5767 5768 if (event.ctrlKey || event.metaKey) { 5769 5770 switch (String.fromCharCode(event.which).toLowerCase()) { 5771 5772 case 's': 5773 var nativeForm = $(this)[0]; 5774 if (nativeForm && typeof nativeForm.reportValidity === 'function' && !nativeForm.reportValidity()) { 5775 event.preventDefault(); 5776 return false; 5777 } 5778 $(this).submit(); 5779 break; 5780 } 5781 } 5782 }); 5783 5784 /// This will turn any select2 that are required in the form builder to being required elements. 5785 $('#newsletter_modal_signup_380 select').each(function (i, obj) { 5786 setTimeout(function(){ 5787 if ($(obj).prop("required") && $(obj).attr("style") == "display: none;") { 5788 $(obj).css("z-index","-999"); 5789 $(obj).css("height","0"); 5790 $(obj).css("width","0"); 5791 $(obj).css("display","block"); 5792 $(obj).css("position","absolute"); 5793 } 5794 }, 3000); 5795 }); 5796 5797 // Clear required-error messages when user fills in a required field 5798 $('#newsletter_modal_signup_380').on('keyup change', '[required]', function() { 5799 var val = $(this).val(); 5800 if (val !== '' && val !== null && val.trim() !== '') { 5801 var $group = $(this).closest('.form-group'); 5802 // Remove only this handler's own required message 5803 $(this).siblings('.required-error').remove(); 5804 // Keep has-error if another FormValidation validator is still failing 5805 // (e.g. stringLength, regexp). has-error is shared, so removing it 5806 // wholesale would clobber other validators' red styling. 5807 if ($group.find('small[data-fv-validator][data-fv-result="INVALID"]').length === 0) { 5808 $group.removeClass('has-error'); 5809 } 5810 } 5811 }); 5812 5813 });//END $('# echo $_SERVER[form_element_id]; ').formValidation( 5814 </script>
5814 5815
5815<script type="text/javascript"> 5816(function () { 5817 try { 5818 var email = new URLSearchParams(window.location.search).get('email'); 5819 if (!email) { return; } 5820 email = email.trim(); 5821 if (email.indexOf('@') === -1) { return; } 5822 /* Sets the input value property (never HTML) -> XSS-safe regardless of the query value. */ 5823 var fill = function () { 5824 var fields = document.querySelectorAll('input[name="email_r"]'); 5825 for (var i = 0; i < fields.length; i++) { 5826 if (!fields[i].value) { fields[i].value = email; } 5827 } 5828 }; 5829 if (document.readyState === 'loading') { 5830 document.addEventListener('DOMContentLoaded', fill); 5831 } else { 5832 fill(); 5833 } 5834 } catch (e) {} 5835})(); 5836</script>
5836 5837
5837<script type="text/javascript"> 5838 5839 var counterSubmit = 0; 5840 $(document).ready(function() { 5841 /* grecaptcha.reset() with no argument always resets widget 0. On a page with two 5842 captcha holders that clears the wrong checkbox, so the widget the visitor solved 5843 keeps a token Google has already spent and every retry fails the security check. 5844 captchaHolders is published by widget 1995 keyed by "<formId>-google-recaptcha"; 5845 an undefined id means no per-form id is known and the arg-less call is used, 5846 exactly as before. */ 5847 function bdCaptchaWidgetId(formId) { 5848 if (typeof captchaHolders === "undefined" || !formId) { 5849 return undefined; 5850 } 5851 /* recaptcha.php renames each holder to "<id>-<counter>" before render (recaptcha.php ~L84), 5852 so captchaHolders is keyed by the RENAMED id - not "<formId>-google-recaptcha". Resolve from 5853 the holder element itself so the counter never has to be reconstructed. */ 5854 var form = document.getElementById(formId); 5855 var holder = form && form.querySelector(".g-recaptcha"); 5856 return holder ? captchaHolders[holder.id] : undefined; 5857 } 5858 5859 function bdCaptchaReset(formId) { 5860 if (typeof grecaptcha === "undefined" || typeof grecaptcha.reset !== "function") { 5861 return; 5862 } 5863 var widgetId = bdCaptchaWidgetId(formId); 5864 if (widgetId === undefined) { 5865 grecaptcha.reset(); 5866 } else { 5867 grecaptcha.reset(widgetId); 5868 } 5869 } 5870 5871 // Ghost-field strip (card d4tk1CMp): the server-side validator config can carry 5872 // rules for fields that are NOT rendered in this form (conditionally-rendered or 5873 // duplicated form configs). Those phantom rules make formValidation mis-evaluate 5874 // isValid(), so an empty required field bypasses validation and submits natively. 5875 // Remove any rule whose field has no matching element before initializing. 5876 // NOTE: this is the ONLY layer re-applied from reverted PR #5902. It strictly 5877 // REMOVES rules (never adds validators, never overrides native submit, never 5878 // intercepts on capture phase, never re-validates on click) â so it cannot 5879 // reproduce the "Save button slides down / nav broken / no success message" 5880 // regression that caused #5902 to be rolled back on site 19413. 5881 var validatorConfig = {"framework":"bootstrap","addOns":{"reCaptcha2":{"element":"captchaContainer","language":"en","theme":"light","siteKey":"6LcQwVQrAAAAADGNrTr3nlpLXDAgaUYdIWOhcaKw","timeout":"120","message":"The captcha is not valid"}},"fields":{"email":{"validators":{"notEmpty":{"message":"Required Field"},"emailAddress":{"message":"Please enter a valid email address"}}},"pass":{"validators":{"notEmpty":{"message":"Required Field"}}}}}; 5882 var formElement = $(`form[name='member_login_190']`); 5883 if(validatorConfig && validatorConfig.fields) { 5884 Object.keys(validatorConfig.fields).forEach(function(fieldName) { 5885 if(formElement.find('[name="' + fieldName + '"]').length === 0) { 5886 delete validatorConfig.fields[fieldName]; 5887 } 5888 }); 5889 } 5890 5891 // Scroll to the first invalid field when submit fails validation, 5892 // so the user can immediately see why the form will not submit 5893 formElement.on('err.form.fv', function(e) { 5894 var $firstError = $(e.target).find('.form-group.has-error').first(); 5895 if ($firstError.length) { 5896 $('html, body').animate({ scrollTop: $firstError.offset().top - 100 }, 700); 5897 } 5898 }); 5899
5900 formElement.formValidation(validatorConfig).on('success.form.fv', function(e,fvdata) { 5901 5902 if('member_login' == 'unsubscribe_email'){ 5903 return true; 5904 } 5905 // Prevent form submission 5906 e.preventDefault(); 5907 $form = $(e.target), 5908 fv = $form.data('formValidation'); 5909 5910 // Check HTML5 required fields that FormValidation may not know about 5911 var requiredEmpty = false; 5912 $form.find('[required]').each(function() { 5913 var val = $(this).val(); 5914 if (val === '' || val === null || (typeof val === 'string' && val.trim() === '')) { 5915 requiredEmpty = true; 5916 $(this).closest('.form-group').addClass('has-error'); 5917 if ($(this).siblings('.required-error').length === 0) { 5918 $(this).after('<small class="required-error help-block" style="color:#a94442;">Required Field</small>'); 5919 } 5920 } else { 5921 var $reqGroup = $(this).closest('.form-group'); 5922 $(this).siblings('.required-error').remove(); 5923 // Keep has-error if another validator is still failing for this field 5924 if ($reqGroup.find('small[data-fv-validator][data-fv-result="INVALID"]').length === 0) { 5925 $reqGroup.removeClass('has-error'); 5926 } 5927 } 5928 }); 5929 if (requiredEmpty) { 5930 fv.disableSubmitButtons(false); 5931 counterSubmit = 0; 5932 // Scroll to the first field with an error (HTML5-required scan does 5933 // not trigger err.form.fv, so handle the scroll here too) 5934 var $firstReqError = $form.find('.form-group.has-error').first(); 5935 if ($firstReqError.length) { 5936 $('html, body').animate({ scrollTop: $firstReqError.offset().top - 100 }, 700); 5937 } 5938 return false; 5939 } 5940 5941 var values = $(this).serialize(); 5942 5943 5944 var locationFieldCorrect = true; 5945 5946 if($("#member_login_190 .location_required").length > 0){ 5947 $("#member_login_190 .location_required").each(function (index) { 5948 if($(this).data('state') == 1){ 5949 if($('#member_login_190 input[name="lead_location"]').val() == "" || $('#member_login_190 input[name="lat"]').val() == "" || $('#member_login_190 input[name="lng"]').val() == "") { 5950 locationFieldCorrect = false; 5951 } 5952 } 5953 }); 5954 } 5955 5956 if(locationFieldCorrect === false){ 5957 //check that there is a latitude or longitude 5958 swal(`Whoops!`, `The location information is required to submit this form`, "error"); 5959 return false; 5960 } 5961 5962 5963 if (!$(this).attr("action")) { 5964 var action = ''; 5965 5966 } else { 5967 var action = $(this).attr("action"); 5968 } 5969 if (!$(this).attr("method")) { 5970 var method = 'post'; 5971 5972 } else { 5973 var method = $(this).attr("method"); 5974 } 5975 if (!$(this).attr("form_action_type")) { 5976 var form_action_type = 'notification'; 5977 5978 } else { 5979 var form_action_type = $(this).attr("form_action_type"); 5980 } 5981 if (!$(this).attr("form_action_div")) { 5982 /* Empty "ID to Replace" default: prefer #main-content, fall back to legacy #first_container if absent */ 5983 var form_action_div = $('#main-content').length ? '#main-content' : '#first_container'; 5984 5985 } else { 5986 var form_action_div = $(this).attr("form_action_div"); 5987 } 5988 if (!$(this).attr("return_data_type")) { 5989 var return_data_type = 'json'; 5990 5991 } else { 5992 var return_data_type = $(this).attr("return_data_type"); 5993 } 5994 var submitInFlight = counterSubmit != 0 || (Date.now() - ($form.data('bdLastSubmitAt') || 0) < 5000); 5995 if (!submitInFlight) { 5996 if ($("#member_login_190-notification").html() != "") { 5997 $("#member_login_190-notification").remove(); 5998 } 5999 if ($(this).find('input[type="submit"]').length > 0) { 6000 $(this).find('input[type="submit"]').before('<div id="member_login_190-notification" class="alert"></div>'); 6001 6002 } else { 6003 $(this).prepend('<div id="member_login_190-notification" class="alert"></div>'); 6004 } 6005 } 6006 var notification = $("#member_login_190-notification"); 6007 6008 if ((form_action_type == "" || form_action_type == "default") && action.indexOf("account") >= 0) { 6009 notification.html(`Processing Request...`).addClass("alert-warning-subtle"); 6010 setTimeout(function(){ 6011 fv.defaultSubmit(); 6012 }, 100); 6013 } else { 6014 notification.html(`Processing Request...`).addClass("alert-warning-subtle"); 6015 if(!submitInFlight) { 6016 counterSubmit++; 6017 $form.data('bdLastSubmitAt', Date.now()); 6018 6019 var fields = $(this).serializeArray(); 6020 var formField = []; 6021 var processData = true; 6022 var contentType = "application/x-www-form-urlencoded; charset=UTF-8"; 6023 6024 6025 6026 if($("#member_login_190 input[type=file]").length > 0){ 6027 6028 var formObject = new FormData(); 6029 processData = false; 6030 contentType = false; 6031 6032 $(fields).each(function(index,field){ 6033 formField.push(field.name+"="+field.value); 6034 }); 6035 6036 values = formField.join("&"); 6037 6038 $(formField).each(function(index,fieldValue){ 6039 var fieldInfo = fieldValue.split('='); 6040 formObject.append(fieldInfo[0],fieldInfo[1]); 6041 }); 6042 6043 $("#member_login_190 input[type=file]").each(function(index,node){ 6044 var file = this.files[0]; 6045 if(typeof file != "undefined"){ 6046 formObject.append("file_addon["+$(node).attr('name')+"]", file, file.name); 6047 } 6048 }); 6049 }else{ 6050 6051 $(fields).each(function(index,field){ 6052 formField.push(field.name+"="+encodeURIComponent(field.value)); 6053 }); 6054 6055 var formObject = formField.join("&"); 6056 } 6057 6058 $.ajax({
6059 url: action, 6060 type: method, 6061 data: formObject, 6062 dataType: return_data_type, 6063 processData: processData, 6064 contentType: contentType, 6065 success: function (data) { 6066 // Re-query live node: success.form.fv fires twice, orphaning the closure ref captured above. 6067 notification = $("#member_login_190-notification"); 6068 if (return_data_type == "html") { 6069 var result = 'success'; 6070 6071 if (!data != "") { 6072 var result_widget = data['result_widget']; 6073 } 6074 6075 } else { 6076 6077 6078 if (!data['result']) { 6079 var result = 'error'; 6080 } else { 6081 var result = data['result']; 6082 } 6083 if (!data['result_widget']) { 6084 var result_widget = ''; 6085 6086 } else { 6087 var result_widget = data['result_widget']; 6088 } 6089 } 6090 if (result == "success") { 6091 6092 if (!data['message']) { 6093 var message = `Your information has submitted successfully!`; 6094 6095 } else { 6096 var message = data['message']; 6097 } 6098 if (!data['redirect_url']) { 6099 var redirect_url = ''; 6100 6101 } else { 6102 var redirect_url = data['redirect_url']; 6103 } 6104 6105 6106 6107 if (form_action_type == "notification") { 6108 if (redirect_url && (action.indexOf('Member%20Login%20Page') >= 0 || action.indexOf('Member Login Page') >= 0)) { 6109 if (redirect_url.substring(0, 1) != "/" && redirect_url.substring(0, 1) != "h") { 6110 redirect_url = "/" + redirect_url; 6111 } 6112 if (notification.parents('.modal').length) { 6113 $('.modal-backdrop').hide(); 6114 $('.modal').modal('hide'); 6115 } 6116 window.location.href = redirect_url; 6117 fv.resetForm(true); 6118 } else { 6119 notification.html(message + '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>') 6120 .addClass('alert-dismissible') 6121 .addClass("alert-success-subtle") 6122 .removeClass("alert-danger-subtle") 6123 .removeClass("alert-warning-subtle") 6124 6125 6126 6127 if(notification.parents('.modal').length && 'member_login_190' == 'whmcs_billing_address'){ 6128 setTimeout(function(){ 6129 notification.parents('.modal').modal('hide'); 6130 }, 1000); 6131 } 6132 } 6133 6134 } else if (form_action_type == "widget") { 6135 6136 if (result_widget != '') { 6137 6138 setTimeout(function(){ 6139 if(form_action_div != '.newsletter_modal_form_container'){ 6140 $("html, body").animate({ scrollTop: 0 }, 600); 6141 } 6142 $(form_action_div).html(decodeHtml(result_widget)).text(); 6143 6144 }, 1000); 6145 } 6146 6147 } else if (form_action_type == "redirect") { 6148 6149 if (redirect_url == "") { 6150 redirect_url = decodeURIComponent(""); 6151 } 6152 6153 if (redirect_url.substring(0, 1) != "/" && redirect_url.substring(0, 1) != "h") { 6154 redirect_url = "/" + redirect_url; 6155 } 6156 current_location = "/blog"; 6157 refresh_pages_string = "/login"; 6158 refresh_pages_string = refresh_pages_string.replace(/ /g,''); 6159 refresh_pages_array = refresh_pages_string.split(','); 6160 notification.html(message) 6161 .addClass("alert-success-subtle") 6162 .removeClass("alert-danger-subtle") 6163 .removeClass("alert-warning-subtle") 6164 .delay(2000).slideUp(); 6165 if(action == "/api/widget/json/get/Bootstrap%20Theme%20-%20Member%20Login%20Page" && current_location.indexOf("/login") == -1 && refresh_pages_string != '' && (!refresh_pages_array.includes(current_location) || refresh_pages_string == "/login" )){ 6166 window.location.href = window.location.href+'?logged'; 6167 } else { 6168 window.location.href = redirect_url; 6169 } 6170 6171 fv.resetForm(true); 6172 } 6173 if(form_action_div != '.newsletter_modal_form_container' && 'member_login_190' != 'whmcs_billing_address'){ 6174 $('.modal-backdrop').hide(); 6175 } 6176 } else { 6177 bdCaptchaReset(formElement.attr('id')); 6178 if (!data['message']) { 6179 var message = `You entered invali
6179d data. Please try to save again.`; 6180 6181 } else { 6182 var message = data['message']; 6183 } 6184 $("#member_login_190-notification").html(message) 6185 .addClass("alert-danger-subtle") 6186 .removeClass("alert-success-subtle") 6187 .removeClass("alert-warning-subtle") 6188 .fadeIn(); 6189 fv.disableSubmitButtons(false); 6190 } 6191 counterSubmit = 0; 6192 }, 6193 error: function (e) { 6194 6195 if(typeof grecaptcha !== "undefined" && typeof grecaptcha.reset === "function"){ 6196 bdCaptchaReset(formElement.attr('id')); 6197 $("#member_login_190-notification").html(`Recaptcha Error`); 6198 } else { 6199 $("#member_login_190-notification").html(`A connection error occurred while saving. Please try to save again.`); 6200 } 6201 $("#member_login_190-notification").addClass("alert-warning-subtle") 6202 .removeClass("alert-success-subtle") 6203 .removeClass("alert-warning-subtle") 6204 .fadeIn(); 6205 counterSubmit = 0; 6206 } 6207 });/// End Ajax 6208 } 6209 }//END else 6210 }).bind('keydown', function(event) { 6211 6212 if (event.ctrlKey || event.metaKey) { 6213 6214 switch (String.fromCharCode(event.which).toLowerCase()) { 6215 6216 case 's': 6217 var nativeForm = $(this)[0]; 6218 if (nativeForm && typeof nativeForm.reportValidity === 'function' && !nativeForm.reportValidity()) { 6219 event.preventDefault(); 6220 return false; 6221 } 6222 $(this).submit(); 6223 break; 6224 } 6225 } 6226 }); 6227 6228 /// This will turn any select2 that are required in the form builder to being required elements. 6229 $('#member_login_190 select').each(function (i, obj) { 6230 setTimeout(function(){ 6231 if ($(obj).prop("required") && $(obj).attr("style") == "display: none;") { 6232 $(obj).css("z-index","-999"); 6233 $(obj).css("height","0"); 6234 $(obj).css("width","0"); 6235 $(obj).css("display","block"); 6236 $(obj).css("position","absolute"); 6237 } 6238 }, 3000); 6239 }); 6240 6241 // Clear required-error messages when user fills in a required field 6242 $('#member_login_190').on('keyup change', '[required]', function() { 6243 var val = $(this).val(); 6244 if (val !== '' && val !== null && val.trim() !== '') { 6245 var $group = $(this).closest('.form-group'); 6246 // Remove only this handler's own required message 6247 $(this).siblings('.required-error').remove(); 6248 // Keep has-error if another FormValidation validator is still failing 6249 // (e.g. stringLength, regexp). has-error is shared, so removing it 6250 // wholesale would clobber other validators' red styling. 6251 if ($group.find('small[data-fv-validator][data-fv-result="INVALID"]').length === 0) { 6252 $group.removeClass('has-error'); 6253 } 6254 } 6255 }); 6256 6257 });//END $('# echo $_SERVER[form_element_id]; ').formValidation( 6258 </script>
6258 6259
6259<script> 6260 window.addEventListener('load', (event) => { 6261 setTimeout(() => { 6262 }, 501); 6263 }); 6264 </script>
vendor: 2 bytes, line 6264
6264
6265<script> 6266 function decision(message, url) { 6267 if (confirm(message)) { 6268 setTimeout(function () { 6269 window.location = url; 6270 }, 0); 6271 } 6272 } 6273</script>
vendor: 2 bytes, line 6273
6273
6274<script> 6275 // Function to add alt, width, and height attributes to <img> elements without them 6276 function addAttributesToImages() { 6277 var images = document.querySelectorAll('img:not([alt]), img:not([width]), img:not([height])'); 6278 Array.prototype.forEach.call(images, function(img) { 6279 // Skip if we've already processed this image 6280 if (img.dataset.processed === 'true') { 6281 return; 6282 } 6283 6284 // Mark this image as being processed 6285 img.dataset.processed = 'true'; 6286 6287 // Add alt attribute if missing 6288 if (!img.hasAttribute('alt')) { 6289 var src = img.getAttribute('src') || 'image'; // Default src to 'image' if missing 6290 var altText = src.split('/').pop().split('?')[0].replace(/\.\w+$/, ''); 6291 6292 try { 6293 altText = decodeURIComponent(altText) 6294 .replace(/[_\-+,.:;]+/g, ' ') 6295 .replace(/\s+/g, ' ') 6296 .trim(); 6297 } catch (e) { 6298 altText = 'image'; // Fallback to 'image' if decoding fails 6299 } 6300 6301 // Ensure altText is not empty, otherwise use 'image' 6302 altText = altText || 'image'; 6303 6304 img.setAttribute('alt', altText); 6305 } 6306 6307 // Add width and height attributes if missing 6308 if (!img.hasAttribute('width') || !img.hasAttribute('height')) { 6309 // Handle SVG differently 6310 if (img.src && img.src.endsWith('.svg')) { 6311 // For SVG, use the viewBox to set width and height, if available 6312 fetch(img.src) 6313 .then(response => { 6314 if (!response.ok) { 6315 throw new Error('Failed to fetch SVG: ' + response.status); 6316 } 6317 return response.text(); 6318 }) 6319 .then(svgText => { 6320 var parser = new DOMParser(); 6321 var svgDoc = parser.parseFromString(svgText, "image/svg+xml"); 6322 var svgElement = svgDoc.querySelector('svg'); 6323 6324 if (svgElement) { 6325 var viewBox = svgElement.getAttribute('viewBox'); 6326 if (viewBox) { 6327 var viewBoxValues = viewBox.split(' '); 6328 var width = viewBoxValues[2]; 6329 var height = viewBoxValues[3]; 6330 6331 if (!img.hasAttribute('width')) { 6332 img.setAttribute('width', width); 6333 } 6334 if (!img.hasAttribute('height')) { 6335 img.setAttribute('height', height); 6336 } 6337 } 6338 } 6339 }) 6340 .catch(error => { 6341 // Fallback to default dimensions for SVG 6342 if (!img.hasAttribute('width')) { 6343 img.setAttribute('width', '100'); 6344 } 6345 if (!img.hasAttribute('height')) { 6346 img.setAttribute('height', '100'); 6347 } 6348 }); 6349 } else { 6350 // For non-SVG images, use natural dimensions 6351 var tempImg = new Image(); 6352 tempImg.src = img.src; 6353 6354 tempImg.onload = function() { 6355 if (!img.hasAttribute('width')) { 6356 img.setAttribute('width', tempImg.naturalWidth); 6357 } 6358 if (!img.hasAttribute('height')) { 6359 img.setAttribute('height', tempImg.naturalHeight); 6360 } 6361 }; 6362 6363 tempImg.onerror = function() { 6364 // Fallback to default dimensions 6365 if (!img.hasAttribute('width')) { 6366 img.setAttribute('width', '100'); 6367 } 6368 if (!img.hasAttribute('height')) { 6369 img.setAttribute('height', '100'); 6370 } 6371 }; 6372 } 6373 } 6374 }); 6375 } 6376 6377 document.addEventListener('DOMContentLoaded', function() { 6378 // Run the function initially to catch images already in the DOM 6379 addAttributesToImages(); 6380 6381 // Create a MutationObserver to monitor the DOM for added/changed images 6382 var observer = new MutationObserver(function(mutations) { 6383 mutations.forEach(function(mutation) { 6384 if (mutation.addedNodes.length > 0 || mutation.type === 'attributes') { 6385 // Only process if we have new images or src attribute changes 6386 var hasNewImages = false; 6387 6388 if (mutation.addedNodes.length > 0) { 6389 mutation.addedNodes.forEach(function(node) { 6390 if (node.nodeType === 1) { // Element node 6391 if (node.tagName === 'IMG' || node.querySelectorAll) { 6392 hasNewImages = true; 6393 } 6394 } 6395 }); 6396 } 6397 6398 if (mutation.type === 'attributes' && mutation.attributeName === 'src') { 6399 hasNewImages = true; 6400 } 6401 6402 if (hasNewImages) { 6403 addAttributesToImages(); 6404 } 6405 } 6406 }); 6407 }); 6408 6409 // Start observing the document body for changes 6410 observer.observe(document.body, { 6411 childList: true, // Watch for added or removed nodes 6412 subtree: true, // Watch the entire subtree 6413 attributes: true, // Watch for attribute changes 6414 attributeFilter: ['src'] // Specifically watch for changes in the 'src' attribute 6415 }); 6416 }); 6417</script>
6417<style type='text/css'> select#sid[disabled], select#tid[disabled], select.combobox[disabled], select#bd-chained[disabled], select#category-chained[disabled], select.infinite-chained[disabled], select.subcategory-chained[disabled], select.search-chained[disabled], select#country-chained[disabled], select#state-chained[disabled], select#country-chained-2[disabled], select#state-chained-2[disabled], select#profession_id[disabled] { 6418 cursor: wait 6419} 6420select.select2-preload { 6421 line-height: initial; 6422} 6423 6424select#sid, select#tid, select#ttid, select.combobox, select#bd-chained, select#category-chained, select.infinite-chained, select.subcategory-chained, select.search-chained, select#country-chained, select#state-chained, select#country-chained-2, select#state-chained-2, select#profession_id, [name^="bd_phone_country_code"] { 6425 -webkit-appearance: none; 6426 -moz-appearance: none; 6427 appearance: none; 6428 background-image: url(/images/select2ArrowDown.png) !important; 6429 background-repeat: no-repeat !important; 6430 background-size: 10px 9px !important; 6431 background-position: 99% 16px; 6432 border-radius: 6px; 6433 overflow: hidden; 6434} 6435.module select#sid, .module select#tid, .module select.combobox, .module select#bd-chained, .module select#category-chained, .module select.infinite-chained, .module select.subcategory-chained, .module select.search-chained, .module select#country-chained, .module select#state-chained, .module select#country-chained-2, .module select#state-chained-2, .module select#profession_id, [name^="bd_phone_country_code"] { 6436 background-position: 98.2% 12px; 6437} </style> <!-- DROPDOWN SELECT SCRIPT --> 6438 <!-- Select2 CSS Included in website-styles.pkgd.min.css --> 6439 <!--[if lt IE 9]> 6440
6440<script defer src="https://www.optimizecdn.com/directory/cdn/assets/html5shiv/3.7.2/html5shiv.min.js"></script>
6440 6441
6441<script defer src="https://www.optimizecdn.com/directory/cdn/bootstrap/select2/master/js/respond.min.js"></script>
6441 6442 <![endif]--> 6443
6443<script> 6444 6445 var preloaded_ttid = false; 6446 var preloaded_tid = false; 6447 var preloaded_sid = false; 6448 var path2 = window.location.pathname.replace(/\//g, "_"); 6449 6450 if (performance.navigation.type !== 2) { 6451 if (sessionStorage.getItem('select2-ttid'+path2) !== null) { 6452 sessionStorage.removeItem('select2-ttid'+path2); 6453 } 6454 6455 if (sessionStorage.getItem('select2-tid'+path2) !== null) { 6456 sessionStorage.removeItem('select2-tid'+path2); 6457 } 6458 6459 if (sessionStorage.getItem('select2-sid'+path2) !== null) { 6460 sessionStorage.removeItem('select2-sid'+path2); 6461 } 6462 6463 }else if(performance.navigation.type === 2){ 6464 if (sessionStorage.getItem('select2-ttid'+path2) !== null) { 6465 preloaded_ttid = sessionStorage.getItem('select2-ttid'+path2); 6466 } 6467 6468 if (sessionStorage.getItem('select2-tid'+path2) !== null) { 6469 preloaded_tid = sessionStorage.getItem('select2-tid'+path2); 6470 } 6471 6472 if (sessionStorage.getItem('select2-sid'+path2) !== null) { 6473 preloaded_sid = sessionStorage.getItem('select2-sid'+path2); 6474 } 6475 } 6476 6477 window.addEventListener('load', () => { 6478 let select2Inputs = document.querySelectorAll('.select-category-chained,#sid,#tid,.combobox,#bd-chained,#category-chained,.infinite-chained,.subcategory-chained,.search-chained,select#country-chained,#state-chained,#country-chained-2,#state-chained-2,#profession_id,[name^="bd_phone_country_code"]'); 6479 if (typeof select2Inputs != "undefined") { 6480 for (let i = 0; i < select2Inputs.length; i++) { 6481 let inputPlaceHolder = select2Inputs[i].getAttribute('placeholder'); 6482 if (!select2Inputs[i].getAttribute('placeholder')) { 6483 inputPlaceHolder = select2Inputs[i].getAttribute('data-placeholder'); 6484 } 6485 let countryCode = select2Inputs[i].getAttribute('data-country-code'); 6486 if (select2Inputs[i].getAttribute('data-country-code') != null && countryCode > 0 && typeof isoCountries != 'undefined') { 6487 for (let c = 0; c < isoCountries.length; c++) { 6488 if(isoCountries[c].id == countryCode){ 6489 // select2Inputs[i].querySelector('option:first-child').text = isoCountries[c].text; 6490 select2Inputs[i].text = isoCountries[c].text; 6491 } 6492 } 6493 6494 } 6495 if(select2Inputs[i].hasAttribute('data-country-code')){ 6496 inputPlaceHolder = null; //reset the input 6497 } 6498 if (inputPlaceHolder != '' && inputPlaceHolder !== null) { 6499 select2Inputs[i].querySelector('option:first-child').text = inputPlaceHolder; 6500 select2Inputs[i].style.color = "#a8a8a8"; 6501 if(!select2Inputs[i].querySelector('option:first-child').hasAttribute('value')){ 6502 select2Inputs[i].querySelector('option:first-child').value=''; 6503 } 6504 } 6505 select2Inputs[i].classList.add("select2-preload"); 6506 select2Inputs[i].addEventListener('mousedown', select2OnFormClick, false); 6507 } 6508 } 6509 }); 6510 6511 function select2OnFormClick(event = false) { 6512 let elemtClicked = ''; 6513 if (event !== false) { 6514 event.preventDefault(); 6515 event.stopImmediatePropagation(); 6516 elemtClicked = event.target; 6517 elemtClicked.disabled = true; 6518 } 6519 6520 let loadScriptAsync = function (uri) { 6521 return new Promise((resolve, reject) => { 6522 let script = document.createElement('script'); 6523 script.type = 'text/javascript'; 6524 script.src = uri; 6525 script.async = true; 6526 script.onload = function () { 6527 if (event !== false) { 6528 elemtClicked.disabled = false; 6529 select2Initialize(); 6530 $(elemtClicked).select2('open'); 6531 $(elemtClicked).on("select2-close", function () { 6532 setTimeout(function() { 6533 $('.select2-container-active').removeClass('select2-container-active'); 6534 $(':focus').blur(); 6535 }, 1); 6536 }); 6537 if (elemtClicked.hasAttribute('data-fv-field')) { 6538 if (window.getComputedStyle(elemtClicked).display === "none") { 6539 // if element is display none, the formvalition can not read 6540 elemtClicked.style.cssText = "display: block;position: absolute;visibility: hidden !important;height: 0;width: 0;opacity: 0 !important;"
6541 } 6542 } 6543 } else { 6544 select2Initialize(); 6545 } 6546 resolve("ok"); 6547 }; 6548 let head = document.getElementsByTagName('head')[0]; 6549 head.appendChild(script); 6550 }); 6551 } 6552 6553 let select2Inputs = document.querySelectorAll('.select-category-chained,#sid,#tid,.combobox,#bd-chained,#category-chained,.infinite-chained,.subcategory-chained,.search-chained,select#country-chained,#state-chained,#country-chained-2,#state-chained-2,#profession_id,[name^="bd_phone_country_code"]'); 6554 6555 if (typeof select2Inputs != "undefined") { 6556 for (let i = 0; i < select2Inputs.length; i++) { 6557 let inputPlaceHolder = select2Inputs[i].getAttribute('placeholder'); 6558 if (!select2Inputs[i].getAttribute('placeholder')) { 6559 inputPlaceHolder = select2Inputs[i].getAttribute('data-placeholder'); 6560 } 6561 if(select2Inputs[i].hasAttribute('data-country-code')){ 6562 inputPlaceHolder = null; //reset the input 6563 } 6564 if (inputPlaceHolder != '' && inputPlaceHolder !== null) { 6565 select2Inputs[i].querySelector('option:first-child').text = ''; 6566 } 6567 select2Inputs[i].removeEventListener('mousedown', select2OnFormClick, false); 6568 } 6569 } 6570 let scriptLoaded = loadScriptAsync('https://www.optimizecdn.com/directory/cdn/bootstrap/select2/3.5.2/select2.min.js?v=3.5.5'); 6571 return scriptLoaded; 6572 } 6573 6574 function select2Initialize(){ 6575 function getSecondLevel(div,id) { 6576 $("#" + div).select2("data", { 6577 id: "", 6578 text: `Loading...` 6579 }); 6580 $.ajax({
6581 url : '/ajaxsearch/get-services', 6582 type : "GET", 6583 data : { 6584 'specialty_id' : id 6585 }, 6586 dataType: "json", 6587 success : function(data) { 6588 var options = ''; 6589 6590 for (var i = 0; i < data.length; i++) { 6591 options += '<option value="' + data[i].value + '">' + data[i].title + '</option>'; 6592 } 6593 if (div == "tid"){ 6594 $("#ttid").select2("data", { 6595 id: "", 6596 text: "No options available" 6597 }); 6598 6599 6600 $("#ttid").select2("enable", false); 6601 6602 $("#" + div).change(function () { 6603 sessionStorage.setItem("select2-tid"+path2,$(this).val()); 6604 }); 6605 } 6606 if (data.length > 1) { 6607 $("#" + div).select2("enable",true); 6608 $("#" + div).html(options); 6609 $("#" + div).select2("val", ""); 6610 6611 } else { 6612 $("#"+div).select2("data", { 6613 id: "", 6614 text: "No options available" 6615 }); 6616 $("#"+div).select2("val", ""); 6617 } 6618 6619 if(div == 'tid' && preloaded_tid !== false){ 6620 $("#" + div).select2("val", preloaded_tid); 6621 $("#" + div).trigger('change'); 6622 } 6623 } 6624 }); 6625 } 6626 function getSecondLevelAccount(div,id) { 6627 $("#" + div).select2("data", { 6628 id: "", 6629 text: `Loading...` 6630 }); 6631 $.ajax({
6632 url : '/ajaxsearch/get-services', 6633 type : "GET", 6634 data : { 6635 'specialty_id' : id 6636 }, 6637 dataType: "json", 6638 success : function(data) { 6639 var options = ''; 6640 6641 for (var i = 0; i < data.length; i++) { 6642 options += '<option value="' + data[i].value + '">' + data[i].title + '</option>'; 6643 } 6644 if (data.length > 1) { 6645 $("#" + div).select2("close"); 6646 $("#" + div).select2("val", ""); 6647 $("#" + div).select2("enable",true); 6648 $("#" + div).html(options); 6649 6650 6651 } else { 6652 $("#"+div).select2("data", { 6653 id: "", 6654 text: "No options available" 6655 }); 6656 $("#"+div).select2("val", ""); 6657 } 6658 } 6659 }); 6660 } 6661 function getThirdLevel(div,id,id2) { 6662 $("#"+div).select2("data", { 6663 id: "", 6664 text: `Loading...` 6665 }); 6666 6667 $.ajax({
6668 url : '/ajaxsearch/get-locations', 6669 type : "GET", 6670 data : { 6671 'specialty_id' : id, 6672 'treatment_id' : id2, 6673 }, 6674 dataType: "json", 6675 success : function(data) { 6676 var options = ''; 6677 6678 for (var i = 0; i < data.length; i++) { 6679 options += '<option value="' + data[i].value + '">' + data[i].title + '</option>'; 6680 } 6681 if (data.length > 1) { 6682 $("#" + div).select2("enable",true); 6683 $("#" + div).html(options); 6684 $("#" + div).select2("val", ""); 6685 6686 } else { 6687 $("#"+div).select2("data", { 6688 id: "", 6689 text: "No options available" 6690 }); 6691 $("#"+div).select2("val", ""); 6692 } 6693 } 6694 }); 6695 } 6696 var current_country = ''; 6697 function getStateList(div,id) { 6698 if (id != current_country) { 6699 current_country = id; /* BUGFIX p949P6dS: record the country being fetched so the select2-open re-fetch handler short-circuits at this guard instead of looping forever. current_country was declared (line 274) but never assigned, so this guard was always true: success -> select2("open") re-fired the open handler -> getStateList(id) -> re-fetch -> "Loading..." re-pinned -> infinite loop (Singapore = 2 regions). */ 6700 6701 $("#"+div).select2("data", { 6702 id: "", 6703 text: `Loading...` 6704 }); 6705 $.ajax({
6706 url : '/ajaxsearch/get-states', 6707 type : "GET", 6708 data : { 6709 'country' : id 6710 }, 6711 dataType: "json", 6712 success : function(data) { 6713 $("#" + div).html(''); // clear options 6714 6715 /* p949P6dS: data[0] is always the server-side "(Select from List)" placeholder, 6716 so <=2 entries means the country has at most 1 real region (Singapore, 6717 Martinique, zero-region). Client wants those to read "No State/Province 6718 Available" instead of "(Select from List)"; the single real region stays 6719 selectable. Reset/enable now runs on EVERY response (was gated behind 6720 data.length > 1, which left zero-region countries stuck on "Loading..." 6721 and disabled); auto-open stays multi-region only. */ 6722 var hasStates = (data.length > 2); 6723 for (var i = 0; i < data.length; i++) { 6724 var optionTitle = (!hasStates && data[i].value === "") ? `No State/Province Available for This Country` : data[i].title; 6725 var newOption = new Option(optionTitle, data[i].value, false, false); 6726 $("#" + div).append(newOption).trigger('change'); 6727 6728 } 6729 if (data.length === 0) { 6730 $("#" + div).append(new Option(`No State/Province Available for This Country`, "", false, false)).trigger('change'); 6731 } 6732 6733 $("#" + div).select2("enable",true); 6734 $("#" + div).prop("disabled", false); 6735 $("#" + div).select2("val", ""); 6736 if (hasStates) { 6737 $("#" + div).select2("open"); 6738 } 6739 } 6740 }); 6741 } else { 6742 /* p949P6dS AC#3: the select2-open handler runs select2("enable",false) BEFORE 6743 re-calling getStateList, and for a country with <=2 options (Singapore, 6744 Martinique) that re-call short-circuits here on the id == current_country 6745 guard. This branch previously only reset the value, so the field was left 6746 permanently disabled: select2-container-disabled, clicks never open it, the 6747 single real region is unselectable. Mirror the success path's re-enable so a 6748 short-circuited re-open leaves the field usable. Multi-region countries never 6749 hit this (their open handler is gated behind count <= 2). */ 6750 $("#" + div).select2("enable", true); 6751 $("#" + div).prop("disabled", false); 6752 $("#" + div).select2("val", ""); 6753 } 6754 } 6755 /* p949P6dS: keep the checkout/billing required-State validation in sync with the 6756 server-side waiver, on BOTH layers. When the selected country has selectable 6757 sub-regions (Canada, US, ...) FormValidation validates state_code (inline "Required 6758 Field" on submit); when it has none (Singapore, Martinique, zero-region) the state_code 6759 validator is disabled + un-flagged so those countries are not blocked. Delegated so it 6760 binds even though the billing form is revealed after step 1; guarded to no-op on any 6761 page/form without FormValidation + a state_code field. The server still enforces the 6762 same rule (bd-core-files form_controller), so this is UX only, not the security gate. */ 6763 function bdSyncStateRequired(hasStates) { 6764 var $stField = $("#state-chained"); 6765 var $stForm = $stField.closest("form"); 6766 var stFv = ($stForm.length) ? ($stForm.data("formValidation") || $stForm.data("bootstrapValidator")) : null; 6767 if (!stFv || !stFv.options || !stFv.options.fields || !stFv.options.fields.state_code) { 6768 return; 6769 } 6770 stFv.options.fields.state_code.excluded = hasStates ? false : true; 6771 try { stFv.enableFieldValidators("state_code", hasStates); } catch (e) {} 6772 6773 /* p949P6dS: keep the visible "* " required marker on the State label in sync with the 6774 waiver. functions_up.php renders <span class="required">* </span> on the state_code 6775 label when AVS forces the field required; for a no-state country (Singapore, 6776 Martinique) the field is genuinely waived so the asterisk must go away, and come 6777 back when the country has selectable states again. Scoped to the state label. */ 6778 var $stReq = $("label[for='state-chained'] .required", $stForm); 6779 $stReq.css("display", hasStates ? "" : "none"); 6780 6781 /* p949P6dS: the ACTUAL blocker. The billing form carries a SECOND required layer, 6782 independent of FormValidation: the form's success.form.fv handler loops 6783 $form.find('[required]') and, for any empty one, appends <small class="required-error"> 6784 Required Field</small> + returns false, hard-blocking the submit. AVS renders the 6785 state_code <select> with the HTML5 `required` attribute, so a no-state country 6786 (empty state) stayed blocked with "Required Field" even after the FormValidation 6787 waiver above. Drop the `required` attribute (+ clear its custom error) when the 6788 country has no selectable states, and restore it when it does. Remember the server- 6789 rendered original so we never ADD required to a field AVS left optional. */ 6790 if ($stField.attr("data-bd-orig-required") === undefined) { 6791 $stField.attr("data-bd-orig-required", 6792 ($stField.prop("required") || $stField.attr("required") !== undefined) ? "1" : "0"); 6793 } 6794 var stOrigRequired = ($stField.attr("data-bd-orig-required") === "1"); 6795 6796 var $stRow = $stField.closest(".form-group,.fv-row,.row"); 6797 if (!hasStates) { 6798 try { if (typeof stFv.resetField === "function") { stFv.resetField("state_code", true); } } catch (e) {} 6799 $stRow.removeClass("has-error has-success"); 6800 $stRow.find(".help-block[data-fv-validator]").css("display", "none"); 6801 /* drop the HTML5 required gate + its "Required Field" message for no-state country */ 6802 $stField.removeAttr("required").prop("required", false); 6803 $stField.siblings(".required-error").remove(); 6804 $stRow.find(".required-error").remove(); 6805
6806 /* p949P6dS: on the Member-Dashboard billing modal the Save button is disabled by 6807 FormValidation until the whole form is valid; for a no-state country the user 6808 has no state to pick, so nothing re-enables it and Save stays stuck disabled -> 6809 "cannot save". Re-enable it directly. IMPORTANT: do NOT call stFv.validate() 6810 here â in this FormValidation build validate() on an already-valid form fires 6811 success.form.fv (a real submit), which saved the address on the country change 6812 AND consumed the one-time CSRF token, so the actual Save click then failed with 6813 "You entered invalid data. Please try to save again." disableSubmitButtons only 6814 toggles the button; no submit. Scoped to the billing modal so checkout is 6815 untouched. */ 6816 if ($stForm.closest("#billing_address_modal").length) { 6817 try { if (typeof stFv.disableSubmitButtons === "function") { stFv.disableSubmitButtons(false); } } catch (e) {} 6818 $stForm.find("input.submitter, button.submitter, [type=submit]") 6819 .removeClass("disabled").prop("disabled", false).removeAttr("disabled"); 6820 } 6821 } else if (stOrigRequired) { 6822 /* country has states again â restore the required gate AVS originally set */ 6823 $stField.attr("required", "required").prop("required", true); 6824 } 6825 } 6826 $(document).off("change.bdStateReq").on("change.bdStateReq", "#country-chained", function() { 6827 var bdCc = $(this).val(); 6828 var $bdForm = $("#state-chained").closest("form"); 6829 var bdFv = ($bdForm.length) ? ($bdForm.data("formValidation") || $bdForm.data("bootstrapValidator")) : null; 6830 if (!bdFv || !bdFv.options || !bdFv.options.fields || !bdFv.options.fields.state_code || bdCc === "") { 6831 return; 6832 } 6833 $.ajax({
6834 url: "/ajaxsearch/get-states", 6835 type: "GET", 6836 data: { "country": bdCc }, 6837 dataType: "text", 6838 success: function(bdResp) { 6839 /* count entries without regex (DB+eval mangles backslashes): split on the 6840 literal "value" key; total entries = splits - 1; >2 means placeholder + 2+ 6841 real regions == has selectable states. Text parse also survives the 6842 malformed-JSON zero-region response. */ 6843 var bdTotal = bdResp.split(`"value"`).length - 1; 6844 bdSyncStateRequired(bdTotal > 2); 6845 } 6846 }); 6847 }); 6848 /* p949P6dS: the Member Dashboard billing modal (widget 1861) pre-selects the member's 6849 SAVED country_code at document.ready without firing a change event, so the handler 6850 above never ran for it and an AVS-forced required State (functions_up.php forces 6851 field_required=1 on state_code when whmcs_avs_on / stripe_accept_intl_payments is on) 6852 stayed active for a saved no-state country â blocking the save with "Required Field" 6853 on a country that has no state to pick. Sync once for an already-selected country. 6854 The namespaced trigger fires only this handler (not select2/getStateList), and the 6855 handler no-ops when the country is empty or state_code is not a validated field, so 6856 checkout and every other chained-select page are unaffected. */ 6857 $("#country-chained").each(function() { 6858 if ($(this).val() !== "") { 6859 $(this).trigger("change.bdStateReq"); 6860 } 6861 }); 6862 function getInfinityChained(div,id) { 6863 $("#"+div).select2("data", { 6864 id: "", 6865 text: `Loading...` 6866 }); 6867 $.ajax({
6868 url : '/ajaxsearch/get-subcategory', 6869 type : "GET", 6870 data : { 6871 'parent' : id 6872 }, 6873 dataType: "json", 6874 success : function(data) { 6875 var options = ''; 6876 6877 for (var i = 0; i < data.length; i++) { 6878 options += '<option value="' + data[i].value + '">' + data[i].title + '</option>'; 6879 } 6880 if (data.length > 1) { 6881 $("#" + div).select2("enable",true); 6882 $("#" + div).html(options); 6883 if(div == 'tid' && '' != ''){ 6884 $("#" + div).select2("val", ""); 6885 $("#" + div).trigger('change'); 6886 } else if(div == 'tid' && preloaded_tid !== false){ 6887 $("#" + div).select2("val", preloaded_tid); 6888 $("#" + div).trigger('change'); 6889 }else { 6890 $("#" + div).select2("val", ""); 6891 } 6892 6893 6894 6895 6896 } else { 6897 $("#" + div).select2("data", { 6898 id: "", 6899 text: "No options available" 6900 }); 6901 } 6902 } 6903 }); 6904 } 6905 function categoryChained(div,id) { 6906 $("#" + div).select2("data", { 6907 id: "", 6908 text: `Loading...` 6909 }); 6910 if(div == "tid") { 6911 url_link = '/ajaxsearch/get-services' 6912 data_passed = {'specialty_id' : id} 6913 } else { 6914 url_link = '/ajaxsearch/category-list'; 6915 data_passed = {'parent' : id} ; 6916 } 6917 6918 var selectName = $("select[next="+div+"]").prop("name"); 6919 6920 6921 if( (selectName == "ttid" || selectName == "sid" || selectName == "tid") ){ 6922 6923 sessionStorage.setItem("select2-"+selectName+path2,id); 6924 } 6925 6926 $.ajax({
6927 url : url_link, 6928 type : "GET", 6929 data : data_passed, 6930 dataType: "json", 6931 success : function(data) { 6932 var options = ''; 6933 6934 for (var i = 0; i < data.length; i++) { 6935 options += '<option value="' + data[i].value + '">' + data[i].title + '</option>'; 6936 } 6937 6938 if (data.length > 1) { 6939 $("#" + div).select2("enable",true); 6940 $("#" + div).html(options); 6941 6942 if(div == "ttid" && preloaded_ttid !== false){ 6943 $("#" + div).select2("val", preloaded_ttid); 6944 $("#" + div).trigger('change'); 6945 }else if(div == "tid" && preloaded_tid !== false){ 6946 $("#" + div).select2("val", preloaded_tid); 6947 $("#" + div).trigger('change'); 6948 }else{ 6949 $("#" + div).select2("val", ""); 6950 } 6951 6952 6953 6954 } else { 6955 $("#" + div).select2("data", { 6956 id: "", 6957 text: "No options available" 6958 }); 6959 } 6960 } 6961 }); 6962 } 6963 function formatCountry(country) { 6964 if (!country.id && country.text.includes("+")) { 6965 let dataCountry = country.text; 6966 dataCountry = dataCountry.split('+') 6967 country.code = dataCountry[0].trim(); 6968 country.id = dataCountry[1].trim(); 6969 return country; 6970 } else if (!country.code) { 6971 return country.text; 6972 } 6973 var $country = $( 6974 '<span class="flag-icon flag-icon-' + country.code.toLowerCase() + ' flag-icon-squared"></span>' + 6975 '<span class="flag-text" style="margin-left:10px;">' + country.text + '</span>' 6976 ); 6977 return $country; 6978 } 6979 6980 let phoneCountryCode = document.querySelector("[name^='bd_phone_country_code']"); 6981 if (typeof phoneCountryCode != 'undefined' && phoneCountryCode != null && typeof isoCountries != 'undefined') { 6982 $("[name^='bd_phone_country_code']").select2({ 6983 placeholder:`Country`, 6984 data:isoCountries, 6985 searchInputPlaceholder: `Enter Country Code`, 6986 formatResult : formatCountry, 6987 dropdownAutoWidth: true, 6988 width: "resolve", 6989 }).on("select2-opening", function (e) { 6990 if (typeof e.currentTarget.attributes['data-default-country-code'] !== "undefined") { 6991 $(this).val(e.currentTarget.attributes['data-default-country-code'].value) 6992 .removeAttr("data-default-country-code") 6993 .trigger('change') 6994 .trigger('open'); 6995 } 6996 }).change(function (e) { 6997 let select2Span = $(this).attr('id'); 6998 if (e.val) { 6999 $('#'+$(this).attr('id')+'--flag').remove(); 7000 $('#s2id_' + select2Span + ' a span.select2-chosen').prepend('<span class="flag-icon flag-icon-' + e.added.code.toLowerCase() + ' flag-icon-squared" style="margin-right:10px"></span>') 7001 }else{ 7002 $('#s2id_' + select2Span + ' a span.select2-chosen').prepend('<span class="flag-icon flag-icon-' + $(this).attr('data-default-country-flag').toLowerCase() + ' flag-icon-squared" style="margin-right:10px"></span>') 7003 } 7004 $(this).removeAttr("data-default-country-flag"); 7005 7006 }); 7007 } 7008 $("#bd-chained").select2({ 7009 title: "Select Category", 7010 placeholder: "Select Category", 7011 allowClear: true, 7012 formatNoMatches: function () { 7013 return "No matches found"; 7014 } 7015 }).change(function () { 7016 var id = $(this).val(); 7017 $("#tid").select2("enable",false); 7018 getInfinityChained("tid",id); 7019 }); 7020 $("#category-chained").select2({ 7021 title: "Select Category", 7022 placeholder: "Select Category", 7023 allowClear: true 7024 }).change(function () { 7025 var id = $(this).val(); 7026 $("#subcategory-chained").select2("enable",false); 7027 categoryChained("subcategory-chained",id); 7028 }); 7029 7030 $(".select-category-chained").select2({ 7031 title: "Select Category", 7032 placeholder: "Select Category", 7033 allowClear: true 7034 }) 7035 $(".infinite-chained").select2({ 7036 title: "Select option from list", 7037 placeholder: "Click to select an option", 7038 allowClear: true, 7039 formatNoMatches: function () { 7040 return "No matches found"; 7041 } 7042 }).change(function () { 7043 var id = $(this).val(); 7044 var attr = $(this).attr('next'); 7045 var selectName = $(this).prop('name'); 7046 if ( selectName=='ttid' || attr =='ttid' ) { 7047 $("#" + attr).select2("enable",false); 7048 categoryChained(attr,id); 7049 sessionStorage.setItem("select2-"+selectName+path2,id); 7050 } 7051 }).on("select2-close", function () { 7052 setTimeout(function() { 7053 $('.select2-container-active').removeClass('select2-container-active'); 7054 $(':focus').blur(); 7055 }, 1); 7056 }); 7057 $("#subcategory-chained").select2(); 7058 $(".combobox").select2();
7059 $(".search-chained").select2(); 7060 7061 $("select#country-chained").select2({ 7062 title: "", 7063 placeholder: "", 7064 val: "", 7065 allowClear: true, 7066 formatNoMatches: function () { 7067 return "No matches found"; 7068 } 7069 }).change(function () { 7070 var id = $(this).val(); 7071 $("#state-chained").select2("enable",false); 7072 getStateList("state-chained",id); 7073 var state = ""; 7074 7075 if (id == "CA") { 7076 state = "Province"; 7077 7078 } else if (id == "UK") { 7079 state = "Region"; 7080 7081 } else if (id == "US" || id == "AU") { 7082 state = "State"; 7083 7084 } else { 7085 state = "Region"; 7086 } 7087 $("#state-chained").prev(".control-label").text(state); 7088 }); 7089 $("#state-chained").select2(); 7090 7091 $("#state-chained").on("select2-open", function(event) { 7092 event.preventDefault(); 7093 var id = $("#country-chained").val(); 7094 var count = $('#state-chained option').length; 7095 7096 if (id != "" && count <= 2) { 7097 $("#state-chained").select2("enable",false); 7098 getStateList("state-chained",id); 7099 var state = ""; 7100 7101 if (id == "CA") { 7102 state = "Province"; 7103 7104 } else if (id == "UK") { 7105 state = "Region"; 7106 7107 } else if (id == "US" || id == "AU") { 7108 state = "State"; 7109 7110 } else { 7111 state = "Region"; 7112 } 7113 $("#state-chained").prev(".control-label").text(state); 7114 } 7115 }); 7116 7117 $("#country-chained-2").select2({ 7118 title: "Select Country", 7119 placeholder: "(select country)", 7120 val: "", 7121 allowClear: true, 7122 formatNoMatches: function () { 7123 return "No matches found"; 7124 } 7125 }).change(function () { 7126 var id = $(this).val(); 7127 $("#state-chained-2").select2("enable",false); 7128 getStateList("state-chained-2",id); 7129 var state = ""; 7130 7131 if (id == "CA") { 7132 state = "Province"; 7133 7134 } else if (id == "UK") { 7135 state = "Region"; 7136 7137 } else if (id == "US" || id == "AU") { 7138 state = "State"; 7139 7140 } else { 7141 state = "Region"; 7142 } 7143 $("#state-chained-2").prev(".control-label").text(state); 7144 }); 7145 7146 $("#state-chained-2").select2(); 7147 $("#profession_id").select2({ 7148 placeholder: "Select From List", 7149 allowClear: true, 7150 formatNoMatches: function () { 7151 return "No matches found"; 7152 } 7153 }).change(function () { 7154 var id = $(this).val(); 7155 getSecondLevelAccount("category_id",id); 7156 }); 7157 $("#sid").select2({ 7158 title: "Select Category", 7159 placeholder: "Select Category", 7160 allowClear: true, 7161 formatNoMatches: function () { 7162 return "No matches found"; 7163 } 7164 }).change(function () { 7165 var id = $(this).val(); 7166 $("#tid").select2("enable",false); 7167 getSecondLevel("tid",id); 7168 $("#tid").select2("open"); 7169 sessionStorage.setItem("select2-sid"+path2,id); 7170 }); 7171 $("#location_value_dropdown").select2({ 7172 title: "More Options", 7173 placeholder: "More Options", 7174 allowClear: true, 7175 formatNoMatches: function () { 7176 return "No matches found"; 7177 } 7178 }); 7179 $("#tid").select2({ 7180 title: "Select Sub-category", 7181 placeholder: "Select Sub-category", 7182 allowClear: true, 7183 formatNoMatches: function () { 7184 return "No matches found"; 7185 } 7186 }); 7187 $("#location_value_dropdown").select2({ 7188 title: "More Options", 7189 placeholder: "More Options", 7190 allowClear: true 7191 }); 7192 } 7193 7194 if(preloaded_ttid !== false || preloaded_tid !== false || preloaded_sid !== false){ 7195 $(document).ready(function(){ 7196 // Skip if homepage widget already handles preload 7197 if(window._bdCategoryPreloaded) return; 7198 7199 if(preloaded_sid !== false && $("#sid").length > 0){ 7200 select2OnFormClick(); 7201 setTimeout(() => { 7202 $("#sid").select2('val', preloaded_sid); 7203 $('#sid').trigger('change'); 7204 }, 500); 7205 }else if(preloaded_tid !== false && $("#sid").length <= 0){ 7206 select2OnFormClick(); 7207 setTimeout(() => { 7208 $("#tid").select2('val', preloaded_tid);
7209 $('#tid').trigger('change'); 7210 }, 500); 7211 } 7212 }); 7213 } 7214 </script>
vendor: 2 bytes, line 7214
7214
7215<script> 7216 // Function to add aria-label to <select> elements without it, for better pagespeed accessibility score 7217 $(document).ready(function() { 7218 var ariaLabelCounter = {}; // Object to keep track of aria-label counts for uniqueness 7219 7220 // Iterate over each select element that does not have an aria-label 7221 $('select:not([aria-label])').each(function() { 7222 // Use the ID or placeholder as the base for the aria-label, stripping HTML tags 7223 var baseLabel = this.id || $(this).attr('placeholder') || 'select'; 7224 baseLabel = baseLabel.replace(/<[^>]*>/g, '').trim(); // Remove HTML tags and trim 7225 7226 // Ensure uniqueness of each aria-label 7227 ariaLabelCounter[baseLabel] = (ariaLabelCounter[baseLabel] || 0) + 1; 7228 var ariaLabel = baseLabel + '-' + ariaLabelCounter[baseLabel]; 7229 7230 // Truncate aria-label to 100 characters 7231 ariaLabel = ariaLabel.length > 100 ? ariaLabel.substring(0, 100) : ariaLabel; 7232 7233 // Set the aria-label attribute to the unique label 7234 $(this).attr('aria-label', ariaLabel); 7235 }); 7236 }); 7237</script>
vendor: 2 bytes, line 7237
7237
7238<script type="application/ld+json"> 7239{ 7240 "@context": "https://schema.org", 7241 "@graph": [ 7242 { 7243 "@type": "WebSite", 7244 "@id": "https://www.answers4care.com/#website", 7245 "name": "Answers 4 Care", 7246 "url": "https://www.answers4care.com/", 7247 "inLanguage": "en-US", 7248 "potentialAction": { 7249 "@type": "SearchAction", 7250 "target": "https://www.answers4care.com/sitesearch?q={search_term_string}", 7251 "query-input": "required name=search_term_string", 7252 "name": "Search Directory: Answers 4 Care" 7253 }, 7254 "publisher": { 7255 "@id": "https://www.answers4care.com/#organization" 7256 } 7257 }, 7258 { 7259 "@type": "Organization", 7260 "@id": "https://www.answers4care.com/#organization", 7261 "name": "Answers 4 Care", 7262 "description": "Search the most complete aging focused professionals directory. Find aging focused professionals.", 7263 "url": "https://www.answers4care.com/", 7264 "mainEntityOfPage": { 7265 "@type": "WebPage", 7266 "@id": "https://www.answers4care.com/#webpage" 7267 }, 7268 "contactPoint": [ 7269 { 7270 "@type": "ContactPoint", 7271 "email": "[email protected]", 7272 "contactType": "customer support", 7273 "availableLanguage": [ 7274 "en" 7275 ], 7276 "areaServed": "US" 7277 } 7278 ], 7279 "areaServed": { 7280 "@type": "Country", 7281 "name": "US" 7282 }, 7283 "telephone": "516-899-2269", 7284 "sameAs": [ 7285 "https://www.facebook.com/profile.php?id=61566999383271", 7286 "https://www.linkedin.com/company/answers-4-care", 7287 "https://www.youtube.com/@careanswered516", 7288 "https://www.instagram.com/answers4care" 7289 ], 7290 "logo": { 7291 "@type": "ImageObject", 7292 "@id": "https://www.answers4care.com/#logo", 7293 "url": "/images/answers4care-nobackground-logo.png" 7294 }, 7295 "image": { 7296 "@type": "ImageObject", 7297 "@id": "https://www.answers4care.com/#image", 7298 "url": "/images/answers4care-nobackground-logo.png" 7299 }, 7300 "keywords": [ 7301 "Aging Focused Professionals", 7302 "Aging Focused Professionals", 7303 "Answers 4 Care", 7304 "Answers 4 Care", 7305 "Aging Focused Professionals" 7306 ] 7307 } 7308 ] 7309}</script>
7309 7310
7311<script> 7312// Bootstrap Icons fallback loader - ensures Bootstrap Icons work even if HEAD widget is customized, do not delete 7313(function() { 7314 if (!document.querySelector('link[href*="bootstrap-icons"]')) { 7315 var link = document.createElement('link'); 7316 link.rel = 'stylesheet'; 7317 link.href = 'https://www.optimizecdn.com/directory/cdn/assets/bootstrap/fonts/bootstrap-icons.min.css?v=1.13.1'; 7318 document.head.appendChild(link); 7319 } 7320})(); 7321</script>
7321 7322<style type='text/css'> .input-group.normal-autosuggest input,.input-group.sm-autosuggest input, .input-group.md-autosuggest input { 7323 border-radius: 0 8px 8px 0 !important; 7324 } 7325.normal-autosuggest .twitter-typeahead, .sm-autosuggest .twitter-typeahead, .md-autosuggest .twitter-typeahead, .large-autosuggest .twitter-typeahead { 7326 display: inline-block; 7327 height: 25px; 7328 position: relative; 7329 width: 100%; 7330} 7331.input-group.normal-autosuggest .twitter-typeahead, .input-group.sm-autosuggest .twitter-typeahead, .input-group.large-autosuggest .twitter-typeahead:not(.search_box .twitter-typeahead) { 7332 width: inherit; 7333} 7334.normal-autosuggest .twitter-typeahead .clear_content.medium{ 7335 bottom: 0px; 7336} 7337.sm-autosuggest .twitter-typeahead .clear_content.small{ 7338 bottom: -4px; 7339} 7340.md-autosuggest.input-group .twitter-typeahead .clear_content.medium { 7341 bottom: -2px; 7342} 7343.md-autosuggest .twitter-typeahead { 7344 height: 32px; 7345} 7346.md-autosuggest .input-group-addon + .input_wrapper .twitter-typeahead { 7347 height: 38px; 7348 vertical-align: top; 7349} 7350.md-autosuggest-input + .clear_content.medium { 7351 bottom: 0px; 7352} 7353.large-autosuggest .twitter-typeahead { 7354 height: 40px; 7355} 7356.normal-autosuggest .twitter-typeahead{ 7357 height: 38px; 7358} 7359.normal-autosuggest .twitter-typeahead .tt-hint, .sm-autosuggest .twitter-typeahead .tt-hint { 7360 background: #fff !important; 7361 border: 1px solid #ccc!important; 7362 border-radius: 0 8px 8px 0; 7363 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset!important; 7364 color: transparent; 7365 left: 0; 7366 padding: 4px 11px; 7367 position: absolute; 7368 top: 0; 7369 width: 100%; 7370 font-size:12px; 7371} 7372.normal-autosuggest.input-group-addon .fa, .sm-autosuggest .input-group-addon .fa, .input-group-sm .input-group-addon .fa {font-size:12px} 7373.md-autosuggest .twitter-typeahead .tt-hint { 7374 height: 100%; 7375 background: #ffffff none repeat scroll 0 0 !important; 7376 border: 1px solid #cccccc !important; 7377 border-radius: 0 8px 8px 0; 7378 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset !important; 7379 color: rgba(0, 0, 0, 0); 7380 left: 0; 7381 padding: 6px 11px; 7382 position: absolute; 7383 top: 0; 7384 width: 100%; 7385} 7386.large-autosuggest {background: #fff !important;border-radius:10px;} 7387.large-autosuggest input {width: 100%!important;box-shadow:none; border-radius: 10px;} 7388 .input-group.large-autosuggest input,.input-group.large-autosuggest .twitter-typeahead .tt-hint { 7389 border-radius: 0 10px 10px 0!important; 7390 } 7391 .large-autosuggest .twitter-typeahead .tt-hint { 7392 background: #fff !important; 7393 border: 1px solid #ccc!important; 7394 border-radius: 10px; 7395 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset!important; 7396 color: transparent; 7397 left: 0; 7398 position: absolute; 7399 top: 0; 7400 width: 100%; 7401 font-size: 18px; 7402 height: 46px; 7403 line-height: 1.33333; 7404 padding: 10px 15px; 7405} 7406.tt-dataset .empty-message { 7407 display: none !important; 7408} 7409.twitter-typeahead .tt-query {background-color:#fff!important} 7410.input-group.large-autosuggest span:first-child .tt-hint {border-radius: 0 !important;} 7411span.tt-dropdown-menu { 7412 border: 1px solid #FCFCFC; 7413 border-radius: 5px; 7414 box-shadow: 0 5px 10px rgba(0,0,0,.2); 7415 width: 100% !important; 7416} 7417.tt-is-under-cursor a.suggest-link { 7418 background: #55ACEE; 7419} 7420 7421.tt-is-under-cursor .media-heading, 7422.tt-is-under-cursor .suggest-origin, 7423.tt-is-under-cursor .location{ 7424 color:#fff!important; 7425} 7426.tt-suggestion .media .media-body .suggest-origin { 7427 color: rgba(45, 91, 137,0.9); 7428 padding: 1px 0; 7429 border-radius: 6px; 7430 font-weight: bold; 7431 line-height: 12px; 7432} 7433.tt-suggestion { 7434 background: #fff; 7435 border-bottom: 1px solid #eee; 7436 -webkit-transition: all 0.3s ease-in-out; 7437 -moz-transition: all 0.3s ease-in-out; 7438 -o-transition: all 0.3s ease-in-out; 7439 transition: all 0.3s ease-in-out; 7440} 7441body .tt-suggestions .media.br-bottom img { 7442 max-width: 45px; 7443 height: auto; 7444} 7445body .tt-suggestions .media-body span { 7446 font-size: 10px; 7447} 7448body .tt-suggestions .media-body h4 { 7449 font-size: 12px; 7450 margin: 2px 0px; 7451 text-transform: capitalize; 7452} 7453a.suggest-link { 7454 padding: 5px; 7455 display: block; 7456} 7457a.suggest-link img { 7458 border-radius: 100px; 7459 display: block; 7460 margin: 0 auto; 7461 height: 100%!important; 7462 width: 100%; 7463 object-fit: cover; 7464} 7465.left-suggest-col {
7466 display: inline-block; 7467 vertical-align: middle; 7468 width: 44px; 7469 height: 44px; 7470} 7471.right-suggest-col { 7472 display: inline-block; 7473 padding-left: 1%; 7474 text-align: left; 7475 vertical-align: middle; 7476 width: calc(100% - 1% - 50px); 7477} 7478p.media-heading { 7479 color: #333; 7480 font-size: 12px; 7481 font-weight: 600; 7482 margin-bottom: 0; 7483} 7484p.suggest-origin { 7485 font-size: 10px; 7486 color: #333; 7487 margin:0; 7488} 7489p.location { 7490 color: #333; 7491 font-size: 10px; 7492 margin: 2px 0; 7493} 7494body .tt-is-under-cursor a.suggest-link { 7495 background: #F7F7F7; 7496} 7497body .tt-is-under-cursor .media-heading, body .tt-is-under-cursor .suggest-origin, body .tt-is-under-cursor .location { 7498 color: #333!important; 7499} 7500a.suggest-link[data-heading="heading"] { 7501 pointer-events: none; 7502 cursor: default; 7503 text-decoration: none; 7504} 7505body .tt-is-under-cursor a.suggest-link[data-heading="heading"] { 7506 background: rgb(185, 64, 167); 7507} 7508/* --- all the novalue css --- */ 7509a.suggest-link .suggest-origin[data-state="novalue"] { 7510 display: none; 7511} 7512a.suggest-link .location[data-state="novalue"] { 7513 display: none; 7514} 7515a.suggest-link img[data-state="novalue"] { 7516 display: none; 7517} 7518a.suggest-link .suggest-origin[data-state="heading"] { 7519 display: none; 7520} 7521a.suggest-link .media-heading[data-heading="heading"] { 7522 color:rgb(255, 255, 255)!important; 7523 font-weight: bold; 7524 padding: 4px; 7525 font-size: 13px; 7526} 7527.left-suggest-col[data-photo="novalue"], .left-suggest-col[data-photo="undefined"] { 7528 display: none; 7529} 7530.right-suggest-col[data-photo="novalue"], .right-suggest-col[data-photo="undefined"] { 7531 width: 100%; 7532} 7533a.suggest-link[href="novalue"] { 7534 cursor: default !important; 7535 pointer-events: none; 7536} 7537a.suggest-link[data-heading="heading"] { 7538 background-color: rgb(185, 64, 167); 7539} 7540div.content-shell { 7541 overflow: inherit; 7542} 7543span.tt-dropdown-menu div { 7544 float: none; 7545} 7546.tt-menu { 7547 border-radius: 0 0 6px 6px; 7548 box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); 7549 overflow: hidden; 7550 width: 100%; 7551 z-index: 150 !important; 7552} 7553.tt-menu .tt-dataset { 7554 overflow-y: auto; 7555 max-height: 200px; 7556} </style>
7556<script type="text/javascript"> 7557 7558 if (typeof decodeHtml != "function") { 7559 function decodeHtml(html) { 7560 var txt = document.createElement("textarea"); 7561 txt.innerHTML = html; 7562 return txt.value; 7563 } 7564 } 7565 function initializeTypeheadMember_search() { 7566 var member_searchEngine = new Bloodhound({ 7567 initialize: false, 7568 datumTokenizer: function (d) { 7569 return Bloodhound.tokenizers.whitespace(value); 7570 }, 7571 queryTokenizer: Bloodhound.tokenizers.whitespace, 7572 remote: { 7573 url: `/api/suggest/json/get/1,users_data,Listings,1,1,1,1,1,3|88,list_professions,Main Categories,1,0,1,1,1,3|89,list_services,Sub Categories,1,0,1,1,1,3?tID=35&q=%QUERY`, 7574 wildcard: '%QUERY', 7575 filter: function (response) { 7576 7577 if (response != null) { 7578 //var response = response.slice(1); 7579 $.each( 7580 response, function (key, value) { 7581 response[key]['value'] = decodeHtml(value['value']); 7582 response[key]['comes_f'] = decodeHtml(value['comes_f']); 7583 response[key]['location'] = decodeHtml(value['location']); 7584 7585 if (response[key]['value'].indexOf('-/-') >= 0) { 7586 var splitResult = response[key]['value'].split('-/-'); 7587 response[key]['value'] = splitResult[0]; 7588 } 7589 } 7590 ); 7591 7592 } else { 7593 response = {error: "null"}; 7594 } 7595 7596 return response; 7597 } 7598 } 7599 }); 7600 var member_searchDataSrc = member_searchEngine.initialize(); 7601 7602 member_searchDataSrc 7603 .done(function () { /*console.log('Autosuggestions engine initialized.'); */ 7604 }) 7605 .fail(function () { /*console.log('err, something went wrong while initializing autosuggestions engine:(');*/ 7606 }) 7607 7608 $('.member_search').typeahead({ 7609 minLength: 2, 7610 highlight: true, 7611 hint: false }, 7612 { 7613 display: 'value', 7614 source: member_searchEngine.ttAdapter(), 7615 limit: 10, 7616 templates: { 7617 empty: [ 7618 '<div class="empty-message">', 7619 'Result not found', 7620 '</div>' 7621 ].join(" "), 7622 notFound: [ 7623 '<div class="notFound-message">', 7624 'Result not found', 7625 '</div>' 7626 ].join(" "), 7627 suggestion: function (data) { 7628 7629 if (data == "null") { 7630 strTemplate = '<div class="empty-message">Result not found</div>'; 7631 7632 } else { 7633 strTemplate = '<a class="suggest-link" href="' + data.link + '" data-state="' + data.link + '" data-heading="' + data.comes_f + '"> <div class="left-suggest-col" data-photo="' + data.photo + '"> <img src="' + data.photo + '" data-state="' + data.photo + '"> </div> <div class="right-suggest-col" data-photo="' + data.photo + '"> <p class="media-heading" data-state="' + data.value + '" data-heading="' + data.comes_f + '">' + data.value + '</p> <p class="suggest-origin" data-state="' + data.comes_f + '">' + data.comes_f + '</p> <p class="location" data-state="' + data.location + '">' + data.location + '</p> </div> </a> '; 7634 7635 if ((data.link == undefined) || (data.link == "") || (data.link == "novalue")) { 7636 strTemplate = strTemplate.replace(/href=".*?"/, "href='#'"); 7637 } 7638 7639 if ((data.photo == undefined) || (data.photo == "") || (data.photo == "novalue")) { 7640 strTemplate = strTemplate.replace(/<img src=".*?>/, ""); 7641 } 7642 } 7643 7644 return strTemplate; 7645 } 7646 }, 7647 }).on('typeahead:selected', function (obj, datum) { 7648 /* 7649 console.log(obj); 7650 console.log(datum); 7651 */ 7652 }); 7653 7654 $('.member_search').each(function () {
7655 var inputWidth = $(this).outerWidth(); 7656 $(this).siblings('.tt-dropdown-menu').css('width', inputWidth + 'px'); 7657 }); 7658 } 7659 </script>
7659 7660
7660<script type="text/javascript"> 7661 function initializeTypeheadBlogs_search() { 7662 var blogs_searchEngine = new Bloodhound({ 7663 initialize: false, 7664 datumTokenizer: function (d) { 7665 return Bloodhound.tokenizers.whitespace(value); 7666 }, 7667 queryTokenizer: Bloodhound.tokenizers.whitespace, 7668 remote: { 7669 url: `/api/suggest/json/get/14,data_posts,Blog Articles,1,1,1,1,1,3?tID=37&q=%QUERY`, 7670 wildcard: '%QUERY', 7671 filter: function (response) { 7672 7673 if (response != null) { 7674 //var response = response.slice(1); 7675 $.each( 7676 response, function (key, value) { 7677 response[key]['value'] = decodeHtml(value['value']); 7678 response[key]['comes_f'] = decodeHtml(value['comes_f']); 7679 response[key]['location'] = decodeHtml(value['location']); 7680 7681 if (response[key]['value'].indexOf('-/-') >= 0) { 7682 var splitResult = response[key]['value'].split('-/-'); 7683 response[key]['value'] = splitResult[0]; 7684 } 7685 } 7686 ); 7687 7688 } else { 7689 response = {error: "null"}; 7690 } 7691 7692 return response; 7693 } 7694 } 7695 }); 7696 var blogs_searchDataSrc = blogs_searchEngine.initialize(); 7697 7698 blogs_searchDataSrc 7699 .done(function () { /*console.log('Autosuggestions engine initialized.'); */ 7700 }) 7701 .fail(function () { /*console.log('err, something went wrong while initializing autosuggestions engine:(');*/ 7702 }) 7703 7704 $('.blogs_search').typeahead({ 7705 minLength: 2, 7706 highlight: true, 7707 hint: false }, 7708 { 7709 display: 'value', 7710 source: blogs_searchEngine.ttAdapter(), 7711 limit: 5, 7712 templates: { 7713 empty: [ 7714 '<div class="empty-message">', 7715 'Result not found', 7716 '</div>' 7717 ].join(" "), 7718 notFound: [ 7719 '<div class="notFound-message">', 7720 'Result not found', 7721 '</div>' 7722 ].join(" "), 7723 suggestion: function (data) { 7724 7725 if (data == "null") { 7726 strTemplate = '<div class="empty-message">Result not found</div>'; 7727 7728 } else { 7729 strTemplate = '<a class="suggest-link" href="' + data.link + '" data-state="' + data.link + '" data-heading="' + data.comes_f + '"> <div class="left-suggest-col" data-photo="' + data.photo + '"> <img src="' + data.photo + '" data-state="' + data.photo + '"> </div> <div class="right-suggest-col" data-photo="' + data.photo + '"> <p class="media-heading" data-state="' + data.value + '" data-heading="' + data.comes_f + '">' + data.value + '</p> <p class="suggest-origin" data-state="' + data.comes_f + '">' + data.comes_f + '</p> <p class="location" data-state="' + data.location + '">' + data.location + '</p> </div> </a> '; 7730 7731 if ((data.link == undefined) || (data.link == "") || (data.link == "novalue")) { 7732 strTemplate = strTemplate.replace(/href=".*?"/, "href='#'"); 7733 } 7734 7735 if ((data.photo == undefined) || (data.photo == "") || (data.photo == "novalue")) { 7736 strTemplate = strTemplate.replace(/<img src=".*?>/, ""); 7737 } 7738 } 7739 7740 return strTemplate; 7741 } 7742 }, 7743 }).on('typeahead:selected', function (obj, datum) { 7744 /* 7745 console.log(obj); 7746 console.log(datum); 7747 */ 7748 }); 7749 7750 $('.blogs_search').each(function () {
7751 var inputWidth = $(this).outerWidth(); 7752 $(this).siblings('.tt-dropdown-menu').css('width', inputWidth + 'px'); 7753 }); 7754 } 7755 </script>
7755 7756
7756<script> 7757 let typeheadElement = '.member_search,.blogs_search'; 7758 let TypeheadNameListFunction = 'initializeTypeheadMember_search,initializeTypeheadBlogs_search'; 7759 let typeheadFormElement = undefined; 7760 window.addEventListener('load', () => { 7761 if(typeheadElement.length > 1) { 7762 typeheadFormElement = document.querySelectorAll(typeheadElement); 7763 } 7764 if (typeof typeheadFormElement != "undefined") { 7765 for (let i = 0; i < typeheadFormElement.length; i++) { 7766 let closestForm = typeheadFormElement[i].closest('form'); 7767 if (typeof closestForm != "undefined" && closestForm != null) { 7768 closestForm.addEventListener('focus', typeheadFormClick, false); 7769 } 7770 typeheadFormElement[i].addEventListener('focus', typeheadFormClick, false); 7771 } 7772 } 7773 }); 7774 function initializeTypehead(){ 7775 let splitFunctionNames= TypeheadNameListFunction.split(','); 7776 for ( let funcName of splitFunctionNames) 7777 if (typeof funcName != 'function') { 7778 window[funcName](); // execute the function 7779 7780 } 7781 } 7782 function typeheadFormClick(event) { 7783 7784 let head = document.getElementsByTagName('head')[0]; 7785 let script = document.createElement('script'); 7786 let elementClicked = event.target; 7787 script.type = 'text/javascript'; 7788 script.src = "https://cdnjs.cloudflare.com/ajax/libs/corejs-typeahead/0.11.1/typeahead.bundle.min.js"; 7789 script.onload = function () { 7790 initializeTypehead(); 7791 elementClicked.focus(); 7792 }; 7793 head.appendChild(script); 7794 if (typeof typeheadFormElement != "undefined") { 7795 for (let i = 0; i < typeheadFormElement.length; i++) { 7796 let closestForm = typeheadFormElement[i].closest('form'); 7797 if (typeof closestForm != "undefined" && closestForm != null) { 7798 closestForm.removeEventListener('focus', typeheadFormClick, false); 7799 } 7800 typeheadFormElement[i].removeEventListener('focus', typeheadFormClick, false) 7801 } 7802 } 7803 } 7804 7805 7806 </script>
7806 7807 7808
7808<script> 7809 window.addEventListener('load', () => { 7810 let embedlyClass = document.querySelector('.fr-embedly'); 7811 if (typeof embedlyClass != "undefined" && embedlyClass != null) { 7812 let embedlyURI = "https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/embedly_widget.min.js"; 7813 let head = document.getElementsByTagName("head")[0]; 7814 let script = document.createElement('script'); 7815 script.type = 'text/javascript'; 7816 script.src = embedlyURI; 7817 script.async = true; 7818 script.onload = function() { 7819 setTimeout(function() { 7820 if (typeof embedly !== 'undefined' && embedly.card) { 7821 document.querySelectorAll('.embedly-card').forEach(function(card) { 7822 embedly.card(card); 7823 }); 7824 } 7825 }, 500); 7826 }; 7827 head.appendChild(script); 7828 } 7829 }); 7830</script>
7830<script type="text/javascript" src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/bootstrap-select.min.js"></script>
7830 7831 <link rel="stylesheet" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/css/bootstrap-select.min.css"> 7832
7832<script> 7833 $(document).ready(function () { 7834 $("select[data-selected-text-format],.selectpicker").selectpicker({ 7835 size: 6, 7836 styleBase: "form-control", 7837 style: "", 7838 countSelectedText: function (a, b) { 7839 return 1 == a ? "{0} item selected" : "{0} items selected" 7840 }, 7841 width: "100%" 7842 }); 7843 }); 7844 </script>
vendor: 1 bytes, line 7844
7844
7845<script type="text/javascript" src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/jquery.lazy/1.7.9/jquery.lazy.min.js"></script>
7845<script> 7846 $(function () { 7847 $(".lazyloader").Lazy({ 7848 afterLoad: function(element) { 7849 $(".gridView.activeView").click(); 7850 } 7851 }); 7852 7853 }); 7854 $("button[class*='slick'],button[id*='slick']").click(function () { 7855 $(this).parents(".row").find(".lazyloader").lazy({ 7856 bind: "event", 7857 delay: 0 7858 }); 7859 }); 7860 $("[class*='slick'],[id*='slick']").on("swipe",function(){ 7861 $(this).parents(".row").find(".lazyloader").lazy({ 7862 bind: "event", 7863 delay: 0 7864 }); 7865 }); 7866 </script>
7866<script defer src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/websiteScripts.min.js?v=8.0.0"></script>
7866 7867 </body> 7868 </html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.