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>About TheBandBiz | Connecting Live Music with Events Nationwide</title> 17 <meta name="description" content="TheBandBiz is a trusted platform connecting talented bands and solo artists with weddings, parties, and corporate events. Learn more about our mission, who we serve, and why weâre passionate about live entertainment."> 18 <meta name="keywords" content="about TheBandBiz, live music directory, entertainment platform, book a band, promote your band, music booking site, hire live entertainment, wedding bands, corporate entertainment, party bands"> 19 <meta name="robots" content="index, follow"> 20 21 <!-- Canonical URL --> 22 <link rel="canonical" href="https://thebandbiz.com/about"> 23 <link rel="alternate" type="application/rss+xml" title="thebandbiz.com RSS Feed" href="https://thebandbiz.com/rss" /> 24 25 <!-- Social Media Meta Data --> 26 <meta property="og:type" content="website"> 27 <meta property="og:url" content="https://thebandbiz.com/about"> 28 <meta property="og:site_name" content="thebandbiz.com"> 29 <meta property="og:title" content="Who We Are | TheBandBiz – Your Source for Live Music Connections"> 30 <meta property="og:description" content="TheBandBiz helps bands get discovered and helps people find amazing live music for any event. Learn more about what drives us and how we support both artists and clients."> 31 <meta property="og:image" content="https://thebandbiz.com/images/thebandbiz.png"> 32
32<script> 33 var siteInfoSpan=document.createElement('span'); 34 siteInfoSpan.style.cssText='position:absolute;color:transparent;width:100%;z-index:-1;height:50px;top:0;'; 35 siteInfoSpan.textContent='www.thebandbiz.com - thebandbiz.com'; 36 document.documentElement.appendChild(siteInfoSpan); 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=Lato:300,400,600,700,800,900|Ubuntu:300,400,600,700,800,900|Archivo+Black:300,400,600,700,800,900|Open+Sans: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=Lato:300,400,600,700,800,900|Ubuntu:300,400,600,700,800,900|Archivo+Black:300,400,600,700,800,900|Open+Sans:300,400,600,700,800,900&display=swap"> 54 <noscript> 55 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato:300,400,600,700,800,900|Ubuntu:300,400,600,700,800,900|Archivo+Black:300,400,600,700,800,900|Open+Sans: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 --><!-- Facebook Pixel Code -->
106<script>
vendor: 408 bytes, lines 106-115
106 107!function(f,b,e,v,n,t,s) 108{if(f.fbq)return;n=f.fbq=function(){n.callMethod? 109n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 110if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 111n.queue=[];t=b.createElement(e);t.async=!0; 112t.src=v;s=b.getElementsByTagName(e)[0]; 113s.parentNode.insertBefore(t,s)}(window, document,'script', 114'https://connect.facebook.net/en_US/fbevents.js'); 115fbq('init', '
115476850739992555
vendor: 32 bytes, lines 115-116
115'); 116fbq('track', 'PageView');
117</script>
117 118<noscript><img height="1" width="1" style="display:none" 119src="https://www.facebook.com/tr?id=476850739992555&ev=PageView&noscript=1" 120/></noscript> 121<!-- End Facebook Pixel Code --> 122 123<meta name='impact-site-verification' value='f8f828eb-1e65-4703-8574-9a2476f9aece'> 124 125 126<meta name="msvalidate.01" content="7B99E99A757D8CE54333BEDD7CAF7CBB" /> 127 128<meta name="p:domain_verify" content="af7ada27b73a47f4fc2314edd8f645d6"/>
128<script> 129 function g() { 130 window.addEventListener('load', () => { 131 if (typeof initializeG === 'function') { 132 initializeG(); 133 } else if (typeof initializeGoogleMaps === 'function') { 134 initializeGoogleMaps(); 135 } 136 }); 137 } 138 </script>
138 139
139<script src="https://maps.googleapis.com/maps/api/js?v=quarterly&libraries=places®ion=US&callback=g&language=en&key=AIzaSyBGkADkQZdYsPwY0W9HK7yx91rBwQRwewY"></script>
139 140 141</head> 142 143<body class="general-session"><!-- 144IMPORTANT: 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. 145 146INSTEAD: If custom CSS rules are needed, add them directly into the DESIGN SETTINGS > CUSTOM CSS section. 147--> 148<style> 149 .upload-form-field::before { 150 content: "choose files"; 151 display: inline-block; 152 border: 1px solid #999; 153 border-radius: 3px; 154 padding: 5px 8px; 155 } 156 #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 { 157 white-space: nowrap !important; 158 } 159 /* Main Website Design */ 160 body,.modal-header,.modal-content,.modal-body,.modal-footer { 161 background: rgb(255, 255, 255); 162 color: rgb(41, 41, 41); 163 font-family: 'Lato'; 164 font-size: 14px; 165 } 166 .select2-container .select2-choice { 167 font-family: 'Lato'!important; 168 } 169 html{ 170 background: rgb(35, 35, 35) } 171 .bootstrap-datetimepicker-widget *:not(.active,[data-action="togglePeriod"]) a, .bootstrap-datetimepicker-widget *:not(.active,[data-action="togglePeriod"]) td,.datepicker th.picker-switch,.datepicker .dow { 172 color: #000 !important; 173 } 174 a,a.h1,a.h2,a.h3,a.h4,a.h5,a.h6,.pricing_menu li ul li a:not(.btn) { 175 color: rgb(51, 122, 183); 176 } 177 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 { 178 color: rgb(35, 82, 124); 179 } 180 .breadcrumb a{ 181 color: rgba(119, 119, 119,0.9); 182 } 183 .breadcrumb a:hover, .breadcrumb a:focus,.breadcrumb > .active { 184 color: rgb(119, 119, 119); 185 } 186 .help-inline, .help-block { 187 color: rgba(41, 41, 41,0.5); 188 } 189 .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { 190 font-family: 'Open Sans'; 191 } 192 /* Header Design */ 193 .header, .mobile_website_logo img { 194 background: rgb(247, 247, 247); 195 } 196 .header .mini-nav li a:not(.btn):not(.network-icon), .header .mini-nav span { 197 color: rgb(41, 41, 41); 198 font-size: 14px; 199 } 200 .header .mini-nav li a:not(.btn):hover { 201 color: rgba(41, 41, 41,0.95); 202 } 203 .header .btn_get_listed { 204 background-color: rgb(94, 183, 187); 205 border: 1px solid rgb(94, 183, 187); 206 color: rgb(255, 255, 255)!important; 207 } 208 .header .btn_get_listed:hover, .header .btn_get_listed:focus { 209 background-color: rgba(94, 183, 187,0.97); 210 } 211 .header .btn_search { 212 background-color: rgba(94, 183, 187,0.97); 213 border: 1px solid rgb(94, 183, 187); 214 color: rgb(255, 255, 255); 215 } 216 .header .btn_search:hover, .header .btn_search:focus { 217 background-color: rgb(94, 183, 187); 218 color: rgb(255, 255, 255); 219 } 220 221 /* Logo Design */ 222 .logo,.logo:hover,.logo:focus { 223 color: rgb(52, 73, 94); 224 font-family: 'Ubuntu'; 225 } 226 .logo .slogan { 227 color: rgb(97, 96, 96); 228 } 229 .logo .fa { 230 color: rgb(52, 73, 94); 231 } 232 233 /* Main Menu Design */ 234 .member-profile-tabs > ul, .member-profile-tabs .tabs-container { 235 background: rgb(238, 238, 238); 236 position: sticky; 237 z-index: 1; 238 top: 50px; 239 } 240 /* Google Translate When Main Menu Sticky Top */ 241 .skiptranslate:not([style*="display: none;"]) ~ .header .navbar-fixed-top { 242 top: 39px; 243 } 244 .skiptranslate iframe, .skiptranslate:not(.skiptranslate.goog-te-gadget) { 245 position: fixed !important; 246 top: 0 !important; 247 z-index: 999; 248 } 249 @media only screen and (max-width: 1100px) { 250 .member-profile-tabs > ul, .member-profile-tabs .tabs-container { 251 top: 50px; 252 } 253 } 254 .header ul.nav.navbar-nav li ul { 255 background-color: #fafafa; 256 } 257 .header ul.nav.navbar-nav li ul li a, .header ul.nav.navbar-nav li ul li span { 258 color: rgb(41, 41, 41); 259 font-weight: 400; 260 } 261 .header .navbar-default, .pagination > .active > a { 262 background-color: rgb(0, 0, 0); 263 } 264 .header ul.nav.navbar-nav li ul li a:hover, .header ul.nav.navbar-nav li ul li a:focus{ 265 border-left-color: rgb(41, 41, 41); 266 background: rgb(41, 41, 41); 267 color: #fafafa; 268 }
269 .navbar-default .navbar-toggle .icon-bar { 270 background-color: rgb(255, 255, 255); 271 } 272 .user_sidebar, .main_menu, .compact-mobile-search { 273 color: rgb(255, 255, 255); 274 } 275 .navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > span { 276 color: rgb(255, 255, 255); 277 font-weight: 400; 278 } 279 .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 { 280 color: rgb(250, 250, 250); 281 } 282 .navbar-default .navbar-nav > li { 283 font-family: 'Ubuntu'; 284 } 285 286 287 288 /* Footer Design */ 289 .footer { 290 background-color: rgb(35, 35, 35); 291 display: block; 292 } 293 .footer, .footer_menu a,.footer_terms a,.footer_menu .content { 294 color: rgb(239, 239, 239); 295 } 296 .footer_menu a:hover, .footer_terms a:hover, .footer_menu a:focus, .footer_terms a:focus { 297 color: rgb(255, 255, 255); 298 } 299 .footer_menu .head { 300 color: rgb(255, 255, 255); 301 } 302 .btn_footer_get_listed { 303 background-color: rgb(94, 183, 187); 304 border: 1px solid rgb(94, 183, 187); 305 color: rgb(255, 255, 255)!important; 306 } 307 .btn_footer_get_listed:hover, .btn_footer_get_listed:focus{ 308 background-color: rgba(94, 183, 187,0.95); 309 } 310 311 /* Homepage Design */ 312 .homepage_settings h1, .homepage_settings h2, .homepage_map h1, .homepage_map h2 { 313 font-family: 'Archivo Black'; 314 } 315 .homepage_settings h1, .homepage_map h1 { 316 color: rgb(255, 255, 255); 317 font-weight: 400; 318 text-align: center; 319 } 320 .homepage_settings h2, .homepage_map h2 { 321 color: rgb(255, 255, 255); 322 font-weight: 400; 323 text-align: center; 324 325 } 326 .homepage_settings .search_box label { 327 color: rgb(255, 255, 255); 328 } 329 .btn_home_search, .search_box input[type=submit] { 330 background-color: rgb(94, 183, 187); 331 border: 1px solid rgb(94, 183, 187); 332 color: rgb(255, 255, 255); 333 } 334 .btn_home_search:hover, .btn_home_search:focus, .search_box input[type=submit]:hover, .search_box input[type=submit]:focus { 335 background-color: rgba(94, 183, 187,0.97); 336 color: rgb(255, 255, 255); 337 } 338 .homepage_settings .search_box { 339 padding: 10px; 340 341 background-color: rgba( 166, 204, 208, 0.4); 342 } 343 344 /* Homepage Steps Module */ 345 .homepage_steps { 346 background: none; 347 box-shadow: none; 348 padding: 0; 349 color: rgb(255, 255, 255); 350 } 351 .homepage_steps a.homepage_step_link,.homepage_steps a.homepage_step_link:hover,.homepage_steps a.homepage_step_link:active{ 352 color: rgb(255, 255, 255)!important; 353 } 354 .homepage_steps .fa { 355 color: rgb(144, 168, 192); 356 background-color: rgba(144, 168, 192,0.075); 357 } 358 .homepage_steps h2 + p { 359 opacity: .6; 360 } 361 362 /* Blog Posts Slider Settings */ 363 #myCarousel h2 a, .carousel-caption p,#myCarousel .list-group-item h2, #myCarousel li.list-group-item h4 { 364 color: rgb(255, 255, 255); 365 } 366 #myCarousel .list-group-item { 367 background-color: rgba(52, 73, 94,0.9); 368 border-color: rgba(52, 73, 94,0.80); 369 } 370 #myCarousel .carousel-caption { 371 background-color: rgba(52, 73, 94,0.8); 372 } 373 #myCarousel .list-group, #myCarousel .carousel-inner { 374 background-color: rgb(52, 73, 94) } 375 #myCarousel .list-group .active, #myCarousel .list-group-item:hover { 376 background-color: rgb(52, 73, 94) } 377 #myCarousel .list-group .active h2, #myCarousel .list-group-item:hover h2{ 378 color: rgb(250, 250, 250); 379 } 380 381 /* Additional Settings */ 382 .well blockquote { 383 background: rgb(255, 255, 255) none repeat scroll 0 0; 384 border-color: rgb(238, 238, 238); 385 color: rgb(41, 41, 41); 386 padding: 10px 20px; 387 } 388 .account-form-box form table tr td table { 389 background-color: transparent!important; 390 border: none!important; 391 } 392 393 .account-form-box form table tr td table td { 394 background-color: transparent!important; 395 color: rgb(41, 41, 41)!important; 396 border: none!important; 397 } 398 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{ 399 color: rgb(41, 41, 41)!important; 400 } 401 .table.dataTable > thead > tr > th, .table > thead > tr > th, .fr-view table th, .fr-view table tfoot td { 402 border-color: rgba(85, 85, 85,0.1); 403 background-color: rgb(238, 238, 238); 404 color: rgb(85, 85, 85);
405 font-weight:600; 406 border-left: none; 407 border-bottom-width: 1px; 408 } 409 .table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, table.dataTable.no-footer { 410 border-color: rgba(85, 85, 85,0.1); 411 } 412 .table > tfoot > tr > td:not(:last-child) { 413 border-right: 1px solid rgba(85, 85, 85,0.1); 414 } 415 table.dataTable.no-footer, table.dataTable { 416 border: 1px solid rgb(238, 238, 238)!important; 417 } 418 .table-view li:not(.table-display-about_me li, .froala-data li), .table-view .table-view-group > div { 419 border-top:1px solid rgb(238, 238, 238); 420 } 421 .table-view .table-view-group:last-child { 422 border-bottom:1px solid rgb(238, 238, 238); 423 } 424 table.dataTable tbody tr, .table-striped.dataTable, .table-striped, .fr-view .table-striped { 425 background-color: rgb(250, 250, 250)!important; 426 } 427 .table-striped.dataTable, .table-striped, .fr-view .table-striped { 428 border: 1px solid rgba(85, 85, 85,0.15); 429 border-collapse: separate; 430 overflow: hidden; 431 } 432 table#feature-body-datatable:has(.dropdown.open),table#digital-products-transactions:has(.dropdown.open), table#example:has(.dropdown.open) { 433 overflow: visible; 434 } 435 .table-striped.dataTable tbody > tr:nth-of-type(2n+1),.table-striped > tbody > tr:nth-of-type(2n+1) { 436 background-color: rgba(255, 255, 255,0.5)!important; 437 } 438 .nav-tabs, hr, .account-menu-title, .modal-header { 439 border-color: rgb(238, 238, 238); 440 } 441 .sidemenu_panel .list-group-item{ 442 background-color: transparent!important; 443 color: rgb(41, 41, 41)!important; 444 } 445 .img-thumbnail { 446 background-color: rgb(250, 250, 250)!important; 447 border: 1px solid rgb(238, 238, 238); 448 } 449 .member_admin_sidemenu p, .member_admin_sidemenu h3 { 450 color: rgb(41, 41, 41)!important; 451 } 452 .close { 453 color: rgb(41, 41, 41); 454 opacity: 1; 455 } 456 .member_results_header h1, .content_w_sidebar.feature-search h1, .feature_results_header h1 { 457 font-size:36px; 458 display: block; 459 } 460 .member_results_header h2, .feature_results_header h2 { 461 font-size:30px; 462 display: block; 463 } 464 .homepage_settings { 465 padding-top: 60px; 466 padding-bottom: 90px; 467 } 468 @media (max-width: 768px) { .mobile_website_logo .visible-xs {display: block !important;}} 469 @media only screen and (max-width: 768px) { 470 .header-right-container .website-search, .header-right-container .list-social-links {display: none;} 471 .member-profile-header .favorite {float:none} 472 } 473 474 475 @media only screen and (max-width: 1100px) { 476 } 477 .views > i.fa.activeView, .views > i.fa:hover { 478 background-color: rgb(41, 41, 41); 479 color: rgb(255, 255, 255); 480 } 481 .views > i.fa { 482 background-color: rgba(41, 41, 41,0.1); 483 color: rgb(41, 41, 41); 484 } 485 .ui-rangeSlider-label { 486 background-color: rgb(0, 0, 0)!important; 487 color: rgb(255, 255, 255)!important; 488 } 489 .pricing_menu li .title { 490 background: rgb(51, 122, 183); 491 color: rgb(255, 255, 255); 492 } 493 p.account-tip{ 494 color: rgb(41, 41, 41); 495 } 496 .circled_number { 497 background: rgb(52, 73, 94); 498 color: rgb(255, 255, 255); 499 } 500 .pic { 501 background-color: rgba(52, 73, 94,0.8); 502 color: rgb(255, 255, 255); 503 background-repeat: no-repeat; 504 background-position: center; 505 } 506 .pic .pic-caption { 507 background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%,rgba(52, 73, 94,0.85) 50%); 508 color: rgb(255, 255, 255); 509 } 510 .slick-prev-fa i, .slick-next-fa i{ 511 color: rgb(52, 73, 94); 512 } 513 .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 { 514 background-color: rgb(250, 250, 250); 515 border-color: rgb(238, 238, 238); 516 color: rgb(41, 41, 41); 517 } 518 .nav-pills > li.active a, .nav-pills > li > a:hover { 519 background-color: rgb(51, 122, 183)!important; 520 border-color: rgb(51, 122, 183)!important; 521 color: rgb(255, 255, 255)!important; 522 } 523 .sidemenu_panel .panel-heading { 524 color: rgb(41, 41, 41)!important; 525 background-color: rgb(250, 250, 250)!important; 526 } 527 .member-profile-tabs .nav-tabs > li:not(.active) > a, .login-register-tabs.nav-tabs > li:not(.active) > a, .nav-tabs > li:not(.active) > a { 528 background: rgba(250, 250, 250,0.5); 529 color: #5f5f5f; 530 } 531 .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 { 532 background: rgba(250, 250, 250,1); 533 color: rgb(41, 41, 41); 534 }
535 .author-snapshot .well:not(.well.bg-default) { 536 background-color: rgb(250, 250, 250)!important; 537 border-color: rgb(238, 238, 238)!important; 538 color: rgb(41, 41, 41)!important; 539 } 540 .nav-tabs>li>a, .nav-pills>li>a { 541 font-weight: 600; 542 } 543 .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{ 544 color: rgba(41, 41, 41,0.5); 545 } 546 #service_areas_table td,#service_areas_table_wrapper label, #service_areas_table_info, #service_areas_table_paginate > a { 547 color: rgb(41, 41, 41) !important; 548 } 549 .popover { 550 background-color: rgb(250, 250, 250); 551 border-color: rgb(250, 250, 250); 552 padding:0; 553 text-align:left; 554 } 555 .popover-title, .popover-content { 556 background-color: rgb(250, 250, 250); 557 color: rgb(41, 41, 41); 558 border-color: rgb(250, 250, 250); 559 text-align:left; 560 } 561 .popover-content { 562 background-color: rgba(41, 41, 41,.05); 563 border-radius: 4px; 564 transform: translate(-1px, -1px); 565 width: calc(100% + 2px); 566 margin-bottom: -2px; 567 } 568 .popover.left > .arrow::after { 569 border-left-color: rgb(250, 250, 250)!important; 570 } 571 .popover.right > .arrow::after { 572 border-right-color: rgb(250, 250, 250)!important; 573 } 574 .popover.bottom > .arrow::after { 575 border-bottom-color: rgb(250, 250, 250)!important; 576 } 577 .popover.top > .arrow::after { 578 border-top-color: rgb(250, 250, 250)!important; 579 } 580 .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{ 581 background-color: rgb(255, 255, 255); 582 color: rgb(41, 41, 41); 583 } 584 .module h1, .module h2, .module h3, .module h4, .module h5 { 585 color: rgb(62, 62, 62); 586 } 587 .module p:not(.fr-box.fr-basic .fr-element p) { 588 color: rgb(41, 41, 41); 589 } 590 .pagination>.active>a { 591 border-color: rgba(255, 255, 255,0.2); 592 } 593 .pagination>.active>a { 594 color: rgb(255, 255, 255); 595 } 596 .pagination > .active > a:hover, .pagination > .active > a:focus { 597 border-color: rgba(255, 255, 255,0.2); 598 background-color: rgb(0, 0, 0); 599 color: rgb(255, 255, 255); 600 } 601 .pagination > li > a { 602 color: rgb(0, 0, 0); 603 border-color: rgba(0, 0, 0,0.2); 604 background-color: rgb(255, 255, 255); 605 } 606 .pagination > li > a:focus, .pagination > li > a:hover, .pagination > li > span:focus, .pagination > li > span:hover { 607 background-color: rgb(0, 0, 0); 608 border-color: rgb(0, 0, 0); 609 color: rgb(255, 255, 255); 610 } 611 612 .nav-pills.nav-wizard > li a, .nav-pills.nav-wizard > li a:hover{ 613 background-color: rgb(250, 250, 250)!important; 614 color: rgb(41, 41, 41)!important; 615 } 616 .member_wizard2 li.incomplete a, .member_wizard2 li.incomplete a:hover { 617 background-color: rgb(240, 173, 78)!important; 618 border-color: rgb(240, 173, 78); 619 color: rgb(255, 255, 255); 620 } 621 .nav-pills.nav-wizard > li.active a, .nav-pills.member_wizard > li.active:hover a { 622 background-color: rgb(51, 122, 183)!important; 623 color: rgb(255, 255, 255)!important; 624 } 625 .member_wizard2 li.completed a, .member_wizard2 li.completed a:hover { 626 background-color: rgb(92, 184, 92)!important; 627 border-color: rgb(92, 184, 92); 628 color: rgb(255, 255, 255); 629 } 630 631 .nav-pills.nav-wizard > li.active .nav-arrow, .nav-pills.nav-wizard > li.active:hover .nav-arrow { 632 border-color: transparent transparent transparent rgb(51, 122, 183)!important; 633 } 634 .nav-pills.nav-wizard > li.active .nav-wedge, .nav-pills.nav-wizard > li.active:hover .nav-wedge{ 635 border-color: rgb(51, 122, 183) rgb(51, 122, 183) rgb(51, 122, 183) transparent!important; 636 } 637 638 li.completed .nav-wedge, .nav-pills.nav-wizard > li.completed:hover .nav-wedge { 639 border-color: rgb(92, 184, 92) rgb(92, 184, 92) rgb(92, 184, 92) transparent!important; 640 } 641 642 li.incomplete .nav-wedge, .nav-pills.nav-wizard > li.incomplete:hover .nav-wedge { 643 border-color: rgb(250, 250, 250) rgb(250, 250, 250) rgb(250, 250, 250) transparent!important; 644 } 645 646 .nav-pills.member_wizard > li.completed a, .nav-pills.member_wizard > li.completed a:hover { 647 background-color: rgb(92, 184, 92)!important; 648 color: rgb(255, 255, 255)!important; 649 } 650 651 .member_wizard2 li { 652 color: rgb(255, 255, 255); 653 border-right: 10px solid rgb(255, 255, 255); 654 } 655 656 li.completed .nav-arrow, .nav-pills.nav-wizard > li.completed:hover .nav-arrow { 657 border-color: transparent transparent transparent rgb(92, 184, 92)!important; 658 } 659 660 li.incomplete .nav-arrow, .nav-pills.nav-wizard > li.incomplete:hover .nav-arrow{ 661 border-color: transparent transparent transparent rgb(250, 250, 250)!important; 662 } 663 664 /* Default Colors */ 665 .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 { 666 background-color: rgb(51, 122, 183); 667 border-color: rgb(51, 122, 183); 668 color: rgb(255, 255, 255); 669 } 670 .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 { 671 background-color: rgba(51, 122, 183,0.95); 672 border-color: rgb(51, 122, 183); 673 color: rgb(255, 255, 255); 674 } 675 .panel-primary {
676 background-color: #e0ebf4; 677 border-color: rgb(51, 122, 183); 678 } 679 .bg-primary,.progress-bar-primary,.module p.bg-primary,.label-primary,.badge-primary,.pricing_menu .title.bg-primary, .well .well.bg-primary, .module .well.bg-primary, .well .module.bg-primary,.tab-content .module.bg-primary,.tab-content .well.bg-primary { 680 background-color: rgb(51, 122, 183); 681 color: rgb(255, 255, 255); 682 } 683 .bg-primary .badge { 684 background-color:rgb(255, 255, 255); 685 color: rgb(51, 122, 183); 686 } 687 .btn-primary.btn-outline { 688 background: transparent; 689 color: rgb(51, 122, 183); 690 transition: all 250ms ease-in-out 0ms; 691 } 692 .btn-primary.btn-outline:hover { 693 background: rgba(51, 122, 183,0.1); 694 color: rgb(51, 122, 183); 695 } 696 .alert-primary { 697 background-color:rgba(51, 122, 183,0.7); 698 border-color:rgba(51, 122, 183,0.2); 699 color: rgba(255, 255, 255,0.9); 700 } 701 .alert-primary-subtle, .label-primary-subtle, .badge-primary-subtle { 702 background-color: #d6e4f1; 703 border-color: #d6e4f1; 704 color: rgb(51, 122, 183); 705 color: color-mix(in srgb, rgb(51, 122, 183) 50%, rgb(41, 41, 41) 50%); 706 } 707 .btn.dropdown-toggle.btn-primary *, .btn-primary a { 708 color: rgb(255, 255, 255); 709 } 710 .text-primary{ 711 color: rgb(51, 122, 183); 712 } 713 .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 { 714 background-color: rgb(91, 192, 222); 715 border-color: rgb(91, 192, 222); 716 color: rgb(255, 255, 255); 717 } 718 .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 { 719 background-color: rgba(91, 192, 222,0.95); 720 border-color: rgb(91, 192, 222); 721 color: rgb(255, 255, 255); 722 } 723 .panel-info { 724 background-color: #e6f6fa; 725 border-color: rgb(91, 192, 222); 726 } 727 .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 { 728 background-color: rgb(91, 192, 222); 729 color: rgb(255, 255, 255); 730 } 731 .bg-info .badge { 732 background-color:rgb(255, 255, 255); 733 color: rgb(91, 192, 222); 734 } 735 .btn-info.btn-outline { 736 background: transparent; 737 color: rgb(91, 192, 222); 738 transition: all 250ms ease-in-out 0ms; 739 } 740 .btn-info.btn-outline:hover { 741 background: rgba(91, 192, 222,0.1); 742 color: rgb(91, 192, 222); 743 } 744 .alert-info { 745 background-color:rgba(91, 192, 222,0.7); 746 border-color:rgba(91, 192, 222,0.2); 747 color: rgba(255, 255, 255,0.9); 748 } 749 .alert-info-subtle, .label-info-subtle, .badge-info-subtle { 750 background-color: #def2f8; 751 border-color: #def2f8; 752 color: rgb(91, 192, 222); 753 color: color-mix(in srgb, rgb(91, 192, 222) 50%, rgb(41, 41, 41) 50%); 754 } 755 .btn.dropdown-toggle.btn-info *, .btn-info a { 756 color: rgb(255, 255, 255); 757 } 758 .text-info{ 759 color: rgb(91, 192, 222); 760 } 761 .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 { 762 background-color: rgb(92, 184, 92); 763 border-color: rgb(92, 184, 92); 764 color: rgb(255, 255, 255); 765 } 766 .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 { 767 background-color: rgba(92, 184, 92,0.95); 768 border-color: rgb(92, 184, 92); 769 color: rgb(255, 255, 255); 770 } 771 .panel-success { 772 background-color: #e7f4e7; 773 border-color: rgb(92, 184, 92); 774 } 775 .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 { 776 background-color: rgb(92, 184, 92); 777 color: rgb(255, 255, 255); 778 } 779 .bg-success .badge { 780 background-color: rgb(255, 255, 255); 781 color: rgb(92, 184, 92); 782 } 783 .btn-success.btn-outline { 784 background: transparent; 785 color: rgb(92, 184, 92); 786 transition: all 250ms ease-in-out 0ms; 787 } 788 .btn-success.btn-outline:hover { 789 background: rgba(92, 184, 92,0.1); 790 color: rgb(92, 184, 92); 791 } 792 .alert-success { 793 background-color:rgba(92, 184, 92,0.7); 794 border-color:rgba(92, 184, 92,0.2); 795 color: rgba(255, 255, 255,0.9); 796 } 797 .alert-success-subtle, .label-success-subtle, .badge-success-subtle { 798 background-color: #def1de; 799 border-color: #def1de; 800 color: rgb(92, 184, 92); 801 color: color-mix(in srgb, rgb(92, 184, 92) 50%, rgb(41, 41, 41) 50%); 802 } 803 .btn.dropdown-toggle.btn-success *, .btn-success a { 804 color: rgb(255, 255, 255); 805 } 806 .text-success{ 807 color: rgb(92, 184, 92); 808 } 809 .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 { 810 background-color: rgb(240, 173, 78); 811 border-color: rgb(240, 173, 78); 812 color: rgb(255, 255, 255); 813 } 814 .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 { 815 background-color: rgba(240, 173, 78,0.95); 816 border-color: rgb(240, 173, 78); 817 color: rgb(255, 255, 255); 818 } 819 .panel-warning { 820 background-color: #fdf3e4; 821 border-color: rgb(240, 173, 78); 822 } 823 .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 { 824 background-color: rgb(240, 173, 78); 825 color: rgb(255, 255, 255); 826 } 827 .bg-warning .badge { 828 background-color: rgb(255, 255, 255); 829 color: rgb(240, 173, 78); 830 } 831 .btn-warning.btn-outline { 832 background: transparent; 833 color: rgb(240, 173, 78); 834 transition: all 250ms ease-in-out 0ms; 835 } 836 .btn-warning.btn-outline:hover { 837 background: rgba(240, 173, 78,0.1); 838 color: rgb(240, 173, 78); 839 } 840 .alert-warning { 841 background-color:rgba(240, 173, 78,0.7); 842 border-color:rgba(240, 173, 78,0.2); 843 color: rgba(255, 255, 255,0.9); 844 } 845 .alert-warning-subtle, .label-warning-subtle, .badge-warning-subtle { 846 background-color: #fcefdc; 847 border-color: #fcefdc; 848 color: rgb(240, 173, 78); 849 color: color-mix(in srgb, rgb(240, 173, 78) 50%, rgb(41, 41, 41) 50%); 850 } 851 .btn.dropdown-toggle.btn-warning *, .btn-warning a { 852 color: rgb(255, 255, 255); 853 } 854 .text-warning { 855 color: rgb(240, 173, 78); 856 } 857 .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 { 858 background-color: rgb(217, 83, 79); 859 border-color: rgb(217, 83, 79); 860 color: rgb(255, 255, 255); 861 } 862 .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 { 863 background-color: rgba(217, 83, 79,0.95); 864 border-color: rgb(217, 83, 79); 865 color: rgb(255, 255, 255); 866 } 867 .has-error .form-control { 868 border-color: rgb(217, 83, 79); 869 } 870 .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 { 871 background: rgb(217, 83, 79); 872 color: rgb(255, 255, 255) !important; 873 } 874 .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 { 875 color: rgb(217, 83, 79); 876 } 877 .panel-danger { 878 background-color: #f9e5e5; 879 border-color: rgb(217, 83, 79); 880 } 881 .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 { 882 background-color: rgb(217, 83, 79); 883 color: rgb(255, 255, 255); 884 } 885 .bg-danger .badge { 886 background-color: rgb(255, 255, 255); 887 color: rgb(217, 83, 79); 888 } 889 .btn-danger.btn-outline { 890 background: transparent; 891 color: rgb(217, 83, 79); 892 transition: all 250ms ease-in-out 0ms; 893 } 894 .btn-danger.btn-outline:hover { 895 background: rgba(217, 83, 79,0.1); 896 color: rgb(217, 83, 79); 897 } 898 .alert-danger { 899 background-color:rgba(217, 83, 79,0.7); 900 border-color:rgba(217, 83, 79,0.2); 901 color: rgba(255, 255, 255,0.9); 902 } 903 .alert-danger-subtle, .label-danger-subtle, .badge-danger-subtle { 904 background-color: #f7dddc; 905 border-color: #f7dddc; 906 color: rgb(217, 83, 79); 907 color: color-mix(in srgb, rgb(217, 83, 79) 50%, rgb(41, 41, 41) 50%); 908 } 909 .btn.dropdown-toggle.btn-danger *, .btn-danger a { 910 color: rgb(255, 255, 255); 911 } 912 .text-danger{ 913 color: rgb(217, 83, 79); 914 } 915 .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
915s, 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 { 916 background-color: rgb(238, 238, 238); 917 border-color: rgb(238, 238, 238); 918 color: rgb(85, 85, 85); 919 } 920 .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 { 921 background-color: rgba(238, 238, 238,0.95); 922 border-color: rgb(238, 238, 238); 923 color: rgb(85, 85, 85); 924 } 925 .sidemenu_panel .panel-default .panel_heading { 926 background-color: rgb(238, 238, 238)!important; 927 border-color: rgb(238, 238, 238)!important; 928 color: rgb(85, 85, 85)!important; 929 } 930 .panel-default .panel-heading, .member_accounts .panel-default > .panel-heading, .panel-default.categories-panel .panel-heading { 931 932 box-shadow: 0 0 1000px 0 rgba(85, 85, 85,0.02) inset; 933 background-color: rgb(238, 238, 238); 934 } 935 .panel-default, .member_accounts .panel-default { 936 937 background-color: rgba(238, 238, 238,0.15); 938 border-color: #fdfdfd; 939 border-color: color-mix(in srgb,rgb(238, 238, 238) 100%,rgba(238, 238, 238) 10%); 940 } 941 .member_admin_sidemenu .panel-default { 942 background-color: transparent; 943 } 944 .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 { 945 background-color: rgb(238, 238, 238); 946 color: rgb(85, 85, 85); 947 } 948 .bg-default .badge { 949 background-color: rgb(85, 85, 85); 950 color: rgb(238, 238, 238); 951 } 952 .btn-default.btn-outline { 953 background: transparent; 954 color: rgb(238, 238, 238); 955 transition: all 250ms ease-in-out 0ms; 956 } 957 .btn-default.btn-outline:hover { 958 background: rgba(238, 238, 238,0.1); 959 color: rgb(238, 238, 238); 960 } 961 .alert-default { 962 background-color:rgb(238, 238, 238); 963 border-color:rgb(238, 238, 238); 964 color: rgb(85, 85, 85); 965 } 966 .alert-default-subtle, .label-default-subtle, .badge-default-subtle { 967 background-color:rgba(238, 238, 238,0.5); 968 border-color: rgba(238, 238, 238,0.5); 969 color: rgb(85, 85, 85); 970 color: color-mix(in srgb, rgb(85, 85, 85) 50%, rgb(41, 41, 41) 50%); 971 } 972 .btn.dropdown-toggle.btn-default *, .btn-default a { 973 color: rgb(85, 85, 85); 974 } 975 .text-default{ 976 color: rgb(238, 238, 238); 977 } 978 .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 { 979 background-color: rgb(41, 41, 41); 980 border: 1px solid rgb(41, 41, 41); 981 color: rgb(255, 255, 255); 982 } 983 .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 { 984 background-color: rgba(41, 41, 41,0.95); 985 border-color: rgb(41, 41, 41); 986 color: rgb(255, 255, 255); 987 } 988 .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 { 989 background-color: rgb(41, 41, 41); 990 color: rgb(255, 255, 255); 991 } 992 .bg-secondary .badge { 993 background-color:rgb(255, 255, 255); 994 color: rgb(41, 41, 41); 995 } 996 .btn-secondary.btn-outline { 997 background: transparent; 998 color: rgb(41, 41, 41); 999 transition: all 250ms ease-in-out 0ms; 1000 } 1001 .btn-secondary.btn-outline:hover { 1002 background: rgba(41, 41, 41,0.1); 1003 color: rgb(41, 41, 41); 1004 } 1005 .panel-secondary { 1006 background-color: #dfdfdf; 1007 border-color: rgb(41, 41, 41); 1008 } 1009 .alert-secondary { 1010 background-color:rgb(41, 41, 41); 1011 border-color:rgb(41, 41, 41); 1012 color: rgb(255, 255, 255); 1013 } 1014 .alert-secondary-subtle, .label-secondary-subtle, .badge-secondary-subtle { 1015 background-color:rgba(41, 41, 41,0.8); 1016 border-color: rgba(41, 41, 41,0.5); 1017 color: rgb(255, 255, 255); 1018 } 1019 .btn-outline { 1020 -webkit-backdrop-filter: blur(5px); 1021 backdrop-filter: blur(5px); 1022 } 1023 .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 { 1024 background-color: rgb(255, 255, 255); 1025 border: 1px solid rgb(255, 255, 255); 1026 color: rgb(41, 41, 41); 1027 } 1028 .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 { 1029 background-color: rgba(255, 255, 255,0.95); 1030 border: 1px solid rgb(255, 255, 255); 1031 color: rgb(41, 41, 41); 1032 } 1033 .btn.btn-body.dropdown-toggle * { 1034 color: rgb(41, 41, 41) 1035 } 1036 .btn-body.dropdown-toggle + ul li, .daterangepicker .ranges { 1037 color: #333; 1038 } 1039 .bg-body { 1040 background: rgb(255, 255, 255); 1041 color: rgb(41, 41, 41); 1042 } 1043 .bg-content-box { 1044 background: rgb(250, 250, 250); 1045 color: rgb(41, 41, 41); 1046 } 1047 .bg-content-box-border { 1048 background: rgb(238, 238, 238); 1049 } 1050 .btn.dropdown-toggle.btn-secondary *, .btn-secondary a { 1051 color: rgb(255, 255, 255); 1052 } 1053 .text-secondary { 1054 color: rgb(41, 41, 41); 1055 } 1056 .text-body { 1057 color: rgb(255, 255, 255); 1058 } 1059 .feature-post #post-content .alert-secondary.btn-block, .feature-search .img_section .alert-secondary.btn-block, .search_result .img_section .alert-secondary { 1060 border-radius: 10px; 1061 background-color: rgba(41, 41, 41,0.2); 1062 } 1063 1064 /* Footer Newsletter Row */ 1065 .newsletter_row .alert { 1066 color: rgb(255, 255, 255); 1067 } 1068 .newsletter_row { 1069 background-color: rgb(52, 73, 94); 1070 color: rgb(255, 255, 255); 1071 } 1072 .newsletter_row input[type="submit"],.newsletter_footer_button { 1073 background-color: rgba(94, 183, 187,0.97); 1074 color: rgb(255, 255, 255); 1075 border-color: rgb(94, 183, 187); 1076 } 1077 .newsletter_row input[type="submit"]:hover,.newsletter_row input[type="submit"]:focus,.newsletter_footer_button:hover,.newsletter_footer_button:focus { 1078 background-color: rgb(94, 183, 187); 1079 color: rgb(255, 255, 255); 1080 } 1081 .newsletter_button_left { 1082 border-right: 1px solid rgba(255, 255, 255,0.2); 1083 } 1084 .newsletter_button_right { 1085 border-left: 1px solid rgba(255, 255, 255,0.2); 1086 } 1087 .newsletter_row small.help-block { 1088 background: rgb(255, 255, 255); 1089 margin-top: -5px; 1090 float: left; 1091 padding: 8px; 1092 border-radius: 1px; 1093 color: rgb(52, 73, 94); 1094 text-transform: capitalize; 1095 } 1096 .newsletter_row .has-success .checkbox,.newsletter_row .has-error .checkbox{ 1097 color: rgb(255, 255, 255); 1098 } 1099 @media only screen and (max-width: 767px) { 1100 .newsletter_button_right,.newsletter_button_left{ 1101 border: none; 1102 margin: 5px 0; 1103 } 1104 } 1105 1106 /* Font Sizes */ 1107 1108 .navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > span { 1109 font-size: 16px; 1110 } 1111 .header .logo { 1112 font-size: 33px; 1113 } 1114 .homepage_title h1, .homepage_settings h1 { 1115 letter-spacing: -1px; 1116 font-size: 40px; 1117 margin-bottom: 20px; 1118 } 1119 @media only screen and (max-width: 768px) { 1120 .homepage_title h1, .homepage_settings h1 {margin-bottom: 15px;} 1121 } 1122 .homepage_settings h2 { 1123 font-size: 25px; 1124 } 1125 1126 .ui-rangeSlider-bar{ 1127 background: rgb(94, 183, 187)!important; 1128 } 1129 1130 1131 1132 @media only screen and (max-width: 1024px){ 1133 .modal {margin-top: 40px;} 1134 } 1135 @media only screen and (max-width: 768px){ 1136 .modal {margin-top: 60px;} 1137 } 1138 1139 /* Calendar Styles */ 1140 1141 #cal-slide-content { 1142 color: rgb(85, 85, 85)!important; 1143 background-color: rgb(238, 238, 238)!important; 1144 -webkit-box-shadow: none!important; 1145 box-shadow: none!important; 1146 } 1147 #cal-slide-content a.event-item { 1148 color: rgb(85, 85, 85)!important; 1149 font-weight:bold!important; 1150 } 1151 #cal-slide-content a.event-item small { 1152 display: inline-block; 1153 } 1154 .cal-month-box, .cal-year-box, .cal-week-box { 1155 border: 1px solid rgb(238, 238, 238)!important; 1156 } 1157 .cal-year-box .row-fluid, .cal-month-box .cal-row-fluid { 1158 border-bottom: 1px solid rgb(238, 238, 238)!important; 1159 } 1160 .cal-year-box [class*="span"], .cal-month-box [class*="cal-cell"] { 1161 border-right: 1px solid rgb(238, 238, 238)!important; 1162 } 1163 .cal-year-box .row-fluid, .cal-row-fluid, #cal-day-box .cal-day-hour:nth-child(odd) { 1164 background-color: rgb(255, 255, 255)!important; 1165 } 1166 .cal-month-day span:not(.pull-right):not(.events-count-label):not(.events-label) { 1167 color: rgb(85, 85, 85)!important; 1168 } 1169 .cal-day-today span[data-cal-date] { 1170 color: rgb(41, 41, 41)!important; 1171 } 1172 .cal-year-box .row-fluid [class*="span"]:last-child, .cal-month-box .cal-row-fluid [class*="cal-cell"]:last-child { 1173 border: 0!important; 1174 } 1175 .cal-row-head { 1176 background: rgb(250, 250, 250)!important; 1177 } 1178 .day-highlight:hover, .day-highlight { 1179 background-color: rgb(238, 238, 238)!important; 1180 } 1181 .cal-event-list .event.pull-left { 1182 background-color: rgb(41, 41, 41)!important; 1183 opacity: 0.4; 1184 margin-top: 7px!important; 1185 } 1186 .cal-day-today { 1187 background-color: rgb(238, 238, 238)!important; 1188 } 1189 #cal-day-tick { 1190 border: 1px solid rgb(238, 238, 238)!important; 1191 background-color: rgb(238, 238, 238)!important; 1192 } 1193 .cal-day-weekend span[data-cal-date]{
1194 color: rgb(41, 41, 41)!important; 1195 } 1196 .well, .member_profile .tab-content, .corner_caption,.module,.img-rounded,.nav-tabs *,input,.input-group-sm > .form-control, .input-group-sm > .input-group-addon, textarea,select,.header ul.nav.navbar-nav li ul,.progress, .alert, .pagination, .page-item:first-child .page-link, .page-item:last-child .page-link, .views > i.fa, .ui-rangeSlider-label, .pic, .panel, .panel-heading, .popover, .pricing_menu li .title, .form-control, .select2-choice, .form-group .select2-dropdown-open.select2-drop-above [class^=select2-choice], .select2-drop.select2-drop-above, .select2-drop, .scrollup, .input-group-addon, .img-thumbnail, .current-photo-container img, .current-logo-container img,.favorite,p.account-tip,.modal-content,.input_wrapper input.form-control,.input-group .input_wrapper input.form-control,.input-group-sm .input_wrapper input.form-control,.input-group-lg .input_wrapper input.form-control,.pricing_menu li ul, .img-rounded img.img-rounded { 1197 border-radius:0px !important; 1198 } 1199 .rsDefault, .rsDefault .rsOverflow, .rsDefault .rsSlide, .rsDefault .rsVideoFrameHolder, .rsDefault .rsThumbs { 1200 border-radius: 10px; 1201 background: #151515!important; 1202 } 1203 .img_section .no-radius-bottom + .alert-secondary .rsDefault .rsSlide, .img_section .no-radius-bottom + .alert-secondary .rsDefault .rsOverflow { 1204 border-radius:0; 1205 } 1206 1207 #first_container .favorite, #first_container .fa.favorite { 1208 color: #aaa; 1209 background: rgb(238, 238, 238); 1210 border: 1px solid rgb(238, 238, 238); 1211 white-space:nowrap!important; 1212 height:24px; 1213 padding:0 6px; 1214 border-radius:8px; 1215 } 1216 #first_container .favorite span, #first_container .fa.favorite span { 1217 font-family: 'Lato'; 1218 white-space:nowrap!important; 1219 } 1220 #first_container .favoriteActive:not(.favorite.comments-count-badge), #first_container .fa.favoriteActive:not(.favorite.comments-count-badge .fa) { 1221 color: #ef4770; 1222 } 1223 #first_container .favorite::after, #first_container .fa.favorite::after { 1224 font-family: 'Lato'; 1225 margin-left: 3px; 1226 } 1227 #first_container .favorite span, #first_container .fa.favorite span{ 1228 padding-left: 4px; 1229 font-family: 'Lato'; 1230 font-size: 11px; 1231 letter-spacing:.5px; 1232 top:-1px; 1233 position:relative; 1234 font-weight:700; 1235 } 1236 #first_container .favorite span:empty, #first_container .fa.favorite span:empty { 1237 padding: 0; 1238 } 1239 #first_container .favorite .bookmark-number, #first_container .fa.favorite .bookmark-number { 1240 padding: 1px 0; 1241 border-radius: 100px; 1242 display: inline-block; 1243 font-weight: bold; 1244 min-width: 15px; 1245 font-size: .8em; 1246 vertical-align: bottom; 1247 height: 15px; 1248 line-height: 13px; 1249 margin-left: 3px; 1250 text-align: center; 1251 } 1252 #first_container .favorite.favoriteActive .bookmark-number:not(.comments-count-badge .bookmark-number), #first_container .fa.favorite.favoriteActive .bookmark-number { 1253 background: #ef4770; 1254 color: #fff; 1255 } 1256 1257 span.checkbox_value::after { 1258 content: ', '; 1259 } 1260 1261 span.checkbox_value:last-child::after { 1262 content: ''; 1263 } 1264 1265 .member_results .grid_element{ 1266 position:relative; 1267 overflow:hidden; 1268 display: inline-block; 1269 width:100%; 1270} 1271.member_results .grid_element::before { 1272 position: absolute; 1273 top: 24px; 1274 text-align: center; 1275 width: 200px; 1276 left: -62px; 1277 transform: rotate(-45deg); 1278 -webkit-transform: rotate(-45deg); 1279 z-index: 1; 1280 line-height: 1.2em; 1281 padding: 6px 0; 1282 font-weight: bold; 1283 letter-spacing: 1px; 1284} 1285@media only screen and (max-width: 767px) { 1286 .member_results .grid-container > hr { 1287 border-color: transparent; 1288 } 1289 .member_results .grid_element{ 1290 overflow:visible; 1291 } 1292 .member_results .grid_element::before { 1293 top: -19px!important; 1294 transform: rotate(0deg); 1295 -webkit-transform: rotate(0deg); 1296 font-size: 10px !important; 1297 letter-spacing: 0; 1298 width: auto; 1299 padding: 3px 6px; 1300 } 1301} 1302 1303 1304 1305 1306
1307 /* Homepage Sections Background Color Logic */ 1308 1309 1310 .homepage-section-1 { 1311 padding: 40px 0 40px; 1312 } 1313 1314 1315 .homepage-section-2 { 1316 padding: 20px 0 40px; 1317 } 1318 1319 1320 .homepage-section-2 { 1321 background: rgb(238, 238, 238); 1322 } 1323 1324 1325 .homepage-section-3 { 1326 padding: 40px 0 60px; 1327 } 1328 1329 1330 .homepage-section-3 { 1331 background: rgb(255, 255, 255); 1332 } 1333 1334 1335 .homepage-section-4 { 1336 padding: 0px 0 80px; 1337 } 1338 1339 1340 .homepage-section-4 { 1341 background: rgb(238, 238, 238); 1342 } 1343 1344 1345 .homepage-section-5 { 1346 padding: 40px 0 40px; 1347 } 1348 1349 1350 .homepage-section-5 { 1351 background: rgb(255, 255, 255); 1352 } 1353 1354 1355 .homepage-section-6 { 1356 padding: 40px 0 40px; 1357 } 1358 1359 1360 .homepage-section-6 { 1361 background: rgb(238, 238, 238); 1362 } 1363 1364 1365 .homepage-section-7 { 1366 padding: 40px 0 40px; 1367 } 1368 1369 1370 .homepage-section-8 { 1371 padding: 40px 0 40px; 1372 } 1373 1374 1375 .homepage-section-9 { 1376 padding: 40px 0 40px; 1377 } 1378 1379 1380 .homepage-section-10 { 1381 padding: 40px 0 40px; 1382 } 1383 1384 1385 .homepage-section-11 { 1386 padding: 40px 0 40px; 1387 } 1388 1389 1390 .homepage-section-12 { 1391 padding: 40px 0 40px; 1392 } 1393 1394 1395 .homepage-section-13 { 1396 padding: 40px 0 40px; 1397 } 1398 1399 1400 .homepage-section-14 { 1401 padding: 40px 0 40px; 1402 } 1403 1404 1405 .homepage-section-15 { 1406 padding: 40px 0 40px; 1407 } 1408 1409 1410 /* Additional Settings */ 1411 1412 1413 /* Streaming Widgets Title Settings */ 1414 1415 .streaming-title { 1416 text-align: center; 1417 font-size: 44px; 1418 line-height:1.5em; 1419 font-weight: 300; 1420 font-family: 'Open Sans'; 1421 padding-bottom: 40px; 1422 } 1423 1424 @media only screen and (max-width: 990px) { 1425 .streaming-title { 1426 line-height:1.1em; 1427 } 1428 } 1429 1430 .streaming-title + hr { 1431 display: none; 1432 } 1433 1434 .homepage-join-module .module h2:first-of-type { 1435 color: rgb(0, 0, 0); 1436 } 1437 1438 .homepage-join-module .module{ 1439 background: rgb(227, 222, 222); 1440 border-color: rgb(238, 238, 238); 1441 } 1442 1443 .homepage-about-module .module h2:first-of-type { 1444 color: rgb(0, 0, 0); 1445 } 1446 1447 .homepage-about-module .module{ 1448 background: rgb(227, 222, 222); 1449 border-color: rgb(238, 238, 238); 1450 1451 } 1452 1453 .the-post-description > :is(h2, h3, h4, h5):not(:first-child) { 1454 font-weight: 600; 1455 margin-top: 20px; 1456 } 1457 1458 /* Keep: Ensure ul/ol respect padding and margins */ 1459 .the-post-description > :is(ul, ol) { 1460 display: flow-root; 1461 } 1462 .the-post-description li { 1463 margin-bottom: 8px; 1464 } 1465 1466 .btn:not(#refcode_submit):not(.input-group-btn .btn):not(.logo-preview-input):not(.cover-preview-input):not(.member_login):not(.img-circle):not(.submit_reply):not(.submit_comment):not(.view-more):not(.image-preview-input):not(.no-radius-bottom):not(.no-radius-top):not(.btn-facebook), .btn-sm:not(.img-circle):not(.view-more):not(.image-preview-input):not(.no-radius-bottom):not(.no-radius-top), .btn-xs:not(.img-circle):not(.view-more):not(.image-preview-input):not(.no-radius-bottom):not(.no-radius-top), button:not(.social_share_buttons button):not(.social_share_buttons a):not(#refcode_submit):not(.input-group-btn button), .btn-group-lg > .btn, .btn-lg, .btn-lg, .btn-xl, .input-group-sm > .input-group-btn > .btn, .favorite, .tags a, select#sid.input-lg, select#tid.input-lg, select#ttid.input-lg, select.combobox.input-lg, select#bd-chained.input-lg, select#category-chained.input-lg, select.infinite-chained.input-lg, select.subcategory-chained.input-lg, select.search-chained.input-lg, select#country-chained.input-lg, select#state-chained.input-lg, select#country-chained-2.input-lg, select#state-chained-2.input-lg, select#profession_id.input-lg, [name^="bd_phone_country_code"].input-lg, select.input-lg, select#sid, select#tid, select#ttid, select.combobox, select#bd-chained, select#category-chained, select.infinite-chained, select.subcategory-chained, select.search-ch
1466ained, select#country-chained, select#state-chained, select#country-chained-2, select#state-chained-2, select#profession_id, [name^="bd_phone_country_code"] { 1467 border-radius: 0px!important; 1468 } 1469 1470 .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 { 1471 box-shadow: 0 8px 8px -4px #0000001a,0 4px 4px -4px #0000001a; 1472 } 1473 1474 .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 { 1475 border-radius:1000px!important; 1476 } 1477 1478 .img-rounded img, img.fr-dib.img-rounded{ 1479 border-radius: 10px!important; 1480 } 1481 1482 /* Google Translate Module */ 1483 .skiptranslate{font-size:0} 1484 .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} 1485 .skiptranslate.goog-te-gadget span,img.goog-te-gadget-icon{display:none!important} 1486 .goog-te-gadget .goog-te-combo{margin-bottom:-4px} 1487 .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)} 1488 @media only screen and (max-width: 1100px) { 1489 .skiptranslate:not(.skiptranslate[style="display: none;"]){height:39px} 1490 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .header{margin-top:10px!important} 1491 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .announcement-bar{margin-top:10px} 1492 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .announcement-bar ~ .header{margin-top:0!important} 1493 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .header .mobile-main-menu{top:89px!important;height:calc(100% - 90px)!important} 1494 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .header .navbar{top:39px} 1495 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ #first_container .member_sidebar.open{top: 89px;} 1496 } 1497 @media only screen and (max-width: 767px) { 1498 .skiptranslate:not(.skiptranslate[style="display: none;"]) ~ .announcement-bar.hidden-xs ~ .header{margin-top:10px!important} 1499 } 1500 1501 1502 1503</style> 1504 1505<!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 65 bytes, lines 1505-1506
1505 1506<script async src="https://www.googletagmanager.com/gtag/js?id=
1506G-RDW8XPPPP1
vendor: 13 bytes, line 1506
1506"></script>
1507<script> 1508
vendor: 138 bytes, lines 1508-1512
1508window.dataLayer = window.dataLayer || []; 1509 function gtag(){dataLayer.push(arguments);} 1510 gtag('js', new Date()); 1511 1512 gtag('config', '
1512G-RDW8XPPPP1
vendor: 5 bytes, line 1512
1512');
1513</script>
1513 1514 <!-- ON-PAGE CSS FUNCTIONS --> 1515 <style type="text/css"> 1516 .claim-listing-button { 1517 font-size: 30px; /* Adjust size as needed */ 1518 padding: 15px 30px; /* Adjust padding as needed */ 1519} 1520 1521.dropdown-menu > li > a { 1522 line-height: 6; /* Adjust the value as needed */ 1523 padding: 20px 30px; /* Adjust padding for more space */ 1524} 1525 1526.member-search-full-name { 1527 font-size: 15px !important; 1528 font-weight: bold !important; 1529} </style> 1530 <div class="header"> 1531 <div class="container"> 1532 <div class="row header-main-row"> 1533 <style type='text/css'> .logo-text:has(.logo_title:empty) { 1534 display:none 1535} </style><div id="website_logo" class="col-md-5 xs-nopad xs-hpad sm-text-center xs-bmargin header-left-container"> 1536 <a class="logo logo-image inline-block vpad sm-nopad sm-tmargin" href="https://thebandbiz.com" title="thebandbiz.com"> 1537 <img width="500" height="170" src="/images/bandbizlogo2.png" alt="thebandbiz.com"> 1538 </a> 1539 <div class="clearfix"></div> 1540</div> 1541 <style type='text/css'> body input.tt-hint,body input.form-control.normal-autosuggest-input.tt-query { 1542 background-color: white !important; 1543} 1544.mini-nav:not(:has(li)) { 1545 display: none!important; 1546} 1547/* Parent Container - Main List */ 1548.mini-nav li:has(ul) { 1549 position: relative; 1550 border-radius: 8px 8px 0 0; 1551} 1552.mini-nav > li:has(ul) { 1553 padding-left: 0; 1554 padding-right: 0; 1555 background: rgb(247, 247, 247); 1556} 1557.mini-nav > li:has(ul) > a:not(.btn), .mini-nav > li:has(ul) > span { 1558 padding: 10px 15px; 1559 margin: 0!important; 1560} 1561.mini-nav > li:hover:has(ul), .mini-nav > li:hover:has(ul) { 1562 box-shadow: 0 -1px 3px rgba(41, 41, 41,0.25); 1563} 1564/* Parent Links */ 1565.mini-nav > li > a:not(.btn), .mini-nav > li > span:not(.btn) { 1566 display:inline-block; 1567 border-radius: 8px 8px 0 0; 1568} 1569.mini-nav > li:hover > a:not(.btn), .mini-nav > li:hover > span { 1570 background: rgb(247, 247, 247); 1571 display: inline-block; 1572 position: relative; 1573 z-index: 1000; 1574} 1575/* First Level Dropdowns */ 1576.mini-nav li ul { 1577 background: rgb(247, 247, 247); 1578 box-shadow: 0 0px 3px rgba(41, 41, 41,0.25), 0 5px 5px 5px rgba(41, 41, 41,0.05); 1579 text-align: left; 1580 display: none; 1581 border-radius: 0 8px 8px 8px; 1582 list-style: none; 1583 padding: 10px; 1584 position: absolute; 1585 white-space: nowrap; 1586 min-width: 130%; 1587 width: auto; 1588 top: 100%; 1589 left: 0; 1590 z-index: 999; 1591 margin-top: -1px; 1592} 1593.mini-nav li:hover > ul { 1594 display: block; 1595} 1596/* First Level Dropdown Items */ 1597.mini-nav li ul li { 1598 position: relative; 1599 display: block; 1600 width: 100%; 1601} 1602.mini-nav li ul li a, .mini-nav li ul li span { 1603 font-size: 12.95px !important; 1604 display: block; 1605 font-weight: 400; 1606 padding: 8px 12px; 1607 border-radius: 8px; 1608 text-decoration: none; 1609 width: 100%; 1610} 1611.mini-nav li ul li a:hover, .mini-nav li ul li span:hover { 1612 box-shadow: 0 0 0 25px rgba(41, 41, 41,0.05) inset; 1613} 1614/* Second Level Dropdowns */ 1615.mini-nav li ul li ul { 1616 display: none; 1617 position: absolute; 1618 top: 0; 1619 left: 100%; 1620 margin: 0; 1621 border-radius: 8px; 1622} 1623.mini-nav li ul li:hover > ul { 1624 display: block; 1625} 1626/* Edge Positioning - Last Child Dropdowns */ 1627.mini-nav > li:last-child ul { 1628 right: 0; 1629 left: auto; 1630 border-radius: 8px 0 8px 8px; 1631} 1632.mini-nav > li:last-child ul li ul { 1633 right: 100%; 1634 left: auto; 1635} 1636/* Flex Spacing Utility */ 1637.mini-nav.mini-nav-flex-spaced { 1638 display: flex; 1639 justify-content: space-between; 1640 align-items: center; 1641 flex-wrap: wrap; 1642 row-gap: 0;
1643} 1644.mini-nav.mini-nav-flex-spaced > li { 1645 flex: none; 1646 padding: 0; 1647 margin: 2px 0; 1648 order: 2; 1649} 1650.mini-nav.mini-nav-flex-spaced > li.header-member-account-links, 1651.mini-nav:has(li ul) > li.header-member-account-links { 1652 order: 1; 1653 margin-left: auto; 1654 width: 100%; 1655 margin-bottom: 10px; 1656} 1657.logged-in-member-header .mini-nav.mini-nav-flex-spaced.list-inline > li { 1658 line-height: 1em; 1659 min-height: 0; 1660} 1661@media (min-width: 992px) { 1662 .header-main-row { 1663 display: flex; 1664 align-items: center; 1665 flex-wrap: wrap; 1666 } 1667} 1668@media (max-width: 991px) { 1669 .mini-nav.mini-nav-flex-spaced { 1670 justify-content: center; 1671 } 1672 .mini-nav.mini-nav-flex-spaced > li { 1673 margin-left: 5px !important; 1674 margin-right: 5px !important; 1675 } 1676} </style><div class="col-md-7 text-right sm-text-center header-right-container nolpad xs-hpad"> 1677 <ul class="mini-nav nobmargin list-inline xs-nopad xs-tmargin tpad"> 1678 <li class='bmargin'><span id='link324' class='bmargin'> </span></li><li class='bmargin'><span id='link326' class='rpad bmargin'> <B>SEARCH THE SITE</B></span></li> </ul> 1679 <div class="clearfix"></div> 1680 <form action="/search_results" name="frm1" class="form-inline website-search"> 1681 <div class="input-group input-group-sm bmargin sm-autosuggest"> 1682 <span class="input-group-addon"><i class="fa fa-search"></i></span> 1683 <input type="text" 1684 placeholder="Name or Keyword" value="" name="q" 1685 class="member_search form-control input-sm" autocomplete="off"> 1686 </div> 1687 <div class="input-group input-group-sm bmargin"> 1688 <span class="input-group-addon"><i class="fa fa-location-arrow"></i></span> 1689 <input type="text" autocomplete="off" placeholder="City or Post Code" 1690 value="" id="location_google_maps_header" name="location_value" 1691 class="googleSuggest googleLocation form-control"> 1692 </div> 1693 <input type="submit" value="Search" class="btn btn-sm btn_search bmargin xs-btn-block bold"> 1694 </form> 1695 </div> 1696 </div> 1697 </div> 1698 <style type='text/css'> .mobile-main-menu .hasChildren span a { 1699 padding: 0px; 1700} 1701 1702.user_sidebar > img { 1703 width: 32px; 1704 height: 32px; 1705 position: absolute; 1706 z-index: 10; 1707 border-radius: 100px; 1708 top: -1px; 1709 object-fit: cover; 1710 left: -10px; 1711 background: rgb(238, 238, 238); 1712} 1713#member_sidebar_toggle img+.fa { 1714 display: none; 1715} 1716.main_menu, .user_sidebar, .compact-mobile-search { 1717 padding: 5px 8px; 1718 margin-right:0; 1719 min-height: 33.0333px; 1720 min-width: 38.116px; 1721} 1722.main_menu i, .user_sidebar i { 1723 font-size: 16px; 1724} 1725.navbar-nav li { 1726 float: none!Important; 1727} 1728.navbar-default{ 1729 -webkit-transition: all .6s ease-in-out; 1730 -moz-transition: all .6s ease-in-out; 1731 -o-transition: all .6s ease-in-out; 1732 transition: all .6s ease-in-out; 1733} 1734.transparent_menu { 1735 background-color: rgba(0, 0, 0,0.95)!important; 1736} 1737@media only screen and (max-width: 991px) { 1738 #popover {display: none} 1739} 1740@media only screen and (max-width: 1100px){ 1741 .mobile-main-menu{display:block!important} 1742 .navbar-toggle {display: block} 1743 #bs-main_menu .nav {display: none!important} 1744} 1745.mobile-main-menu { 1746 position: fixed; 1747 height: calc(100% - 50px)!important; 1748 width: 250px; 1749 background: rgb(0, 0, 0); 1750 z-index: 99999; 1751 right: -250px; 1752 top: 50px; 1753 display: none; 1754 -webkit-transition: all .6s ease-in-out; 1755 -moz-transition: all .6s ease-in-out; 1756 -o-transition: all .6s ease-in-out; 1757 transition: all .6s ease-in-out; 1758 overflow-y: auto!important; 1759 overflow-x: hidden!important; 1760} 1761.mobile-main-menu ul li i { 1762 color: rgb(255, 255, 255); 1763 cursor: pointer; 1764 float: right; 1765 padding: 13px; 1766} 1767.mobile-main-menu.opened{ 1768 right: 0px!important; 1769} 1770.mobile-main-menu ul li a, .mobile-main-menu ul li span { 1771 display: inline-block; 1772 float: left; 1773 -webkit-touch-callout: none; 1774 -webkit-user-select: none; 1775 -khtml-user-select: none; 1776 -moz-user-select: none; 1777 -ms-user-select: none; 1778 user-select: none; 1779 padding: 10px 0px; 1780 width: 80%; 1781 width: calc(100% - 40px); 1782} 1783.mobile-main-menu .sidebar-nav li ul { 1784 height: 0px; 1785 overflow: hidden; 1786 list-style: none; 1787 color: rgb(255, 255, 255); 1788 padding-left: 10px; 1789} 1790.mobile-main-menu .sidebar-nav li.sub_open > ul{ 1791 height: 100%; 1792} 1793.mobile-main-menu ul.sidebar-nav { 1794 position: absolute; 1795 width: 250px; 1796 margin: 0; 1797 padding: 0; 1798 list-style: none; 1799 font-size: 14px; 1800} 1801.mobile-main-menu .sidebar-nav > li { 1802 display: block; 1803 line-height: 20px; 1804 padding: 0 15px 0 20px; 1805} 1806.mobile-main-menu .sidebar-nav li a, .mobile-main-menu .sidebar-nav li span { 1807 text-decoration: none; 1808 color: rgb(255, 255, 255); 1809 padding-left:10px; 1810} 1811.mobile-main-menu .sidebar-nav li a i, .mobile-main-menu .sidebar-nav li span i { 1812 display: none; 1813} 1814 1815 </style><div class="mobile-main-menu"> 1816 <ul class="sidebar-nav"> 1817 <li class=''><a href='/about' id='link427'>ABOUT</a></li><li class=''><span id='link494'> CATEGORIES</span><ul><li class=''><a href='/wedding-bands' id='link495'>WEDDING BANDS</a></li><li class=''><a href='/dj-s' id='link496'>DJ'S</a></li><li class=''><a href='/ceremony-musicians' id='link497'>CEREMONY MUSICIANS</a></li><li class=''><a href='/solo-musicians' id='link498'>SOLO MUSICIANS</a></li><li class=''><a href='/bar-event' id='link499'>BAR | EVENT</a></li><li class=''><a href='/ethnic-bands' id='link500'>ETHNIC BANDS</a></li><li class=''><a href='/pianist' id='link501'>PIANTIST</a></li><li class=''><a href='/island-reggae' id='link502'>ISLAND REGGAE</a></li><li class=''><a href='/tribute-bands' id='link503'>TRIBUTE BANDS</a></li><li class=''><a href='/country' id='link505'>COUNTRY BANDS</a></li><li class=''><a href='/cover-bands' id='link506'>COVER BANDS</a></li><li class=''><a href='/jazz-bands' id='link507'>JAZZ BANDS</a></li><li class=''><a href='/destination' id='link504'>DESTINATION</a></li></ul></li><li class=''><a href='/join' id='link323'>GET LISTED TODAY!</a></li><li class=''><a href='/gear' id='link400'>GEAR FOR SALE</a><ul><li class=''><a href='/electric-guitars' id='link508'>GUITARS</a></li><li class=''><a href='/guitar-accessories' id='link509'>GUITAR ACCESSORIES</a></li><li class=''><a href='/bass-guitars' id='link510'>BASS GUITARS</a></li><li class=''><a href='/keyboards' id='link511'>KEYBOARDS</a></li><li class=''><a href='/drums-percussion' id='link512'>DRUMS & PERCUSSION</a></li><li class=''><a href='/band-orchestra' id='link513'>BAND & ORCHESTRA</a></li><li class=''><a href='https://guitar-center.pxf.io/MAZdv3' id='link514'>AMPS & PA</a></li><li class=''><a href='https://guitar-center.pxf.io/mOeyJq' id='link515'>DJ EQUIPMENT</a></li><li class=''><a href='https://guitar-center.pxf.io/Dy5dZo' id='link516'>LIGHTING</a></li><li class=''><a href='https://guitar-center.pxf.io/e1DZ5D' id='link517'>MICROPHONE</a></li><li class=''><a href='https://guitar-center.pxf.io/VxnDKa' id='link518'>PODCASTING</a></li><li class=''><a href='https://guitar-center.pxf.io/gO9X7O' id='link519'>RECORDING</a></li></ul></li><li class=''><a href='/blog' id='link393'>THE BAND BEAT</a></li> </ul> 1818</div> 1819<nav class="navbar navbar-default lockedonscroll"> 1820 <div class="container container-fluid"> 1821 1822 <div class="navbar-header"> 1823 <button type="button" class="navbar-toggle collapsed main_menu" data-toggle="collapse" aria-label="main_menu"> 1824 <i class="fa fa-bars fa-fw"></i> 1825 </button> 1826 1827 1828 1829 </div> 1830 1831 1832 <div class="tablet-menu collapse navbar-collapse nopad" id="bs-main_menu"> 1833 <ul class="tablet-menu-ul nav navbar-nav nav-justified"> 1834 <li class=''><a href='/about' id='link427'>ABOUT</a></li><li class=''><span id='link494'> CATEGORIES</span><ul><li class=''><a href='/wedding-bands' id='link495'>WEDDING BANDS</a></li><li class=''><a href='/dj-s' id='link496'>DJ'S</a></li><li class=''><a href='/ceremony-musicians' id='link497'>CEREMONY MUSICIANS</a></li><li class=''><a href='/solo-musicians' id='link498'>SOLO MUSICIANS</a></li><li class=''><a href='/bar-event' id='link499'>BAR | EVENT</a></li><li class=''><a href='/ethnic-bands' id='link500'>ETHNIC BANDS</a></li><li class=''><a href='/pianist' id='link501'>PIANTIST</a></li><li class=''><a href='/island-reggae' id='link502'>ISLAND REGGAE</a></li><li class=''><a href='/tribute-bands' id='link503'>TRIBUTE BANDS</a></li><li class=''><a href='/country' id='link505'>COUNTRY BANDS</a></li><li class=''><a href='/cover-bands' id='link506'>COVER BANDS</a></li><li class=''><a href='/jazz-bands' id='link507'>JAZZ BANDS</a></li><li class=''><a href='/destination' id='link504'>DESTINATION</a></li></ul></li><li class=''><a href='/join' id='link323'>GET LISTED TODAY!</a></li><li class=''><a href='/gear' id='link400'>GEAR FOR SALE</a><ul><li class=''><a href='/electric-guitars' id='link508'>GUITARS</a></li><li class=''><a href='/guitar-accessories' id='link509'>GUITAR ACCESSORIES</a></li><li class=''><a href='/bass-guitars' id='link510'>BASS GUITARS</a></li><li class=''><a href='/keyboards' id='link511'>KEYBOARDS</a></li><li class=''><a href='/drums-percussion' id='link512'>DRUMS & PERCUSSION</a></li><li class=''><a href='/band-orchestra' id='link513'>BAND & ORCHESTRA</a></li><li class=''><a href='https://guitar-center.pxf.io/MAZdv3' id='link514'>AMPS & PA</a></li><li class=''><a href='https://guitar-center.pxf.io/mOeyJq' id='link515'>DJ EQUIPMENT</a></li><li class=''><a href='https://guitar-center.pxf.io/Dy5dZo' id='link516'>LIGHTING</a></li><li class=''><a href='https://guitar-center.pxf.io/e1DZ5D' id='link517'>MICROPHONE</a></li><li class=''><a href='https://guitar-center.pxf.io/VxnDKa' id='link518'>PODCASTING</a></li><li class=''><a href='https://guitar-center.pxf.io/gO9X7O' id='link519'>RECORDING</a></li></ul></li><li class=''><a href='/blog' id='link393'>THE BAND BEAT</a></li> </ul> 1835 </div> 1836 </div> 1837</nav> 1838<!--CSS IF MENU IS FIXED TOP--> 1839 1840</div> 1841<div class="clearfix"></div> 1842<!-- Begin Content --> 1843<main role="main" id="main-content"> 1844<div id="first_container" class="content-container fr-view"> 1845 1846 <div class="container"> 1847 <div class="clearfix body-content"></div> 1848 1849 <div class="row"> 1850 1851 <div class="col-md-12"> 1852 <div class="pagehead"> 1853 <h1>About TheBandBiz.com</h1> </div> 1854 <p><br></p><p><span contenteditable="false" draggable="true" class="fr-video fr-deletable fr-fvc fr-dvi fr-draggable" loading="lazy"><iframe src="https://www.youtube.com/embed/rIKI7do_8jE??si=EubGP2xJNOWmbg0Mautoplay=1&mute=1&wmode=opaque&rel=0" frameborder="0" allowfullscreen="" class="fr-draggable" style="width: 1149px; height: 641px;"><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span><span class="fr-mk" style="display: none;"> </span></iframe></span></p><p id="isPasted"><br><span style="font-size: 22px;">Welcome to TheBandBiz.com, your premier destination for all things related to the music industry. At TheBandBiz.com, we understand the unique challenges that musicians and bands face in today's competitive landscape. That's why we're dedicated to providing invaluable resources, expert service, and essential tools to help artists thrive and succeed in the music business.</span></p><p><span style="font-size: 22px;">Founded by a passionate musician and a marketing industry professional, TheBandBiz.com is more than just a website – it's a community built on the shared love of music and a commitment to supp
1854orting musicians for hire at every stage of their careers. Whether you're a brand-new entertainer just starting out or an established band looking to expand your reach, we're here to help you navigate the complexities of the local music market and achieve your goals.</span></p><p><br><span style="font-size: 22px;"><strong>Our platform offers a wealth of resources designed to empower musicians and bands, including:</strong></span></p><p><span style="font-size: 22px;"><strong>On <a href="//TheBandBiz.com">TheBandBiz.com</a> Directory we give direct contact to potential customers, unlike other sites we LIST your website, all your social media and your phone number in addition to an on-line form request. We want to make it as easy as possible for potential customers to contact you anyway they wish!</strong></span></p><p><span style="font-size: 22px;">At TheBandBiz.com, we're committed to empowering musicians and bands with the lead generation tools they need to thrive in today's band for hire landscape. </span></p><p><span style="font-size: 22px;"><strong>Welcome to TheBandBiz.com – where music meets opportunity.</strong></span></p><p><br></p><p><br></p><p><br></p><p><br></p><p><br></p><p><br></p><div class="clearfix clearfix-lg hidden-md hidden-lg"><br></div> </div> 1855 1856 1857 </div> <!-- Closes Row --> 1858 1859 1860
1860<script type="application/ld+json"> 1861{ 1862 "@context": "https://schema.org/", 1863 "@type": "WebPage", 1864 "@id": "https://thebandbiz.com/about", 1865 "url": "https://thebandbiz.com/about", 1866 "name": "About TheBandBiz | Connecting Live Music with Events Nationwide", 1867 "headline": "TheBandBiz is a trusted platform connecting talented bands and solo artists with weddings, parties, and corporate events. Learn more about our mission, who we serve, and why weâre passionate about live entertainment.", 1868 "about": "thebandbiz.com > About", 1869 "inLanguage": "en-US", 1870 "mainEntityOfPage": "https://thebandbiz.com/about", 1871 "author": { 1872 "@id": "https://thebandbiz.com/#organization" 1873 }, 1874 "publisher": { 1875 "@id": "https://thebandbiz.com/#organization" 1876 }, 1877 "isPartOf": { 1878 "@id": "https://thebandbiz.com/#website" 1879 }, 1880 "primaryImageOfPage": { 1881 "@type": "ImageObject", 1882 "url": "/images/thebandbiz.png" 1883 }, 1884 "keywords": [ 1885 "about TheBandBiz", 1886 "live music directory", 1887 "entertainment platform", 1888 "book a band", 1889 "promote your band", 1890 "music booking site", 1891 "hire live entertainment", 1892 "wedding bands", 1893 "corporate entertainment", 1894 "party bands" 1895 ], 1896 "dateModified": "2025-07-03T17:35:35-04:00" 1897}</script>
1897 1898 <div class="clearfix"></div> 1899 </div> 1900</div> 1901</main> 1902<!-- End Content --> 1903<div class="clearfix footer-clear-element clearfix-lg"></div> 1904 1905<div class="footer"> 1906 <div class="container"> 1907 <div class="row"> 1908 <ul class="footer_menu sm-text-center"> 1909 <li class='col-md-5'><span id='link406' class='head'> About</span><ul><li class=''><span id='link407' class='content'> Your go-to directory for bands, DJs, and live performers. Explore profiles, watch videos, and connect directly with talent for weddings, events, and venues.</span></li></ul></li><li class='col-md-2 col-md-offset-1'><span id='link408' class='head'> Website</span><ul><li class=''><a href='/about' id='link409'>How It Works</a></li><li class=''><a href='/about/contact' id='link410'>Contact Us</a></li></ul></li><li class='col-md-2'><span id='link411' class='head'> Our Other Sites</span><ul><li class=''><a href='https://Idoweddingvenues.com' id='link412'>IdoWeddingVenues.com</a></li><li class=''><a href='https://thatsentertainers.com' id='link413'>ThatsEntertainers.com</a></li></ul></li><li class='col-md-2'><span id='link414' class='head'> Support</span><ul><li class=''><a href='https://thebandbiz.com/website-design' id='link453'>Website Design</a></li><li class=''><a href='/login' id='link415'>Member Login</a></li><li class=''><a href='/login/retrieval' id='link416'>Reset Password</a></li></ul></li><li class='col-md-12 clearfix'><span id='link417'> <a href="#" data-toggle="modal" data-target="#newsletter_subscribe_modal" class="btn btn-lg newsletter_footer_button col-xs-12 col-md-6 nofloat fpad bold"> 1910 <div class="col-sm-6 nopad newsletter_button_left"> 1911 Join Our Newsletter 1912 </div> 1913 <div class="col-sm-6 nopad newsletter_button_right"> 1914 Click to Subscribe 1915 <i class='fa fa-chevron-circle-right fa-fw'></i> 1916 </div> 1917 1918 <div class="clearfix"></div> 1919</a></span></li><li class='col-md-5 vpad vmargin'><span id='link418'> <style>.network-icon.twitter,.network-icon.tiktok{background:#000}</style> 1920<div class="list-social-links"> 1921 <a class="network-icon contact" href="/about/contact" title="Contact Us thebandbiz.com"> 1922 <i class="bi bi-envelope"></i> 1923 </a> 1924 <a class="network-icon facebook" href="https://www.facebook.com/thebandbiz#" target="_blank" title="thebandbiz.com Facebook"> 1925 <i class="bi bi-facebook"></i> 1926 </a> 1927 1928 1929 1930 <div class="clearfix"></div> 1931</div></span></li><li class='col-md-6 col-md-offset-1 vpad vmargin'><a href='/join' id='link419' class='btn btn_footer_get_listed btn-lg btn-block bold center sm-block'>Get Listed Today</a></li><li class='col-md-12 clearfix vmargin text-center'><span id='link420'> </span><ul><li class='clearfix vmargin vpad inline-block'><span id='link421'> </span></li><li class='btn-lg font-sm novpad norpad inline-block'><span id='link422'> © 2026</span></li><li class='font-sm inline-block hpad'><a href='/' id='link423' title='thebandbiz.com'>thebandbiz.com</a></li><li class='font-sm inline-block'><span id='link424'> All Rights Reserved</span></li><li class='font-sm inline-block hpad'><a href='/about/terms' id='link425' title='Terms of Use'>Terms of Use</a></li><li class='font-sm inline-block'><a href='/about/privacy' id='link426' title='Privacy Policy'>Privacy Policy</a></li></ul></li> </ul> 1932 </div> 1933 </div> 1934</div><style type='text/css'> .scrollup { 1935 border-radius: 3px; 1936 width: 40px; 1937 height: 40px; 1938 opacity: 0.4; 1939 position: fixed; 1940 bottom: 30px; 1941 right: 30px; 1942 display: none; 1943 background: rgba(119, 119, 119, 0.8); 1944 z-index: 1000000; 1945} 1946.scrollup i { 1947 font-size: 36px; 1948 color: white; 1949 position: relative; 1950 top: 0px; 1951 left: 10px; 1952} </style> <div class="myModal modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" 1953 data-backdrop="static" data-keyboard="false"> 1954 <div class="modal-dialog" role="document"> 1955 <div class="modal-content"> 1956 <div class="modal-body nohpad nobpad"> 1957 <button type="button" style="z-index:10;position:absolute;right:15px;" class="close hmargin" 1958 data-dismiss="modal">× 1959 </button> 1960 <style> 1961 .member-login-container:not(.modal .module) { 1962 width: 555px; 1963 max-width: 100%; 1964 margin-left: auto; 1965 margin-right: auto; 1966 margin-bottom:0; 1967 background-color: rgb(250, 250, 250)!important; 1968 border-color: rgb(238, 238, 238)!important; 1969 color: rgb(41, 41, 41)!important; 1970 } 1971 .login-register-tabs, .login-register-content { 1972 width: 555px!important; 1973 max-width: 100%; 1974 margin-left: auto!important; 1975 margin-right: auto!important; 1976 background-color: rgb(238, 238, 238); 1977 } 1978 .login-register-content { 1979 background: transparent; 1980 padding: 0; 1981 border: none; 1982 } 1983 .login-register-content h2, .login-register-content h2+hr, .login-register-content .account-menu-title { 1984 display: none!important; 1985 } 1986 .express_login_create_account_prefix hr { 1987 margin: 15px 0 10px; 1988 }
1989 .modal-content #containerFBLogin, .modal-content #containerGoogleLogin { 1990 margin:15px 0; 1991 } 1992 1993 /* CSS When Login Form and Express Registration Rendered in Sidebar */ 1994 .col-md-3 .bd-chat-well-container,.col-md-4 .bd-chat-well-container { 1995 padding: 15px 10px; 1996 } 1997 .col-md-3 .bd-chat-center-text,.col-md-4 .bd-chat-center-text { 1998 margin: 0; 1999 font-size: 20px; 2000 padding: 0 15px; 2001 } 2002 .col-md-3 .member-login-page-container .login-register-tabs *, .col-md-4 .member-login-page-container .login-register-tabs * { 2003 font-size: 12px; 2004 line-height: 1.2em; 2005 vertical-align: bottom; 2006 } 2007 .col-md-3 .member-login-page-container .login-register-tabs a, .col-md-4 .member-login-page-container .login-register-tabs a { 2008 padding: 5px !important; 2009 height: 50px; 2010 vertical-align: middle; 2011 display: table-cell !important; 2012 width: 1%; 2013 } 2014 .col-md-3 .member-login-page-container .login-register-content, .col-md-4 .member-login-page-container .login-register-content { 2015 padding: 0; 2016 } 2017 .col-md-3 .member-login-container, .col-md-4 .member-login-container { 2018 padding: 15px !important; 2019 font-size: 13px; 2020 } 2021 .col-md-3 .member-login-page-container .input-lg, .col-md-4 .member-login-page-container .input-lg { 2022 height: 34px; 2023 padding: 6px 12px; 2024 font-size: 14px; 2025 } 2026 .col-md-3 .member-login-page-container .security_question_label, .col-md-4 .member-login-page-container .security_question_label { 2027 transform: scale(.85); 2028 margin: -1.15em -1.15em 0; 2029 } 2030 .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 { 2031 width: 100%; 2032 display: block; 2033 margin-top:5px; 2034 } 2035 .col-md-3 .login-cta-buttons li, .col-md-4 .login-cta-buttons li { 2036 padding:0 2037 } 2038 .col-md-3 .login-cta-buttons ul.nav, .col-md-4 .login-cta-buttons ul.nav { 2039 margin-top: -10px; 2040 } 2041 .col-md-3 #googleAction, .col-md-3 #facebookAction, .col-md-4 #googleAction, .col-md-4 #facebookAction { 2042 padding: 0; 2043 min-height: 0; 2044 font-size: 14px; 2045 margin: 0; 2046 } 2047 .col-md-3 #googleAction img, .col-md-3 #facebookAction img, .col-md-4 #googleAction img, .col-md-4 #facebookAction img { 2048 height: 36px !important; 2049 margin-right: 5px; 2050 position: relative!important; 2051 display: inline-block; 2052 } 2053 @media only screen and (max-width: 767px) { 2054 .col-md-3 .member-login-page-container .login-register-tabs a, .col-md-4 .member-login-page-container .login-register-tabs a { 2055 display: block !important; 2056 width: 100%; 2057 line-height: 40px; 2058 } 2059 2060 #containerGoogleLogin { 2061 text-align: center; 2062 margin-top: 10px; 2063 } 2064 #containerGoogleLogin #gBtn { 2065 display: inline-block; 2066 } 2067 } 2068 </style> 2069 <div class="row member-login-page-container"> 2070 <div class="fpad-lg novpad"> 2071 2072 2073 <div class="module fpad-xl member-login-container"> 2074 <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=" ">
2074<input type="hidden" name="sized" value="0" id="member_login_190-element-0"/><input type="hidden" name="form" value="myform" id="member_login_190-element-1"/><input type="hidden" name="formname" value="member_login" id="member_login_190-element-2"/><input type="hidden" name="dowiz" value="1" id="member_login_190-element-3"/><input type="hidden" name="save" value="1" id="member_login_190-element-4"/><input type="hidden" name="url_origin_pars" value="/about" id="member_login_190-element-5"/><input type="hidden" name="action" autocomplete="off" value="login" id="member_login_190-element-6"/><h2 class="nomargin member-login-h2-form-title">Member Login</h2><hr><style type='text/css'> #containerGoogleLogin #gBtn { 2075 display: inline-block; 2076 text-align: center; 2077 width: 216px; 2078} 2079 2080.module #containerFBLogin #facebookAction img, .module #containerFBLogin #facebookAction img { 2081 position: absolute !important; 2082} 2083.module #containerFBLogin a#facebookAction { 2084 max-width: 200px; 2085 position: relative; 2086 left: -8px; 2087 2088} </style> <!-- Required Font-Family for Social Buttons --> 2089 <link rel="stylesheet" media="print" onload="this.onload=null;this.removeAttribute('media');" href="https://fonts.googleapis.com/css?family=Roboto:500&display=swap"> 2090 <noscript> 2091 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:500&display=swap"> 2092 </noscript> 2093 2094 <div class="row social-login-row"> 2095 </div><div class="form-group"><label class="vertical-label bd-email" for="member_login_190-element-9"><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-9"/></div><div class="form-group"><label class="vertical-label bd-password" for="member_login_190-element-10"><span class="required">* </span>Password</label> 2096 <style> 2097 #togglePassword { 2098 background: none; 2099 border: none; 2100 cursor: pointer; 2101 font-weight: bold; 2102 font-size: .85em; 2103 position: absolute; 2104 right: 5px; 2105 top: 0; 2106 } 2107 </style><button type="button" tabindex="-1" id="togglePassword" onclick="showPassword(this);"> <i class="fa fa-lock" aria-hidden="true"></i></button> 2108
2108<script> 2109 function showPassword(node){ 2110 const parent = node.closest('.form-group'); 2111 const passwordField = parent.querySelector(`input[type='password'], input[type='text']`); 2112 const isPassword = passwordField.getAttribute('type') === 'password'; 2113 passwordField.setAttribute('type', isPassword ? 'text' : 'password'); 2114 const iconHTML = isPassword ? `<i class="fa fa-unlock" aria-hidden="true"></i>` : `<i class="fa fa-lock" aria-hidden="true"></i>`; 2115 node.innerHTML = iconHTML; 2116 } 2117 </script>
2117<input type="password" name="pass" required placeholder="Enter Password" autocomplete="off" value class="form-control input-lg" id="member_login_190-element-10"/></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"> 2118 <div id="member_login_190-captchaContainer" class="control-group"> 2119 <div class="g-recaptcha" id="member_login_190-google-recaptcha"></div> 2120 </div> 2121 <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> 2122 <div class="clearfix bmargin"></div> 2123 <input type="hidden" name="recaptcha" id="member_login_190-rcap"> 2124</div> 2125 <style> 2126 .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 { 2127 transform: scale(0.77); 2128 -webkit-transform: scale(0.77); 2129 transform-origin: 0 0; 2130 -webkit-transform-origin: 0 0; 2131 margin-bottom: -15px; 2132 } 2133 2134 .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 { 2135 transform: scale(0.77); 2136 -webkit-transform: scale(0.77); 2137 transform-origin: 0 0; 2138 -webkit-transform-origin: 0 0; 2139 margin-bottom: -15px; 2140 } 2141 </style> 2142
2142<script type="text/javascript"> 2143 if(typeof formsFound == "undefined"){ 2144 var formID = ''; 2145 var currentCaptcha = {}; 2146 var captchaHolders = {}; 2147 var formsFound = {}; 2148 var captchaApiRequested = false; 2149 /* The forms the visitor has actually interacted with - only these get a widget. */ 2150 var captchaArmedForms = []; 2151 /* api.js stays lazy - nothing is fetched from Google until the visitor actually 2152 touches the form. 'click' alone was too narrow: a keyboard-only visitor tabs in 2153 and presses Enter without ever clicking, so api.js never loaded, the captcha 2154 never rendered, and the form POSTed an empty token. */ 2155 var captchaTriggerEvents = ['click', 'keydown', 'focusin', 'touchstart']; 2156 2157 window.addEventListener('load', () => { 2158 formID = document.querySelectorAll('[name="recaptcha"]'); 2159 if (typeof formID != "undefined" && formID !== null) { 2160 for (let i = 0; i < formID.length; i++) { 2161 let formIDForm = formID[i].closest('form'); 2162 let captchaHolder = formIDForm.querySelector(".g-recaptcha"); 2163 2164 if (typeof formsFound[formIDForm.id] != "undefined") { 2165 formsFound[formIDForm.id]['counter']++; 2166 }else{ 2167 formsFound[formIDForm.id] = {'counter' : 1}; 2168 } 2169 2170 formIDForm.setAttribute('data-counter', formsFound[formIDForm.id]['counter']); 2171 captchaHolder.setAttribute('id',captchaHolder.id+'-'+formsFound[formIDForm.id]['counter']); 2172 2173 if (typeof formIDForm != "undefined" && formIDForm !== null) { 2174 captchaTriggerEvents.forEach( evt => 2175 formIDForm.addEventListener(evt, reCaptchaOnFormInteraction, false) 2176 ); 2177 } 2178 } 2179 } 2180 }); 2181 } 2182 2183 function reCaptchaOnFormInteraction(event) { 2184 if (event && event.currentTarget) { 2185 captchaArmForm(event.currentTarget); 2186 } 2187 if (captchaApiRequested) { 2188 renderArmedCaptchas(); 2189 return; 2190 } 2191 captchaApiRequested = true; 2192 2193 var head = document.getElementsByTagName('head')[0]; 2194 var script = document.createElement('script'); 2195 script.type = 'text/javascript'; 2196 script.src = 'https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl=en'; 2197 head.appendChild(script); 2198 } 2199 2200 var captchaArmForm = function (formEl) { 2201 if (!formEl) { 2202 return; 2203 } 2204 for (var a = 0; a < captchaArmedForms.length; a++) { 2205 if (captchaArmedForms[a] === formEl) { 2206 return; 2207 } 2208 } 2209 captchaArmedForms.push(formEl); 2210 }; 2211 2212 var captchaSolvedCallback = function (holder) { 2213 return function () { 2214 var formEl = holder.closest('form'); 2215 if (!formEl) { 2216 return; 2217 } 2218 $(formEl).find('.security_question_label').removeClass('has-error'); 2219 $(formEl).find('#recaptcha_error').css('display', 'none'); 2220 var notification = document.getElementById(formEl.id + '-notification'); 2221 if (notification && notification.classList.contains('alert-danger-subtle')) { 2222 $(notification).slideUp(); 2223 } 2224 }; 2225 }; 2226 2227 var renderArmedCaptchas = function () { 2228 if (typeof grecaptcha === "undefined" || typeof grecaptcha.render !== "function") { 2229 return; 2230 } 2231 for (var f = 0; f < captchaArmedForms.length; f++) { 2232 var holder = captchaArmedForms[f].querySelector('div[class=g-rec
2232aptcha]'); 2233 2234 if (!holder || !holder.id || holder.getClientRects().length === 0) { 2235 continue; 2236 } 2237 /* Guard a second render: grecaptcha throws on an element it already claimed. */ 2238 if (typeof captchaHolders[holder.id] === "undefined") { 2239 captchaHolders[holder.id] = grecaptcha.render(holder.id, { 2240 'sitekey': '6Lcl1dsdAAAAAF_yTMn325ctS8EtemB1Ot6F4pfS', 2241 'callback': captchaSolvedCallback(holder) 2242 }); 2243 } 2244 } 2245 }; 2246 2247 var onloadCallback = function (event) { 2248 renderArmedCaptchas(); 2249 }; 2250 2251 </script>
vendor: 1 bytes, line 2251
2251
2252<script> 2253 $(document).ready(function(){ 2254 /* Implicit submission (Enter inside a field) fires 'submit' without firing a click on 2255 the submit button, so the click guard below never sees it and the form POSTed an 2256 empty token. Bound on document/capture so it runs before FormValidation's own 2257 handler on the form - at AT_TARGET the capture flag does not order listeners, so a 2258 listener on the form itself would not reliably win. Native HTMLFormElement.submit() 2259 does not dispatch 'submit', so the solved-captcha path below is unaffected. */ 2260 var captchaGuardedForm = document.getElementById('member_login_190'); 2261 if (captchaGuardedForm) { 2262 document.addEventListener('submit', function (event) { 2263 if (event.target !== captchaGuardedForm) { 2264 return; 2265 } 2266 2267 var formId = captchaGuardedForm.id; 2268 var captchaHolderKey = formId + "-google-recaptcha-" + $(captchaGuardedForm).data('counter'); 2269 var captchaRendered = typeof captchaHolders[captchaHolderKey] != "undefined"; 2270 2271 if (captchaRendered && grecaptcha.getResponse(captchaHolders[captchaHolderKey]) !== "") { 2272 $("#" + formId + " .security_question_label").removeClass("has-error"); 2273 $("#" + formId + " #recaptcha_error").css("display", "none"); 2274 return; 2275 } 2276 2277 /* Unsolved, or api.js still in flight: either way there is no token to send. */ 2278 event.preventDefault(); 2279 event.stopImmediatePropagation(); 2280 $("#" + formId + " .security_question_label").addClass("has-error"); 2281 $("#" + formId + " #recaptcha_error").css("display", "block"); 2282 return false; 2283 }, true); 2284 } 2285 $("#member_login_190 input[type=submit]").unbind('click'); 2286 $("#member_login_190 input[type=submit]").click(function (event) { 2287 2288 var formId = $(this.form).attr('id'); 2289 var captchaHolderKey = formId + "-google-recaptcha-" +$(this.form).data('counter'); 2290 2291 if (typeof captchaHolders[captchaHolderKey] != "undefined") { 2292 if (grecaptcha.getResponse(captchaHolders[captchaHolderKey]) === "") { 2293 event.preventDefault(); 2294 $("#" + formId).formValidation('validate'); 2295 $("#" + formId + " .security_question_label").addClass("has-error"); 2296 $("#" + formId + " #recaptcha_error").css("display", "block"); 2297 return false; 2298 } 2299 2300 /* Solved captcha: clear the error UI and let the click proceed untouched. 2301 The browser then fires a REAL, button-initiated submit event, so 2302 FormValidation runs its normal chain (success.form.fv -> AJAX modal on 2303 checkout / native POST on login). Re-submitting here artificially broke 2304 both ways: native form.submit() skips the FV chain (checkout rendered the 2305 raw JSON response), and jQuery .submit() fires a synthetic submit that FV 2306 refuses, leaving the form stuck after the first error (Bug 2). */ 2307 $("#" + formId + " .security_question_label").removeClass("has-error"); 2308 $("#" + formId + " #recaptcha_error").css("display", "none"); 2309 } 2310 }); 2311 }); 2312</script>
2312</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-13"/></div><div class="login-cta-buttons"><hr class="cta-hr"><ul class="list-inline nomargin inline-block btn-block"><li class='col-md-12 text-center bold nav'><a href='/join' id='link198'>Don't Have an Account? Get Listed Today</a></li></ul><div class="clearfix"></div></div></form>
2312<script type="text/javascript">jQuery(document).ready(function() { jQuery("#member_login_190").bind("submit", function() { 2313 });}); </script>
2313 <div class="clearfix"></div> 2314 </div> 2315 2316 2317 </div> 2318 </div> 2319 </div> 2320 </div> 2321 </div> 2322 </div> 2323 2324 2325 2326 <link rel="stylesheet" type="text/css" href="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/limonte-sweetalert2/6.11.2/sweetalert2.min.css">
2327<script src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/limonte-sweetalert2/6.11.2/sweetalert2.min.js"></script>
2327 2328
2329<script> 2330 function clearContent(thisObj){ 2331 var size; 2332 if(thisObj.hasClass('input-sm') || thisObj.parents('.input-group').hasClass('input-group-sm')){ 2333 size = "small"; 2334 } else if (thisObj.hasClass('input-lg') || thisObj.parents('.input-group').hasClass('large-autosuggest')){ 2335 size = "large"; 2336 } else { 2337 size = "medium"; 2338 } 2339 if(!thisObj.parent().hasClass('input_wrapper')){ 2340 if(thisObj.parent().hasClass('input-group-sm')){ 2341 thisObj.wrap('<span class="input-group-sm input_wrapper"></span>'); 2342 } else if (thisObj.parent().hasClass('input-group-lg')){ 2343 thisObj.wrap('<span class="input-group-lg input_wrapper"></span>'); 2344 } else { 2345 thisObj.wrap('<span class="input_wrapper"></span>'); 2346 } 2347 } 2348 if(thisObj.val() != ""){ 2349 if(thisObj.hasClass('googleSuggest')){ 2350 thisObj.parent().find('.fill_location').remove(); 2351 } 2352 if (!thisObj.parent().find('.clear_content').length){ 2353 thisObj.parent().append(`<span class="clear_content ${size}"><i class="fa fa-times-circle" aria-hidden="true"></i></span>`); 2354 if (thisObj.hasClass("tt-input")) { 2355 thisObj.focus(); 2356 } 2357 2358 } 2359 } 2360 } 2361 2362 $(document).on('click', '.drp-buttons .applyBtn', function(){ 2363 clearContent($(".dateRange input")); 2364 }); 2365 2366 $('.sm-autosuggest input, .googleSuggest, .large-autosuggest input, .md-autosuggest input, .normal-autosuggest input, .google-writen-location, .dateRange input').keyup(function(){ 2367 clearContent($(this)); 2368 }); 2369 2370 $(document).ready(function(){ 2371 $('.sm-autosuggest input, input.googleSuggest, .large-autosuggest input, .md-autosuggest input, .normal-autosuggest input, .google-writen-location, .dateRange input').each(function(){ 2372 clearContent($(this)); 2373 }) 2374 }) 2375 2376 $(document).on('click', '.clear_content', function(){ 2377 $(this).parent().find('input').val(''); 2378 //tt-input its a class for typeahead auto-suggest 2379 if ($(this).parent().find('input').hasClass("tt-input")) { 2380 $(this).parent().find('input').typeahead('val',''); 2381 } 2382 clearContent($(this).parent().find('input')); 2383 $(this).remove(); 2384 }); 2385 2386 $(window).on('load', function () { 2387 setTimeout(function() { 2388 // add missing href attribute to multi-category options in search modules 2389 $('.bootstrap-select.show-tick .dropdown-menu a').attr('href', '#'); 2390 }, 2000); 2391 }); 2392</script>
2392 2393 2394 2395 2396<a href="#" class="scrollup" title="scrollup"> 2397 <i class="fa fa-caret-up" aria-hidden="true"></i> 2398</a>
2399<script> 2400 $(document).ready(function () { 2401 2402 if ($('.navbar-default').length > 0) { 2403 var menu = $('.navbar-default'); 2404 var origOffsetY = menu.offset().top; 2405 2406 function scroll() { 2407 2408 if ($(window).scrollTop() > origOffsetY) { 2409 $('.navbar-default').addClass('navbar-fixed-top'); 2410 $('.navbar-default').addClass('transparent_menu'); 2411 2412 } else { 2413 $('.navbar-default').removeClass('navbar-fixed-top'); 2414 $('.navbar-default').removeClass('transparent_menu'); 2415 } 2416 } 2417 document.onscroll = scroll; 2418 }; 2419 }); 2420 $(document).ready(function(){ 2421 // .progressbar() comes from bootstrap-progressbar.min.js, loaded only by widgets 1236/1318. 2422 // Elsewhere it used to fall through to jQuery UI's; jQuery UI is no longer global, so an 2423 // unguarded call throws and kills the rest of this ready() handler (scrollup, crop button). 2424 if ($.fn.progressbar) { 2425 $('.progress .progress-bar').progressbar({ 2426 display_text: 'fill' 2427 }); 2428 } 2429 $(window).scroll(function(){ 2430 2431 if ($(this).scrollTop() > 600) { 2432 $('.scrollup').fadeIn(); 2433 2434 } else { 2435 $('.scrollup').fadeOut(); 2436 } 2437 }); 2438 $('.scrollup').click(function(){ 2439 $("html, body").animate({ 2440 scrollTop: 0 2441 }, 600); 2442 return false; 2443 }); 2444 $('#cropButton').click(function(){ 2445 var iframe = $("#cropiFrame"); 2446 iframe.attr("src", iframe.data("src")); 2447 }); 2448 }); 2449</script>
2449 2450 <!-- Google tag (gtag.js) -->
vendor: 69 bytes, lines 2450-2451
2450 2451 <script async src="https://www.googletagmanager.com/gtag/js?id=
2451G-Z57S248WFX
vendor: 17 bytes, lines 2451-2452
2451"></script> 2452
2452<script> 2453
vendor: 154 bytes, lines 2453-2456
2453window.dataLayer = window.dataLayer || []; 2454 function gtag(){dataLayer.push(arguments);} 2455 gtag('js', new Date()); 2456 gtag('config', '
2456G-Z57S248WFX
vendor: 9 bytes, lines 2456-2457
2456'); 2457
2457</script>
2457 2458 2459
2459<script type="text/javascript"> 2460 /* CT dissolved its county governments in 1960, so Google returns its 8 counties as 2461 colloquial_area instead of administrative_area_level_2 â they must never reach a 2462 city field. Google translates the component name to the site language, so the 2463 language-stable place_id is checked first and the word list only backs it up. */ 2464 if (typeof window.bdIsColloquialCounty !== 'function') { 2465 window.bdIsColloquialCounty = function (componentName, resultPlaceId) { 2466 var countyPlaceIds = [ 2467 'ChIJWRM2Nakw5okRoTCxHvz_5xw', /* Middlesex County, CT */ 2468 'ChIJmeTbuDYH6IkR3xgeNvszpgg', /* Fairfield County, CT */ 2469 'ChIJiT24cvvP54kR2fSPHkp0Akc', /* New Haven County, CT */ 2470 'ChIJvYe7N7eQ54kRL6nZaXRwPkI', /* Litchfield County, CT */ 2471 'ChIJtxC3p6qs54kRIvK-2bctar0', /* Hartford County, CT */ 2472 'ChIJj-lvZQli5okRGCuGRd6xKt0', /* Tolland County, CT */ 2473 'ChIJRWKqeLdi5okRLXWDlSEGeTY', /* Windham County, CT */ 2474 'ChIJwTIQbvVv5okRU5_gSJczUTQ' /* New London County, CT */ 2475 ]; 2476 2477 if (typeof resultPlaceId === 'string' && resultPlaceId !== '' 2478 && countyPlaceIds.indexOf(resultPlaceId) !== -1) { 2479 return true; 2480 } 2481 2482 if (typeof componentName !== 'string' || componentName === '') { 2483 return false; 2484 } 2485 2486 var name = componentName.toLowerCase(); 2487 2488 /* Only unambiguous county words â generic ones (region, district) would strip 2489 legitimate colloquial areas, and their languages already match on place_id. 2490 Word-boundary matched so names like "Countyline, OK" are left alone. */ 2491 var wordTokens = ['county', 'condado', 'comté', 'contea', 2492 'comitatul', 'hrabstwo', 'megye', 'konderria']; 2493 var isAlnum = function (ch) { 2494 return (ch >= 'a' && ch <= 'z') || (ch >= '0' && ch <= '9'); 2495 }; 2496 2497 for (var t = 0; t < wordTokens.length; t++) { 2498 var token = wordTokens[t]; 2499 var from = 0; 2500 while (true) { 2501 var at = name.indexOf(token, from); 2502 if (at === -1) { 2503 break; 2504 } 2505 var before = (at > 0) ? name.charAt(at - 1) : ' '; 2506 var after = ((at + token.length) < name.length) ? name.charAt(at + token.length) : ' '; 2507 if (!isAlnum(before) && !isAlnum(after)) { 2508 return true; 2509 } 2510 from = at + 1; 2511 } 2512 } 2513 2514 /* Non-latin scripts have no alphanumeric word boundary. */ 2515 var scriptTokens = ['каÑнÑи', 'کاؤÙÙ¹Û', 'à¤à¤¾à¤à¤à¤à¥', 'ì¹´ì´í°']; 2516 for (var s = 0; s < scriptTokens.length; s++) { 2517 if (name.indexOf(scriptTokens[s]) !== -1) { 2518 return true; 2519 } 2520 } 2521 2522 return false; 2523 }; 2524 } 2525 2526 // Try to load coordinates from sessionStorage on page load 2527 var vlat = 0; 2528 var vlon = 0; 2529 try { 2530 var savedLat = sessionStorage.getItem('bd_geolocation_lat'); 2531 var savedLon = sessionStorage.getItem('bd_geolocation_lon'); 2532 if (savedLat && savedLon) { 2533 vlat = parseFloat(savedLat); 2534 vlon = parseFloat(savedLon); 2535 } 2536 } catch(e) {} 2537 var isSubmit = false; 2538 var isGettingLocation = false; // Flag to prevent multiple simultaneous geolocation requests 2539 2540 // Function to save coordinates to sessionStorage 2541 function saveCoordinatesToSession(lat, lon) { 2542 try { 2543 sessionStorage.setItem('bd_geolocation_lat', lat.toString()); 2544 sessionStorage.setItem('bd_geolocation_lon', lon.toString()); 2545 } catch(e) {} 2546 } 2547 2548 // Function to get coordinates from sessionStorage if current ones are 0 2549 function getCoordinatesFromSession() { 2550 if (vlat === 0 && vlon === 0) { 2551 try { 2552 var savedLat = sessionStorage.getItem('bd_geolocation_lat'); 2553 var savedLon = sessionStorage.getItem('bd_geolocation_lon'); 2554 if (savedLat && savedLon) { 2555 vlat = parseFloat(savedLat); 2556 vlon = parseFloat(savedLon); 2557 return true; 2558 } 2559 } catch(e) {} 2560 } 2561 return false; 2562 } 2563 var cityTypes = [ 2564 'colloquial_area', 2565 'locality', 2566 'sublocality', 2567 'sublocality_level_1', 2568 'sublocality_level_2', 2569 'sublocality_level_3', 2570 'sublocality_level_4', 2571 'sublocality_level_5', 2572 'neighborhood', 2573 'ward', 2574 'postal_town' 2575 ]; 2576 2577 var postalTypes = [ 2578 'postal_code', 2579 'postal_code_prefix', 2580 'postal_code_suffix', 2581 'street_number', 2582 'premise', 2583 'subpremise', 2584 'route', 2585 'intersection', 2586 'street_address', 2587 'floor', 2588 'room', 2589 'post_box', 2590 'delivery_address' 2591 ]; 2592 2593 var isSubmitting = false; 2594 window.cachedSelectedOption = [{ 'typed_location': '' }]; 2595 window.isSubmittingMainSearch = false; 2596 2597 document.addEventListener('DOMContentLoaded', () => { 2598 let isSubmitting = false; // Add flag at the top level 2599 2600 setTimeout(()=>{ 2601 let googleSuggestForm = document.querySelectorAll('.googleSuggest,.google-writen-location,input[name="lead_location"],.fill_location'); 2602 if (typeof googleSuggestForm != "undefined") { 2603 for (let i = 0; i < googleSuggestForm.length; i++) { 2604 let closestForm = googleSuggestForm[i].closest('form'); 2605 if(typeof closestForm != "undefined" && closestForm != null){ 2606 closestForm.addEventListener('focusin', googleMapOnFormClick, false); 2607 2608 }else{ 2609 googleSuggestForm[i].addEventListener('input', googleMapOnFormClick, false); 2610 } 2611 googleSuggestForm[i].addEventListener('click', googleMapOnFormClick, false); 2612 } 2613 } 2614 },200);
2615 2616 $('.website-search button[type=submit]').click(async function (e) { 2617 e.preventDefault(); // Prevent the default submit action 2618 var nativeForm = $(this).closest('form')[0]; 2619 if (nativeForm && typeof nativeForm.reportValidity === 'function' && !nativeForm.reportValidity()) { 2620 return false; 2621 } 2622 await googleMapOnFormClick(); 2623 $(this).closest('form').submit(); 2624 }); 2625 }); 2626 window['gmapClick'] = false; 2627 function googleMapOnFormClick() { 2628 if(window.gmapClick){ 2629 return; 2630 } 2631 window.gmapClick = true; 2632 2633 return new Promise((resolve, reject) => { 2634 window.isSubmittingMainSearch = false; 2635 let googleSuggestForm = document.querySelectorAll('.googleSuggest, .google-writen-location, input[name="lead_location"], .fill_location'); 2636 let mapUri = "https://maps.googleapis.com/maps/api/js?v=quarterly&libraries=places®ion=US&callback=initializeG&language=en&key=AIzaSyBGkADkQZdYsPwY0W9HK7yx91rBwQRwewY"; 2637 2638 if (typeof google !== "undefined" && google.hasOwnProperty('maps')) { 2639 resolve('already loaded'); 2640 return; 2641 } 2642 2643 let loadMapScriptAsync = function (uri) { 2644 return new Promise((resolve, reject) => { 2645 let script = document.createElement('script'); 2646 script.type = 'text/javascript'; 2647 script.src = uri; 2648 script.async = true; 2649 script.onload = function () { 2650 resolve("ok"); 2651 }; 2652 script.onerror = function () { 2653 reject("Failed to load Google Maps script."); 2654 }; 2655 document.head.appendChild(script); 2656 }); 2657 }; 2658 2659 loadMapScriptAsync(mapUri) 2660 .then(() => { 2661 resolve(); 2662 }) 2663 .catch((error) => { 2664 console.error(error); 2665 reject(); 2666 }); 2667 2668 }); 2669 } 2670 2671 function initializeG() { 2672 var geocoder; 2673 //This piece of code will create an autosuggest for every input with the class "googleSuggest" 2674 var counter = 1; 2675 var inputsArray = []; 2676 window.cachedSelectedOption = [{ 'typed_location': '' }]; 2677 let mapExists = document.querySelectorAll('[id^="map"]').length > 0; 2678 const functionsToInvoke = { 2679 setJsMap: true, 2680 setJsMapOverview: mapExists, 2681 setJsMapSR: mapExists, 2682 setJsMapSidebar: mapExists 2683 }; 2684 if (window['maps_loaded'] !== true) { 2685 for (let func in functionsToInvoke) { 2686 if (typeof window[func] === 'function' && functionsToInvoke[func]) { 2687 window['maps_loaded'] = true; 2688 window[func](); 2689 } 2690 } 2691 } 2692 $(".googleSuggest").each(function () { 2693 //get the id from the input to be the unique identifier for each autocomplete 2694 var inputId = $(this).attr("id"); 2695 var inputElement = $(this); 2696 inputsArray[counter] = /** @type {HTMLInputElement} */( 2697 document.getElementById('' + inputId)); 2698 const mainCountry = 'US'; 2699 const inputOptions = { 2700 fields: ['address_components', 'adr_address','formatted_address', 'geometry', 'icon', 'name','place_id','plus_code','type'], 2701 types: ['geocode'] 2702 } 2703 const language = "en"; 2704 2705 if (language) { 2706 inputOptions.language = language; 2707 } 2708 if (mainCountry) { 2709 inputOptions.componentRestrictions = {country: mainCountry}; 2710 inputOptions.region = mainCountry; 2711 } 2712 2713 var autocomplete = new google.maps.places.Autocomplete(inputsArray[counter], inputOptions); 2714 google.maps.event.addListener(autocomplete, 'place_changed', function () { 2715 const place = autocomplete.getPlace(); 2716 2717 cachedSelectedOption = []; 2718 cachedSelectedOption.push(place); 2719 2720 cachedSelectedOption[0]['typed_location'] = inputElement.val(); 2721 /* if(cachedSelectedOption[0]['adr_address']){ 2722 let cleanLocation = cachedSelectedOption[0]['adr_address'].replace(/<[^>]*>/g, ''); 2723 cachedSelectedOption[0]['typed_location'] = cleanLocation; 2724 inputElement.val(cleanLocation); 2725 }*/ 2726 if (cachedSelectedOption[0]['address_components'] == undefined) { 2727 cachedSelectedOption = []; 2728 var emptyObj = { 2729 'typed_location': '' 2730 }; 2731 cachedSelectedOption.push(emptyObj); 2732 } 2733 }); 2734 //the code that prevents the submition when hit enter on a google location autocomplete item 2735 inputElement.keydown( function (e) { 2736 if (e.keyCode == 13) { 2737 var pacCounter = 0; 2738 //need to run a loop to check each pac container 2739 $('.pac-container').each(function () { 2740 2741 if ($(this).css("display") != "none") { 2742 pacCounter++; 2743 } 2744 }); 2745 if (pacCounter > 0) { 2746 e.preventDefault(); 2747 } 2748 } 2749 }); 2750 counter++; 2751 }); 2752 2753 //triggers every time a form with the id website-search is trigered 2754 $('.website-search').submit(function (e) { 2755 2756 var currentForm = $(this); 2757 var locationInput = $(this).find(".googleLocation"); 2758 var $submitButton = currentForm.find('input[type=submit], button[type=submit]'); 2759 2760 2761 if (locationInput.val() != "" && typeof locationInput.val() != 'undefined') { 2762 2763 // Set submitting flag 2764 window.isSubmittingMainSearch = true; 2765 $submitButton.prop('disabled', true); 2766 2767 e.preventDefault(); 2768 //this variable has the main country of the site 2769 var form = currentForm; 2770 var urlGET = form.serialize(); 2771 var formActionUrl = form.attr("action"); 2772 var locationValue = locationInput.val(); 2773 2774 2775 2776 const mainCountry = 'US'; 2777 const inputOptions = { 2778 address:locationValue 2779 } 2780 const language = "en"; 2781 2782 if (language) { 2783 inputOptions.language = language; 2784 } 2785 if (mainCountry) { 2786 inputOptions.componentRestrictions = {country: mainCountry}; 2787 inputOptions.region = mainCountry; 2788 } 2789 2790 if (typeof cachedSelectedOption == 'undefined') { 2791 var emptyForm = { 2792 'typed_location': '' 2793 }; 2794 cachedSelectedOption.push(emptyForm); 2795 } 2796 2797 if (locationValue != cachedSelectedOption[0]['typed_location']) { 2798 geocoder = new google.maps.Geocoder(); 2799 geocoder.geocode(inputOptions, function (results, status) { 2800 2801 //if the google response of the geocoding was successful it will use that info to build the url for the new search 2802 if (status == google.maps.GeocoderStatus.OK) { 2803 parseInfoToSearch(results, urlGET, formActionUrl); 2804 2805 } else { 2806 var urlPath = formActionUrl; 2807 var redirect = urlPath + "?" + urlGET; 2808 //will redirect the page using the new url that has been constructed 2809 window.location.href = redirect; 2810 } 2811 }); 2812 2813 } else { 2814 parseInfoToSearch(cachedSelectedOption, urlGET, formActionUrl); 2815 } 2816 } 2817 }); 2818 2819 2820 //check if a map has been loaded 2821 if ($('#map-canvas').length > 0) { 2822 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>"; 2823 $('body').append(cssHideLogo); 2824 } else { 2825 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>"; 2826 $('body').append(cssHideLogo); 2827 } 2828
2829 if (geocodeVisitorsSetting == 1 && geocodingMethod === "IP") { 2830 populateSearchFields(); 2831 } 2832 2833 if($('.googleSuggest').val() == ""){ 2834 populateSearchFields(); 2835 } 2836 2837 var geocodeVisitorsSetting = '0'; 2838 var geocodingMethod = 'HTML5'; 2839 2840 //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 2841 2842 var vlon = ''; 2843 var vlat = ''; 2844 } 2845 2846 function switchPlaceID(placeId,urlGET, formActionUrl) { 2847 let request = { 2848 placeId: placeId, 2849 fields: ['address_components', 'adr_address', 'formatted_address', 'geometry', 'icon', 'name', 'place_id', 'plus_code', 'type'], 2850 }; 2851 2852 let service = new google.maps.places.PlacesService(document.createElement('div')); 2853 service.getDetails(request, function(place, status) { 2854 if (status === google.maps.places.PlacesServiceStatus.OK) { 2855 let dataArray = []; 2856 dataArray.push(place); 2857 parseInfoToSearch(dataArray, urlGET, formActionUrl); 2858 } else { 2859 console.error('Place details request failed with status:', status); 2860 } 2861 }); 2862 } 2863 2864 function parseInfoToSearch(results, urlGET, formActionUrl) { 2865 var urlSearchParams = new URLSearchParams(urlGET); 2866 var parameters = {}; 2867 var addressComponentsArray = []; 2868 if (results.length > 1) { 2869 if(urlSearchParams.get("location_value")?.toLowerCase() === "nebraska" && results.length === 2){ 2870 let tempResult = results[0]; 2871 results[0] = results[1]; 2872 results[1] = tempResult; 2873 } 2874 for (let i = 0; i < results.length; i++) { 2875 if (results[i].types[0] === 'natural_feature' || 2876 results[i].types[0] === 'airport' || 2877 results[i].types[0] === 'point_of_interest' || 2878 results[i].types[0] === 'establishment' || 2879 results[i].types[0] === 'political' || 2880 results[i].types[0] === 'park') { 2881 results.splice(i, 1); 2882 } 2883 } 2884 } 2885 var adComLength = results[0].address_components.length; 2886 2887 if(results[0].place_id == 'ChIJmQrivHKsQjQR4MIK3c41aj8'){ 2888 switchPlaceID('ChIJi73bYWusQjQRgqQGXK260bw',urlGET, formActionUrl); 2889 return; 2890 } 2891 sessionStorage.setItem("google_result",JSON.stringify(results)); 2892 2893 2894 var foundPostalType = results[0].types.find(type => postalTypes.includes(type)); 2895 var foundCityType = results[0].types.find(type => cityTypes.includes(type)); 2896 2897 //loop that will build the array with the address components and will get the short name of country and administrative area level 1 2898 for (var i = 0; i < adComLength; i++) { 2899 2900 if (results[0].address_components[i]['types'][0] == "country") { 2901 parameters.country_sn = results[0].address_components[i]['short_name']; 2902 } 2903 if (results[0].address_components[i]['types'][0] == "administrative_area_level_1") { 2904 parameters.adm_lvl_1_sn = results[0].address_components[i]['short_name']; 2905 } 2906 if (results[0].address_components[i]['types'][0] == "administrative_area_level_1") { 2907 parameters.stateSearchLN = results[0].address_components[i]['long_name']; 2908 } 2909 if (results[0].address_components[i]['types'][0] == "administrative_area_level_2") { 2910 /* short_name is what the service-area writer stores in 2911 service_areas.county_sn, so the search must send the same 2912 form or county matching breaks wherever short != long. */ 2913 parameters.county_sn = results[0].address_components[i]['short_name']; 2914 } 2915 if ($.inArray(results[0].address_components[i]['types'][0], cityTypes) !== -1 && (foundCityType || foundPostalType ) ) { 2916 var addrType = results[0].address_components[i]['types'][0]; 2917 var addrLong = results[0].address_components[i]['long_name']; 2918 /* CT counties come back as colloquial_area â keep them out of parameters.city. */ 2919 if (addrType !== 'colloquial_area' 2920 || !window.bdIsColloquialCounty(addrLong, results[0].place_id)) { 2921 parameters.city = addrLong; 2922 } 2923 } 2924 if (results[0].address_components[i]['types'][0] == "postal_code" || results[0].address_components[i]['types'][0] == "postal_code_prefix") { 2925 parameters.postal_code = results[0].address_components[i]['long_name']; 2926 } 2927 } 2928 2929 2930 // Filter out 'political' from result types - use more specific type when available 2931 // Same pattern as BD-directory-maps-typePolitical (PR #5642) 2932 if (results[0].types && results[0].types.length > 1 && results[0].types[0] === 'political') { 2933 results[0].types.splice(0, 1); 2934 } 2935 2936 // Pick the most specific type from results, skip "political" (too generic) 2937 parameters.location_type = results[0].types[0]; 2938 for (var t = 0; t < results[0].types.length; t++) { 2939 if (results[0].types[t] != 'political') { 2940 parameters.location_type = results[0].types[t]; 2941 break; 2942 } 2943 } 2944 2945 // When searching by city/locality, omit postal_code â Google returns 2946 // a partial zip prefix that doesn't match all members in the city 2947 if (parameters.location_type == 'locality' && parameters.postal_code) { 2948 delete parameters.postal_code; 2949 } 2950 2951 if (parameters.adm_lvl_1_sn != '') { 2952 parameters.stateSearch = parameters.adm_lvl_1_sn; 2953 } 2954 if (parameters.country_sn == "GB") { 2955 delete parameters.adm_lvl_1_sn; 2956 } 2957 2958 //will check if the response had the bounds parameters 2959 //if it had it will add the south west and north east parameters to the new url 2960 if (results[0].geometry.hasOwnProperty('bounds') || results[0].geometry.hasOwnProperty('viewport')) { 2961 2962 if (results[0].geometry.hasOwnProperty('bounds')) { 2963 var boundsResponse = results[0].geometry.bounds; 2964 2965 } else { 2966 var boundsResponse = results[0].geometry.viewport; 2967 } 2968 parameters.swlat = boundsResponse.getSouthWest
2968().lat(); 2969 parameters.nelat = boundsResponse.getNorthEast().lat(); 2970 parameters.swlng = boundsResponse.getSouthWest().lng(); 2971 parameters.nelng = boundsResponse.getNorthEast().lng(); 2972 2973 //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 2974 } else { 2975 parameters.fsearch = "radius"; 2976 } 2977 var locationCenterResponse = results[0].geometry.location; 2978 parameters.lat = locationCenterResponse.lat(); 2979 parameters.lng = locationCenterResponse.lng(); 2980 parameters.faddress = results[0].formatted_address; 2981 parameters.place_id = results[0].place_id; 2982 var formatParameters = $.param(parameters); 2983 urlGET = urlGET + "&" + formatParameters; 2984 var urlPath = formActionUrl; 2985 var redirect = urlPath + "?" + urlGET; 2986 //will redirect the page using the new url that has been constructed 2987 window.location.href = redirect; 2988 } 2989 function populateSearchFields() { 2990 var prePopulateLocationSetting = '0'; 2991 var geolocationMethod = 'HTML5'; 2992 2993 // If geolocation is in progress and we don't have coordinates yet, wait a bit 2994 if (isGettingLocation && (vlat === 0 || vlon === 0)) { 2995 var waitStartTime = performance.now(); 2996 var waitInterval = setInterval(function() { 2997 if (!isGettingLocation || (vlat !== 0 && vlon !== 0)) { 2998 clearInterval(waitInterval); 2999 // Retry after a short delay to ensure coordinates are set 3000 setTimeout(function() { 3001 populateSearchFields(); 3002 }, 100); 3003 } else if ((performance.now() - waitStartTime) > 10000) { 3004 // Timeout after 10 seconds - try sessionStorage 3005 clearInterval(waitInterval); 3006 if (getCoordinatesFromSession()) { 3007 setTimeout(function() { 3008 populateSearchFields(); 3009 }, 100); 3010 } 3011 } 3012 }, 200); 3013 return; 3014 } 3015 3016 // If coordinates are 0, try to get from sessionStorage 3017 if (vlat === 0 || vlon === 0) { 3018 getCoordinatesFromSession(); 3019 } 3020 3021 // Validate coordinates first 3022 var hasValidCoordinates = (vlat !== '' && vlon !== '' && vlat != undefined && vlon != undefined && vlat != 0 && vlon != 0 && Math.abs(vlat) <= 90 && Math.abs(vlon) <= 180); 3023 3024 if (!hasValidCoordinates) { 3025 return; 3026 } 3027 3028 //if set to one will get the lat and lng to do reverse geocoding 3029 if (prePopulateLocationSetting == 1 && (geolocationMethod === "HTML5" || geolocationMethod === "IP")) { 3030 var visitorLatLng = new google.maps.LatLng(parseFloat(vlat), parseFloat(vlon)); 3031 var visitorGeocoder = new google.maps.Geocoder(); 3032 var formattedAddress = []; 3033 var preFormattedStructure = { 3034 "locality": "long_name", 3035 "administrative_area_level_2": "long_name", 3036 "administrative_area_level_1": "long_name", 3037 "country": "long_name" 3038 }; 3039 visitorGeocoder.geocode({'latLng': visitorLatLng}, function (results, status) { 3040 //if the google response of the geocoding was successful it will use that info to build the url for the new search 3041 if (status == google.maps.GeocoderStatus.OK) { 3042 window.cachedSelectedOption = results; 3043 $.each(preFormattedStructure, function (findex, fvalue) { 3044 $.each(results[0].address_components, function (rindex, rvalue) { 3045 if (rvalue.types[0] == findex) { 3046 formattedAddress.push(rvalue.long_name); 3047 } 3048 }); 3049 }); 3050 $('.googleSuggest').each(function () { 3051 if ($(this).val() == '') { 3052 if (formattedAddress.length > 0) { 3053 $(this).val(formattedAddress.join(', ')); 3054 clearContent($(this)); 3055 } 3056 } 3057 }); 3058 } else { 3059 $('.googleSuggest').each(function () { 3060 $(this).val(''); 3061 }); 3062 } 3063 }); 3064 } 3065 } 3066 function showError(error) { 3067 switch (error.code) { 3068 case error.PERMISSION_DENIED: 3069 case 1: // PERMISSION_DENIED 3070 $('.fill_location.clicked').popover({ 3071 content: `Your local browser settings have prevented location targeting. Please enable location permissions in your browser settings.`, 3072 container: 'body' 3073 }); 3074 $('.fill_location.clicked').popover('toggle'); 3075 setTimeout(function () { 3076 $('.fill_location.clicked').popover('hide'); 3077 $('.fill_location.clicked').removeClass('clicked'); 3078 }, 4000); 3079 break; 3080 case error.POSITION_UNAVAILABLE: 3081 case 2: // POSITION_UNAVAILABLE 3082 $('.fill_location.clicked').popover({ 3083 content: `Location information is unavailable. Please check your device location settings.`, 3084 container: 'body' 3085 }); 3086 $('.fill_location.clicked').popover('toggle'); 3087 setTimeout(function () { 3088 $('.fill_location.clicked').popover('hide'); 3089 $('.fill_location.clicked').removeClass('clicked'); 3090 }, 4000); 3091 break; 3092 case error.TIMEOUT: 3093 case 3: // TIMEOUT 3094 $('.fill_location.clicked').popover({ 3095 content: `Location request timed out. Please ensure location services are enabled and try again.`, 3096 container: 'body' 3097 }); 3098 $('.fill_location.clicked').popover('toggle'); 3099 setTimeout(function () { 3100 $('.fill_location.clicked').popover('hide'); 3101 $('.fill_location.clicked').removeClass('clicked'); 3102 }, 4000); 3103 break; 3104 case error.UNKNOWN_ERROR: 3105 default: 3106 $('.fill_location.clicked').popover({ 3107 content: `An error occurred while getting your location. Please try again.`, 3108 container: 'body' 3109 }); 3110 $('.fill_location.clicked').popover('toggle'); 3111 setTimeout(function () { 3112 $('.fill_location.clicked').popover('hide'); 3113 $('.fill_location.clicked').removeClass('clicked'); 3114 }, 4000); 3115 break; 3116 } 3117 } 3118 if (navigator.geolocation) { 3119 if ($(".googleSuggest")[0]) { 3120 $(document).on('click', '.fill_location', function getCXPosition() { 3121 // Prevent multiple simultaneous geolocation requests 3122 if (isGettingLocation) { 3123 return; 3124 } 3125 3126 var $button = $(this); 3127 $button.addClass('clicked'); 3128 var startPos; 3129 3130 // Set flag to prevent concurrent requests 3131 isGettingLocation = true; 3132 3133 // Function to actually get the position 3134 var attemptGetPosition = function() { 3135 // Try with shorter timeout first for faster response 3136 var geoOptions = {
3137 enableHighAccuracy: false, // Use false for faster response 3138 timeout: 8000, // 8 second timeout (reduced for faster failure) 3139 maximumAge: 300000 // Accept cached position up to 5 minutes old 3140 }; 3141 3142 navigator.geolocation.getCurrentPosition(function (position) { 3143 startPos = position; 3144 vlat = startPos.coords.latitude; 3145 vlon = startPos.coords.longitude; 3146 3147 // Validate coordinates before proceeding 3148 if (!vlat || !vlon || vlat === 0 || vlon === 0) { 3149 isGettingLocation = false; 3150 $button.removeClass('clicked'); 3151 return; 3152 } 3153 3154 // Save coordinates to sessionStorage 3155 saveCoordinatesToSession(vlat, vlon);
3156 3157 $.get("/api/data/html/get/data_widgets/widget_name", { 3158 "vlat": vlat, 3159 "vlon": vlon, 3160 "name": "Website - Save Coordinates Session" 3161 }); 3162 3163 populateSearchFields(); 3164 3165 // Clear flag 3166 isGettingLocation = false; 3167 $button.removeClass('clicked'); 3168 }, function(error) { 3169 // Clear flag on error 3170 isGettingLocation = false; 3171 $button.removeClass('clicked'); 3172 3173 // For timeout errors, try sessionStorage as fallback 3174 if (error.code === 3) { 3175 if (getCoordinatesFromSession()) { 3176 // Use cached coordinates 3177 $.get("/api/data/html/get/data_widgets/widget_name", { 3178 "vlat": vlat, 3179 "vlon": vlon, 3180 "name": "Website - Save Coordinates Session" 3181 }); 3182 3183 populateSearchFields(); 3184 3185 // Clear flag 3186 isGettingLocation = false; 3187 $button.removeClass('clicked'); 3188 } else { 3189 $button.popover({ 3190 content: `Location request timed out. Please ensure location services are enabled and grant permission when prompted.`, 3191 container: 'body' 3192 }); 3193 $button.popover('show'); 3194 setTimeout(function() { 3195 $button.popover('hide'); 3196 }, 5000); 3197 } 3198 } else { 3199 showError(error); 3200 } 3201 }, geoOptions); 3202 }; 3203 3204 // Check if geolocation permission is already denied (but don't block if it's prompt) 3205 if (navigator.permissions && navigator.permissions.query) { 3206 navigator.permissions.query({name: 'geolocation'}).then(function(result) { 3207 if (result.state === 'denied') { 3208 isGettingLocation = false; 3209 $button.removeClass('clicked'); 3210 showError({code: 1, message: 'Permission denied'}); 3211 return; 3212 } else { 3213 // Permission is granted or prompt - proceed with geolocation 3214 attemptGetPosition(); 3215 } 3216 }).catch(function(err) { 3217 // If permission API not supported, proceed anyway 3218 attemptGetPosition(); 3219 }); 3220 } else { 3221 // Permission API not available, proceed with geolocation 3222 attemptGetPosition(); 3223 } 3224 }) 3225 } 3226 } else { 3227 console.log('Geolocation is not supported for this Browser/OS version yet.'); 3228 } 3229 function getUrlParameter(sParam) { 3230 var sPageURL = window.location.search.substring(1); 3231 var sURLVariables = sPageURL.split('&'); 3232 3233 for (var i = 0; i < sURLVariables.length; i++) { 3234 var sParameterName = sURLVariables[i].split('='); 3235 3236 if (sParameterName[0] == sParam) { 3237 return decodeURIComponent(sParameterName[1]); 3238 } 3239 } 3240 } 3241 </script>
3241 3242
3242<script> 3243 // switchClass() is jQuery UI (Effects), which is no longer loaded on every page. 3244 // removeClass().addClass() is the same class swap, applied immediately instead of 3245 // after animateClass()'s queued 400ms default. 3246 $(document).ready(function(){ 3247 $('.navbar-header .navbar-toggle.main_menu').click(function(){ 3248 $('.mobile-main-menu').toggleClass('opened'); 3249 }); 3250 $('.mobile-main-menu .sidebar-nav').find('li').each(function(){ 3251 $(this).addClass('hasChildren'); 3252 if ($(this).children('ul').length > 0){ 3253 $(this).prepend('<i class="fa fa-plus" aria-hidden="true"></i>'); 3254 $(this).find('a').after('<div class="clearfix"></div>'); 3255 $(this).find('span').after('<div class="clearfix"></div>'); 3256 } 3257 $(this).append('<div class="clearfix"></div>'); 3258 }); 3259 3260 $('.mobile-main-menu .sidebar-nav li i').click(function(){ 3261 if ($(this).parent().children('ul').length > 0){ 3262 $(this).parent().toggleClass('sub_open'); 3263 } 3264 if ($(this).hasClass('fa-plus')){ 3265 $(this).removeClass('fa-plus').addClass('fa-minus'); 3266 } else { 3267 $(this).removeClass('fa-minus').addClass('fa-plus'); 3268 } 3269 }); 3270 }) 3271 3272 if ($(window).width() > 740 && $(window).width() < 1100) { 3273 3274 $(document).ready(function(){ 3275 $('.tablet-menu .tablet-menu-ul').find('li').each(function(){ 3276 3277 if ($(this).children('ul').length > 0){ 3278 $(this).prepend('<i class="fa fa-plus tablet-fa hidden-sm hidden-md hidden-lg" aria-hidden="true"></i>'); 3279 $(this).find('a').after('<div class="clearfix"></div>'); 3280 var this_link = $(this).children('a').text().replace(/[^\x00-\x7F]/g, "");; 3281 $(this).children('a').html(this_link); 3282 $(this).find('span').after('<div class="clearfix"></div>'); 3283 } 3284 $(this).append('<div class="clearfix"></div>'); 3285 }); 3286 3287 $('.tablet-menu .tablet-menu-ul li i').click(function(){ 3288 3289 if ($(this).parent().children('ul').length > 0){ 3290 $(this).parent().toggleClass('sub_open'); 3291 3292 if ($(this).siblings( "ul" ).hasClass('tablet-block')){ 3293 $(this).siblings( "ul" ).removeClass('tablet-block').addClass('tablet-none'); 3294 } else { 3295 $(this).siblings( "ul" ).addClass( "tablet-block" ); 3296 3297 if ($(this).siblings( "ul" ).hasClass('tablet-none')){ 3298 $(this).siblings( "ul" ).removeClass('tablet-none') 3299 } 3300 3301 if ($(this).parent().siblings().children('ul').hasClass('tablet-block')) { 3302 $(this).parent().siblings().children('ul').removeClass('tablet-block').addClass('tablet-none'); 3303 $(this).parent().siblings().children('i').removeClass('fa-minus').addClass('fa-plus'); 3304 } 3305 3306 if ($(this).parent().siblings().children('ul').children().children('ul').hasClass('tablet-block')) { 3307 $(this).parent().siblings().children('ul').children().children('ul').removeClass('tablet-block').addClass('tablet-none'); 3308 $(this).parent().siblings().children('ul').children().children('i').removeClass('fa-minus').addClass('fa-plus'); 3309 } 3310 3311 if ($(this).siblings('ul').children('ul').children().children('ul').hasClass('tablet-block')) { 3312 $(this).siblings('ul').children('ul').children().children('ul').removeClass('tablet-block').addClass('tablet-none'); 3313 $(this).siblings('ul').children('ul').children().children('i').removeClass('fa-minus').addClass('fa-plus'); 3314 } 3315 3316 } 3317 3318 } 3319 3320 if ($(this).hasClass('fa-plus')){ 3321 $(this).removeClass('fa-plus').addClass('fa-minus'); 3322 } else { 3323 $(this).removeClass('fa-minus').addClass('fa-plus'); 3324 } 3325 }); 3326 }) 3327 } 3328 // Append unique ID attribute for mobile main menu links 3329 $('.mobile-main-menu a,.mobile-main-menu span').attr("id", function() { return $(this).attr("id") + "-mobile" }); 3330</script>
3330 3331
3332<script> 3333/* Keeps the announcement bar flush with the navbar: this widget's CSS emits static 50px 3334 offsets that are blind to the hide-menu settings, so a hidden or fixed compact-logo 3335 navbar leaves a gap or an overlap. Measure the real navbar state and own the offset. */ 3336(function () { 3337 function alignAnnouncementToNavbar() { 3338 var ann = document.querySelector('.announcement-bar'); 3339 if (!ann) { return; } 3340 /* above the widget's own offset breakpoints: restore stylesheet values */ 3341 if (window.innerWidth > 1100) { 3342 ann.style.removeProperty('margin-top'); 3343 ann.style.removeProperty('top'); 3344 return; 3345 } 3346 var navbar = document.querySelector('.header nav.navbar.navbar-default'); 3347 var navStyle = navbar ? window.getComputedStyle(navbar) : null; 3348 /* navbar hidden: the 50px offsets have nothing to clear, sit flush */ 3349 if (!navbar || navStyle.display === 'none') { 3350 ann.style.setProperty('margin-top', '0px', 'important'); 3351 ann.style.setProperty('top', '0px', 'important'); 3352 return; 3353 } 3354 if (window.innerWidth >= 768) { return; } 3355 /* only act while the navbar is pinned and showing the compact logo */ 3356 if (navStyle.position !== 'fixed') { return; } 3357 var logo = navbar.querySelector('.mobile_website_logo'); 3358 if (!logo || window.getComputedStyle(logo).display === 'none') { return; } 3359 var navRect = navbar.getBoundingClientRect(); 3360 var annRect = ann.getBoundingClientRect(); 3361 var delta = Math.round(navRect.bottom - annRect.top); /* >0 overlap, <0 gap */ 3362 if (delta === 0) { return; } 3363 var currentMt = parseFloat(window.getComputedStyle(ann).marginTop) || 0; 3364 var nextMt = currentMt + delta; 3365 /* a transient element above the bar during load can inflate the measure; a 3366 negative margin would pull the bar behind the navbar, so clamp at 0 */ 3367 if (nextMt < 0) { nextMt = 0; } 3368 /* !important to beat the widget's "margin-top: 50px !important" rule */ 3369 ann.style.setProperty('margin-top', nextMt + 'px', 'important'); 3370 } 3371 3372 function run() { 3373 alignAnnouncementToNavbar(); 3374 /* re-run after late layout shifts (fonts, async embeds) */ 3375 window.setTimeout(alignAnnouncementToNavbar, 250); 3376 window.setTimeout(alignAnnouncementToNavbar, 1200); 3377 } 3378 3379 if (document.readyState === 'loading') { 3380 document.addEventListener('DOMContentLoaded', run); 3381 } else { 3382 run(); 3383 } 3384 window.addEventListener('load', alignAnnouncementToNavbar); 3385 var resizeTimer; 3386 window.addEventListener('resize', function () { 3387 window.clearTimeout(resizeTimer); 3388 resizeTimer = window.setTimeout(alignAnnouncementToNavbar, 150); 3389 }); 3390})(); 3391</script>
vendor: 2 bytes, line 3391
3391
3392<script type="text/javascript"> 3393(function () { 3394 try { 3395 var email = new URLSearchParams(window.location.search).get('email'); 3396 if (!email) { return; } 3397 email = email.trim(); 3398 if (email.indexOf('@') === -1) { return; } 3399 /* Sets the input value property (never HTML) -> XSS-safe regardless of the query value. */ 3400 var fill = function () { 3401 var fields = document.querySelectorAll('input[name="email_r"]'); 3402 for (var i = 0; i < fields.length; i++) { 3403 if (!fields[i].value) { fields[i].value = email; } 3404 } 3405 }; 3406 if (document.readyState === 'loading') { 3407 document.addEventListener('DOMContentLoaded', fill); 3408 } else { 3409 fill(); 3410 } 3411 } catch (e) {} 3412})(); 3413</script>
vendor: 2 bytes, line 3413
3413
3414<script> 3415 $('#captchaContainer').removeClass('form-control '); 3416 $(".website_url_field").keyup(function(){ 3417 var fieldName = $(this).attr('name'); 3418 $(this).val($(this).val().replace(/\s+/g, '')); 3419 $('#myform').formValidation('revalidateField', fieldName); 3420 }); 3421</script>
3421 3422
3422<script src="https://www.optimizecdn.com/directory/cdn/bootstrap/formvalidation/current/dist/js/formValidation.min.js"></script>
3422 3423
3423<script src="https://www.optimizecdn.com/directory/cdn/bootstrap/formvalidation/current/dist/js/framework/bootstrap.min.js"></script>
3423 3424
3424<script type="text/javascript"> 3425 function decodeHtml(html) { 3426 var txt = document.createElement("textarea"); 3427 txt.innerHTML = html; 3428 return txt.value; 3429 } 3430 3431 // Override FormValidation URI validator to prevent recursion with URLs that contain @ characters 3432 $(function() { 3433 function applyFix() { 3434 // Check if FormValidation library and URI validator are loaded 3435 if (FormValidation && FormValidation.Validator && FormValidation.Validator.uri) { 3436 FormValidation.Validator.uri.validate = function(validator, $field, options) { 3437 var value = validator.getFieldValue($field, 'uri').trim(); 3438 return value === '' || new RegExp('^https?://[^\\s]+\\.[^\\s]{2,}').test(value); 3439 }; 3440 return true; 3441 } 3442 return false; 3443 } 3444 3445 if (!applyFix()) { 3446 setTimeout(applyFix, 50); 3447 } 3448 }); 3449 </script>
3449 3450
3450<script type="text/javascript"> 3451 3452 var counterSubmit = 0; 3453 $(document).ready(function() { 3454 /* grecaptcha.reset() with no argument always resets widget 0. On a page with two 3455 captcha holders that clears the wrong checkbox, so the widget the visitor solved 3456 keeps a token Google has already spent and every retry fails the security check. 3457 captchaHolders is published by widget 1995 keyed by "<formId>-google-recaptcha"; 3458 an undefined id means no per-form id is known and the arg-less call is used, 3459 exactly as before. */ 3460 function bdCaptchaWidgetId(formId) { 3461 if (typeof captchaHolders === "undefined" || !formId) { 3462 return undefined; 3463 } 3464 /* recaptcha.php renames each holder to "<id>-<counter>" before render (recaptcha.php ~L84), 3465 so captchaHolders is keyed by the RENAMED id - not "<formId>-google-recaptcha". Resolve from 3466 the holder element itself so the counter never has to be reconstructed. */ 3467 var form = document.getElementById(formId); 3468 var holder = form && form.querySelector(".g-recaptcha"); 3469 return holder ? captchaHolders[holder.id] : undefined; 3470 } 3471 3472 function bdCaptchaReset(formId) { 3473 if (typeof grecaptcha === "undefined" || typeof grecaptcha.reset !== "function") { 3474 return; 3475 } 3476 var widgetId = bdCaptchaWidgetId(formId); 3477 if (widgetId === undefined) { 3478 grecaptcha.reset(); 3479 } else { 3480 grecaptcha.reset(widgetId); 3481 } 3482 } 3483 3484 // Ghost-field strip (card d4tk1CMp): the server-side validator config can carry 3485 // rules for fields that are NOT rendered in this form (conditionally-rendered or 3486 // duplicated form configs). Those phantom rules make formValidation mis-evaluate 3487 // isValid(), so an empty required field bypasses validation and submits natively. 3488 // Remove any rule whose field has no matching element before initializing. 3489 // NOTE: this is the ONLY layer re-applied from reverted PR #5902. It strictly 3490 // REMOVES rules (never adds validators, never overrides native submit, never 3491 // intercepts on capture phase, never re-validates on click) â so it cannot 3492 // reproduce the "Save button slides down / nav broken / no success message" 3493 // regression that caused #5902 to be rolled back on site 19413. 3494 var validatorConfig = {"framework":"bootstrap","addOns":{"reCaptcha2":{"element":"captchaContainer","language":"en","theme":"light","siteKey":"6Lcl1dsdAAAAAF_yTMn325ctS8EtemB1Ot6F4pfS","timeout":"120","message":"The captcha is not valid"}},"fields":{"email":{"validators":{"notEmpty":{"message":"Please enter a value"},"emailAddress":{"message":"Please enter a valid email address"}}},"pass":{"validators":{"notEmpty":{"message":"Please enter a value"}}}}}; 3495 var formElement = $(`form[name='member_login_190']`); 3496 if(validatorConfig && validatorConfig.fields) { 3497 Object.keys(validatorConfig.fields).forEach(function(fieldName) { 3498 if(formElement.find('[name="' + fieldName + '"]').length === 0) { 3499 delete validatorConfig.fields[fieldName]; 3500 } 3501 }); 3502 } 3503 3504 // Scroll to the first invalid field when submit fails validation, 3505 // so the user can immediately see why the form will not submit 3506 formElement.on('err.form.fv', function(e) { 3507 var $firstError = $(e.target).find('.form-group.has-error').first(); 3508 if ($firstError.length) { 3509 $('html, body').animate({ scrollTop: $firstError.offset().top - 100 }, 700); 3510 } 3511 }); 3512
3513 formElement.formValidation(validatorConfig).on('success.form.fv', function(e,fvdata) { 3514 3515 if('member_login' == 'unsubscribe_email'){ 3516 return true; 3517 } 3518 // Prevent form submission 3519 e.preventDefault(); 3520 $form = $(e.target), 3521 fv = $form.data('formValidation'); 3522 3523 // Check HTML5 required fields that FormValidation may not know about 3524 var requiredEmpty = false; 3525 $form.find('[required]').each(function() { 3526 var val = $(this).val(); 3527 if (val === '' || val === null || (typeof val === 'string' && val.trim() === '')) { 3528 requiredEmpty = true; 3529 $(this).closest('.form-group').addClass('has-error'); 3530 if ($(this).siblings('.required-error').length === 0) { 3531 $(this).after('<small class="required-error help-block" style="color:#a94442;">Please enter a value</small>'); 3532 } 3533 } else { 3534 var $reqGroup = $(this).closest('.form-group'); 3535 $(this).siblings('.required-error').remove(); 3536 // Keep has-error if another validator is still failing for this field 3537 if ($reqGroup.find('small[data-fv-validator][data-fv-result="INVALID"]').length === 0) { 3538 $reqGroup.removeClass('has-error'); 3539 } 3540 } 3541 }); 3542 if (requiredEmpty) { 3543 fv.disableSubmitButtons(false); 3544 counterSubmit = 0; 3545 // Scroll to the first field with an error (HTML5-required scan does 3546 // not trigger err.form.fv, so handle the scroll here too) 3547 var $firstReqError = $form.find('.form-group.has-error').first(); 3548 if ($firstReqError.length) { 3549 $('html, body').animate({ scrollTop: $firstReqError.offset().top - 100 }, 700); 3550 } 3551 return false; 3552 } 3553 3554 var values = $(this).serialize(); 3555 3556 3557 var locationFieldCorrect = true; 3558 3559 if($("#member_login_190 .location_required").length > 0){ 3560 $("#member_login_190 .location_required").each(function (index) { 3561 if($(this).data('state') == 1){ 3562 if($('#member_login_190 input[name="lead_location"]').val() == "" || $('#member_login_190 input[name="lat"]').val() == "" || $('#member_login_190 input[name="lng"]').val() == "") { 3563 locationFieldCorrect = false; 3564 } 3565 } 3566 }); 3567 } 3568 3569 if(locationFieldCorrect === false){ 3570 //check that there is a latitude or longitude 3571 swal(`Whoops!`, `The location information is required to submit this form`, "error"); 3572 return false; 3573 } 3574 3575 3576 if (!$(this).attr("action")) { 3577 var action = ''; 3578 3579 } else { 3580 var action = $(this).attr("action"); 3581 } 3582 if (!$(this).attr("method")) { 3583 var method = 'post'; 3584 3585 } else { 3586 var method = $(this).attr("method"); 3587 } 3588 if (!$(this).attr("form_action_type")) { 3589 var form_action_type = 'notification'; 3590 3591 } else { 3592 var form_action_type = $(this).attr("form_action_type"); 3593 } 3594 if (!$(this).attr("form_action_div")) { 3595 /* Empty "ID to Replace" default: prefer #main-content, fall back to legacy #first_container if absent */ 3596 var form_action_div = $('#main-content').length ? '#main-content' : '#first_container'; 3597 3598 } else { 3599 var form_action_div = $(this).attr("form_action_div"); 3600 } 3601 if (!$(this).attr("return_data_type")) { 3602 var return_data_type = 'json'; 3603 3604 } else { 3605 var return_data_type = $(this).attr("return_data_type"); 3606 } 3607 var submitInFlight = counterSubmit != 0 || (Date.now() - ($form.data('bdLastSubmitAt') || 0) < 5000); 3608 if (!submitInFlight) { 3609 if ($("#member_login_190-notification").html() != "") { 3610 $("#member_login_190-notification").remove(); 3611 } 3612 if ($(this).find('input[type="submit"]').length > 0) { 3613 $(this).find('input[type="submit"]').before('<div id="member_login_190-notification" class="alert"></div>'); 3614 3615 } else { 3616 $(this).prepend('<div id="member_login_190-notification" class="alert"></div>'); 3617 } 3618 } 3619 var notification = $("#member_login_190-notification"); 3620 3621 if ((form_action_type == "" || form_action_type == "default") && action.indexOf("account") >= 0) { 3622 notification.html(`Processing Request...`).addClass("alert-warning-subtle"); 3623 setTimeout(function(){ 3624 fv.defaultSubmit(); 3625 }, 100); 3626 } else { 3627 notification.html(`Processing Request...`).addClass("alert-warning-subtle"); 3628 if(!submitInFlight) { 3629 counterSubmit++; 3630 $form.data('bdLastSubmitAt', Date.now()); 3631 3632 var fields = $(this).serializeArray(); 3633 var formField = []; 3634 var processData = true; 3635 var contentType = "application/x-www-form-urlencoded; charset=UTF-8"; 3636 3637 3638 3639 if($("#member_login_190 input[type=file]").length > 0){ 3640 3641 var formObject = new FormData(); 3642 processData = false; 3643 contentType = false; 3644 3645 $(fields).each(function(index,field){ 3646 formField.push(field.name+"="+field.value); 3647 }); 3648 3649 values = formField.join("&"); 3650 3651 $(formField).each(function(index,fieldValue){ 3652 var fieldInfo = fieldValue.split('='); 3653 formObject.append(fieldInfo[0],fieldInfo[1]); 3654 }); 3655 3656 $("#member_login_190 input[type=file]").each(function(index,node){ 3657 var file = this.files[0]; 3658 if(typeof file != "undefined"){ 3659 formObject.append("file_addon["+$(node).attr('name')+"]", file, file.name); 3660 } 3661 }); 3662 }else{ 3663 3664 $(fields).each(function(index,field){ 3665 formField.push(field.name+"="+encodeURIComponent(field.value)); 3666 }); 3667 3668 var formObject = formField.join("&"); 3669 } 3670 3671 $.ajax({
3672 url: action, 3673 type: method, 3674 data: formObject, 3675 dataType: return_data_type, 3676 processData: processData, 3677 contentType: contentType, 3678 success: function (data) { 3679 // Re-query live node: success.form.fv fires twice, orphaning the closure ref captured above. 3680 notification = $("#member_login_190-notification"); 3681 if (return_data_type == "html") { 3682 var result = 'success'; 3683 3684 if (!data != "") { 3685 var result_widget = data['result_widget']; 3686 } 3687 3688 } else { 3689 3690 3691 if (!data['result']) { 3692 var result = 'error'; 3693 } else { 3694 var result = data['result']; 3695 } 3696 if (!data['result_widget']) { 3697 var result_widget = ''; 3698 3699 } else { 3700 var result_widget = data['result_widget']; 3701 } 3702 } 3703 if (result == "success") { 3704 3705 if (!data['message']) { 3706 var message = `Your information has submitted successfully!`; 3707 3708 } else { 3709 var message = data['message']; 3710 } 3711 if (!data['redirect_url']) { 3712 var redirect_url = ''; 3713 3714 } else { 3715 var redirect_url = data['redirect_url']; 3716 } 3717 3718 3719 3720 if (form_action_type == "notification") { 3721 if (redirect_url && (action.indexOf('Member%20Login%20Page') >= 0 || action.indexOf('Member Login Page') >= 0)) { 3722 if (redirect_url.substring(0, 1) != "/" && redirect_url.substring(0, 1) != "h") { 3723 redirect_url = "/" + redirect_url; 3724 } 3725 if (notification.parents('.modal').length) { 3726 $('.modal-backdrop').hide(); 3727 $('.modal').modal('hide'); 3728 } 3729 window.location.href = redirect_url; 3730 fv.resetForm(true); 3731 } else { 3732 notification.html(message + '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>') 3733 .addClass('alert-dismissible') 3734 .addClass("alert-success-subtle") 3735 .removeClass("alert-danger-subtle") 3736 .removeClass("alert-warning-subtle") 3737 3738 3739 3740 if(notification.parents('.modal').length && 'member_login_190' == 'whmcs_billing_address'){ 3741 setTimeout(function(){ 3742 notification.parents('.modal').modal('hide'); 3743 }, 1000); 3744 } 3745 } 3746 3747 } else if (form_action_type == "widget") { 3748 3749 if (result_widget != '') { 3750 3751 setTimeout(function(){ 3752 if(form_action_div != '.newsletter_modal_form_container'){ 3753 $("html, body").animate({ scrollTop: 0 }, 600); 3754 } 3755 $(form_action_div).html(decodeHtml(result_widget)).text(); 3756 3757 }, 1000); 3758 } 3759 3760 } else if (form_action_type == "redirect") { 3761 3762 if (redirect_url == "") { 3763 redirect_url = decodeURIComponent(""); 3764 } 3765 3766 if (redirect_url.substring(0, 1) != "/" && redirect_url.substring(0, 1) != "h") { 3767 redirect_url = "/" + redirect_url; 3768 } 3769 current_location = "/about"; 3770 refresh_pages_string = "/login"; 3771 refresh_pages_string = refresh_pages_string.replace(/ /g,''); 3772 refresh_pages_array = refresh_pages_string.split(','); 3773 notification.html(message) 3774 .addClass("alert-success-subtle") 3775 .removeClass("alert-danger-subtle") 3776 .removeClass("alert-warning-subtle") 3777 .delay(2000).slideUp(); 3778 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" )){ 3779 window.location.href = window.location.href+'?logged'; 3780 } else { 3781 window.location.href = redirect_url; 3782 } 3783 3784 fv.resetForm(true); 3785 } 3786 if(form_action_div != '.newsletter_modal_form_container' && 'member_login_190' != 'whmcs_billing_address'){ 3787 $('.modal-backdrop').hide(); 3788 } 3789 } else { 3790 bdCaptchaReset(formElement.attr('id')); 3791 if (!data['message']) { 3792 var message = `You entered invali
3792d data. Please try to save again.`; 3793 3794 } else { 3795 var message = data['message']; 3796 } 3797 $("#member_login_190-notification").html(message) 3798 .addClass("alert-danger-subtle") 3799 .removeClass("alert-success-subtle") 3800 .removeClass("alert-warning-subtle") 3801 .fadeIn(); 3802 fv.disableSubmitButtons(false); 3803 } 3804 counterSubmit = 0; 3805 }, 3806 error: function (e) { 3807 3808 if(typeof grecaptcha !== "undefined" && typeof grecaptcha.reset === "function"){ 3809 bdCaptchaReset(formElement.attr('id')); 3810 $("#member_login_190-notification").html(`Recaptcha Error`); 3811 } else { 3812 $("#member_login_190-notification").html(`A connection error occurred while saving. Please try to save again.`); 3813 } 3814 $("#member_login_190-notification").addClass("alert-warning-subtle") 3815 .removeClass("alert-success-subtle") 3816 .removeClass("alert-warning-subtle") 3817 .fadeIn(); 3818 counterSubmit = 0; 3819 } 3820 });/// End Ajax 3821 } 3822 }//END else 3823 }).bind('keydown', function(event) { 3824 3825 if (event.ctrlKey || event.metaKey) { 3826 3827 switch (String.fromCharCode(event.which).toLowerCase()) { 3828 3829 case 's': 3830 var nativeForm = $(this)[0]; 3831 if (nativeForm && typeof nativeForm.reportValidity === 'function' && !nativeForm.reportValidity()) { 3832 event.preventDefault(); 3833 return false; 3834 } 3835 $(this).submit(); 3836 break; 3837 } 3838 } 3839 }); 3840 3841 /// This will turn any select2 that are required in the form builder to being required elements. 3842 $('#member_login_190 select').each(function (i, obj) { 3843 setTimeout(function(){ 3844 if ($(obj).prop("required") && $(obj).attr("style") == "display: none;") { 3845 $(obj).css("z-index","-999"); 3846 $(obj).css("height","0"); 3847 $(obj).css("width","0"); 3848 $(obj).css("display","block"); 3849 $(obj).css("position","absolute"); 3850 } 3851 }, 3000); 3852 }); 3853 3854 // Clear required-error messages when user fills in a required field 3855 $('#member_login_190').on('keyup change', '[required]', function() { 3856 var val = $(this).val(); 3857 if (val !== '' && val !== null && val.trim() !== '') { 3858 var $group = $(this).closest('.form-group'); 3859 // Remove only this handler's own required message 3860 $(this).siblings('.required-error').remove(); 3861 // Keep has-error if another FormValidation validator is still failing 3862 // (e.g. stringLength, regexp). has-error is shared, so removing it 3863 // wholesale would clobber other validators' red styling. 3864 if ($group.find('small[data-fv-validator][data-fv-result="INVALID"]').length === 0) { 3865 $group.removeClass('has-error'); 3866 } 3867 } 3868 }); 3869 3870 });//END $('# echo $_SERVER[form_element_id]; ').formValidation( 3871 </script>
3871 3872
3872<script> 3873 window.addEventListener('load', (event) => { 3874 setTimeout(() => { 3875 }, 501); 3876 }); 3877 </script>
vendor: 2 bytes, line 3877
3877
3878<script> 3879 function decision(message, url) { 3880 if (confirm(message)) { 3881 setTimeout(function () { 3882 window.location = url; 3883 }, 0); 3884 } 3885 } 3886</script>
vendor: 2 bytes, line 3886
3886
3887<script> 3888 // Function to add alt, width, and height attributes to <img> elements without them 3889 function addAttributesToImages() { 3890 var images = document.querySelectorAll('img:not([alt]), img:not([width]), img:not([height])'); 3891 Array.prototype.forEach.call(images, function(img) { 3892 // Skip if we've already processed this image 3893 if (img.dataset.processed === 'true') { 3894 return; 3895 } 3896 3897 // Mark this image as being processed 3898 img.dataset.processed = 'true'; 3899 3900 // Add alt attribute if missing 3901 if (!img.hasAttribute('alt')) { 3902 var src = img.getAttribute('src') || 'image'; // Default src to 'image' if missing 3903 var altText = src.split('/').pop().split('?')[0].replace(/\.\w+$/, ''); 3904 3905 try { 3906 altText = decodeURIComponent(altText) 3907 .replace(/[_\-+,.:;]+/g, ' ') 3908 .replace(/\s+/g, ' ') 3909 .trim(); 3910 } catch (e) { 3911 altText = 'image'; // Fallback to 'image' if decoding fails 3912 } 3913 3914 // Ensure altText is not empty, otherwise use 'image' 3915 altText = altText || 'image'; 3916 3917 img.setAttribute('alt', altText); 3918 } 3919 3920 // Add width and height attributes if missing 3921 if (!img.hasAttribute('width') || !img.hasAttribute('height')) { 3922 // Handle SVG differently 3923 if (img.src && img.src.endsWith('.svg')) { 3924 // For SVG, use the viewBox to set width and height, if available 3925 fetch(img.src) 3926 .then(response => { 3927 if (!response.ok) { 3928 throw new Error('Failed to fetch SVG: ' + response.status); 3929 } 3930 return response.text(); 3931 }) 3932 .then(svgText => { 3933 var parser = new DOMParser(); 3934 var svgDoc = parser.parseFromString(svgText, "image/svg+xml"); 3935 var svgElement = svgDoc.querySelector('svg'); 3936 3937 if (svgElement) { 3938 var viewBox = svgElement.getAttribute('viewBox'); 3939 if (viewBox) { 3940 var viewBoxValues = viewBox.split(' '); 3941 var width = viewBoxValues[2]; 3942 var height = viewBoxValues[3]; 3943 3944 if (!img.hasAttribute('width')) { 3945 img.setAttribute('width', width); 3946 } 3947 if (!img.hasAttribute('height')) { 3948 img.setAttribute('height', height); 3949 } 3950 } 3951 } 3952 }) 3953 .catch(error => { 3954 // Fallback to default dimensions for SVG 3955 if (!img.hasAttribute('width')) { 3956 img.setAttribute('width', '100'); 3957 } 3958 if (!img.hasAttribute('height')) { 3959 img.setAttribute('height', '100'); 3960 } 3961 }); 3962 } else { 3963 // For non-SVG images, use natural dimensions 3964 var tempImg = new Image(); 3965 tempImg.src = img.src; 3966 3967 tempImg.onload = function() { 3968 if (!img.hasAttribute('width')) { 3969 img.setAttribute('width', tempImg.naturalWidth); 3970 } 3971 if (!img.hasAttribute('height')) { 3972 img.setAttribute('height', tempImg.naturalHeight); 3973 } 3974 }; 3975 3976 tempImg.onerror = function() { 3977 // Fallback to default dimensions 3978 if (!img.hasAttribute('width')) { 3979 img.setAttribute('width', '100'); 3980 } 3981 if (!img.hasAttribute('height')) { 3982 img.setAttribute('height', '100'); 3983 } 3984 }; 3985 } 3986 } 3987 }); 3988 } 3989 3990 document.addEventListener('DOMContentLoaded', function() { 3991 // Run the function initially to catch images already in the DOM 3992 addAttributesToImages(); 3993 3994 // Create a MutationObserver to monitor the DOM for added/changed images 3995 var observer = new MutationObserver(function(mutations) { 3996 mutations.forEach(function(mutation) { 3997 if (mutation.addedNodes.length > 0 || mutation.type === 'attributes') { 3998 // Only process if we have new images or src attribute changes 3999 var hasNewImages = false; 4000 4001 if (mutation.addedNodes.length > 0) { 4002 mutation.addedNodes.forEach(function(node) { 4003 if (node.nodeType === 1) { // Element node 4004 if (node.tagName === 'IMG' || node.querySelectorAll) { 4005 hasNewImages = true; 4006 } 4007 } 4008 }); 4009 } 4010 4011 if (mutation.type === 'attributes' && mutation.attributeName === 'src') { 4012 hasNewImages = true; 4013 } 4014 4015 if (hasNewImages) { 4016 addAttributesToImages(); 4017 } 4018 } 4019 }); 4020 }); 4021 4022 // Start observing the document body for changes 4023 observer.observe(document.body, { 4024 childList: true, // Watch for added or removed nodes 4025 subtree: true, // Watch the entire subtree 4026 attributes: true, // Watch for attribute changes 4027 attributeFilter: ['src'] // Specifically watch for changes in the 'src' attribute 4028 }); 4029 }); 4030</script>
4030<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] { 4031 cursor: wait 4032} 4033select.select2-preload { 4034 line-height: initial; 4035} 4036 4037select#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"] { 4038 -webkit-appearance: none; 4039 -moz-appearance: none; 4040 appearance: none; 4041 background-image: url(/images/select2ArrowDown.png) !important; 4042 background-repeat: no-repeat !important; 4043 background-size: 10px 9px !important; 4044 background-position: 99% 16px; 4045 border-radius: 6px; 4046 overflow: hidden; 4047} 4048.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"] { 4049 background-position: 98.2% 12px; 4050} </style>
4050<script> 4051 // Function to add aria-label to <select> elements without it, for better pagespeed accessibility score 4052 $(document).ready(function() { 4053 var ariaLabelCounter = {}; // Object to keep track of aria-label counts for uniqueness 4054 4055 // Iterate over each select element that does not have an aria-label 4056 $('select:not([aria-label])').each(function() { 4057 // Use the ID or placeholder as the base for the aria-label, stripping HTML tags 4058 var baseLabel = this.id || $(this).attr('placeholder') || 'select'; 4059 baseLabel = baseLabel.replace(/<[^>]*>/g, '').trim(); // Remove HTML tags and trim 4060 4061 // Ensure uniqueness of each aria-label 4062 ariaLabelCounter[baseLabel] = (ariaLabelCounter[baseLabel] || 0) + 1; 4063 var ariaLabel = baseLabel + '-' + ariaLabelCounter[baseLabel]; 4064 4065 // Truncate aria-label to 100 characters 4066 ariaLabel = ariaLabel.length > 100 ? ariaLabel.substring(0, 100) : ariaLabel; 4067 4068 // Set the aria-label attribute to the unique label 4069 $(this).attr('aria-label', ariaLabel); 4070 }); 4071 }); 4072</script>
vendor: 2 bytes, line 4072
4072
4073<script type="application/ld+json"> 4074{ 4075 "@context": "https://schema.org", 4076 "@graph": [ 4077 { 4078 "@type": "WebSite", 4079 "@id": "https://thebandbiz.com/#website", 4080 "name": "thebandbiz.com", 4081 "url": "https://thebandbiz.com/", 4082 "inLanguage": "en-US", 4083 "potentialAction": { 4084 "@type": "SearchAction", 4085 "target": "https://thebandbiz.com/sitesearch?q={search_term_string}", 4086 "query-input": "required name=search_term_string", 4087 "name": "Search Directory: thebandbiz.com" 4088 }, 4089 "publisher": { 4090 "@id": "https://thebandbiz.com/#organization" 4091 } 4092 }, 4093 { 4094 "@type": "Organization", 4095 "@id": "https://thebandbiz.com/#organization", 4096 "name": "thebandbiz.com", 4097 "description": "Browse top-rated bands and solo artists for weddings, private parties, and venues. Discover live music talent near you.", 4098 "url": "https://thebandbiz.com/", 4099 "mainEntityOfPage": { 4100 "@type": "WebPage", 4101 "@id": "https://thebandbiz.com/#webpage" 4102 }, 4103 "contactPoint": [ 4104 { 4105 "@type": "ContactPoint", 4106 "email": "[email protected]", 4107 "contactType": "customer support", 4108 "availableLanguage": [ 4109 "en" 4110 ], 4111 "areaServed": "US" 4112 } 4113 ], 4114 "areaServed": { 4115 "@type": "Country", 4116 "name": "US" 4117 }, 4118 "sameAs": [ 4119 "https://www.facebook.com/thebandbiz#" 4120 ], 4121 "logo": { 4122 "@type": "ImageObject", 4123 "@id": "https://thebandbiz.com/#logo", 4124 "url": "/images/bandbizlogo2.png" 4125 }, 4126 "image": { 4127 "@type": "ImageObject", 4128 "@id": "https://thebandbiz.com/#image", 4129 "url": "/images/bandbizlogo2.png" 4130 }, 4131 "keywords": [ 4132 "find a band", 4133 "hire a wedding band", 4134 "book live music", 4135 "solo artist for hire", 4136 "bands for events", 4137 "live performers", 4138 "event entertainment", 4139 "music for parties", 4140 "thebandbiz.com", 4141 "Video Showcase of Bands & Soloist", 4142 "Wedding Bands | DJ's | Bar Bands | Solo Musicians" 4143 ] 4144 } 4145 ] 4146}</script>
4146 4147
4148<script> 4149// Bootstrap Icons fallback loader - ensures Bootstrap Icons work even if HEAD widget is customized, do not delete 4150(function() { 4151 if (!document.querySelector('link[href*="bootstrap-icons"]')) { 4152 var link = document.createElement('link'); 4153 link.rel = 'stylesheet'; 4154 link.href = 'https://www.optimizecdn.com/directory/cdn/assets/bootstrap/fonts/bootstrap-icons.min.css?v=1.13.1'; 4155 document.head.appendChild(link); 4156 } 4157})(); 4158</script>
4158 4159<style type='text/css'> .input-group.normal-autosuggest input,.input-group.sm-autosuggest input, .input-group.md-autosuggest input { 4160 } 4161.normal-autosuggest .twitter-typeahead, .sm-autosuggest .twitter-typeahead, .md-autosuggest .twitter-typeahead, .large-autosuggest .twitter-typeahead { 4162 display: inline-block; 4163 height: 25px; 4164 position: relative; 4165 width: 100%; 4166} 4167.input-group.normal-autosuggest .twitter-typeahead, .input-group.sm-autosuggest .twitter-typeahead, .input-group.large-autosuggest .twitter-typeahead:not(.search_box .twitter-typeahead) { 4168 width: inherit; 4169} 4170.normal-autosuggest .twitter-typeahead .clear_content.medium{ 4171 bottom: 0px; 4172} 4173.sm-autosuggest .twitter-typeahead .clear_content.small{ 4174 bottom: -4px; 4175} 4176.md-autosuggest.input-group .twitter-typeahead .clear_content.medium { 4177 bottom: -2px; 4178} 4179.md-autosuggest .twitter-typeahead { 4180 height: 32px; 4181} 4182.md-autosuggest .input-group-addon + .input_wrapper .twitter-typeahead { 4183 height: 38px; 4184 vertical-align: top; 4185} 4186.md-autosuggest-input + .clear_content.medium { 4187 bottom: 0px; 4188} 4189.large-autosuggest .twitter-typeahead { 4190 height: 40px; 4191} 4192.normal-autosuggest .twitter-typeahead{ 4193 height: 38px; 4194} 4195.normal-autosuggest .twitter-typeahead .tt-hint, .sm-autosuggest .twitter-typeahead .tt-hint { 4196 background: #fff !important; 4197 border: 1px solid #ccc!important; 4198 border-radius: 0 8px 8px 0; 4199 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset!important; 4200 color: transparent; 4201 left: 0; 4202 padding: 4px 11px; 4203 position: absolute; 4204 top: 0; 4205 width: 100%; 4206 font-size:12px; 4207} 4208.normal-autosuggest.input-group-addon .fa, .sm-autosuggest .input-group-addon .fa, .input-group-sm .input-group-addon .fa {font-size:12px} 4209.md-autosuggest .twitter-typeahead .tt-hint { 4210 height: 100%; 4211 background: #ffffff none repeat scroll 0 0 !important; 4212 border: 1px solid #cccccc !important; 4213 border-radius: 0 8px 8px 0; 4214 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset !important; 4215 color: rgba(0, 0, 0, 0); 4216 left: 0; 4217 padding: 6px 11px; 4218 position: absolute; 4219 top: 0; 4220 width: 100%; 4221} 4222.large-autosuggest {background: #fff !important;border-radius:10px;} 4223.large-autosuggest input {width: 100%!important;box-shadow:none; border-radius: 10px;} 4224.large-autosuggest .twitter-typeahead .tt-hint { 4225 background: #fff !important; 4226 border: 1px solid #ccc!important; 4227 border-radius: 10px; 4228 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset!important; 4229 color: transparent; 4230 left: 0; 4231 position: absolute; 4232 top: 0; 4233 width: 100%; 4234 font-size: 18px; 4235 height: 46px; 4236 line-height: 1.33333; 4237 padding: 10px 15px; 4238} 4239.tt-dataset .empty-message { 4240 display: none !important; 4241} 4242.twitter-typeahead .tt-query {background-color:#fff!important} 4243.input-group.large-autosuggest span:first-child .tt-hint {border-radius: 0 !important;} 4244span.tt-dropdown-menu { 4245 border: 1px solid #FCFCFC; 4246 border-radius: 5px; 4247 box-shadow: 0 5px 10px rgba(0,0,0,.2); 4248 width: 100% !important; 4249} 4250.tt-is-under-cursor a.suggest-link { 4251 background: #55ACEE; 4252} 4253 4254.tt-is-under-cursor .media-heading, 4255.tt-is-under-cursor .suggest-origin, 4256.tt-is-under-cursor .location{ 4257 color:#fff!important; 4258} 4259.tt-suggestion .media .media-body .suggest-origin { 4260 color: rgba(45, 91, 137,0.9); 4261 padding: 1px 0; 4262 border-radius: 6px; 4263 font-weight: bold; 4264 line-height: 12px; 4265} 4266.tt-suggestion { 4267 background: #fff; 4268 border-bottom: 1px solid #eee; 4269 -webkit-transition: all 0.3s ease-in-out; 4270 -moz-transition: all 0.3s ease-in-out; 4271 -o-transition: all 0.3s ease-in-out; 4272 transition: all 0.3s ease-in-out; 4273} 4274body .tt-suggestions .media.br-bottom img { 4275 max-width: 45px; 4276 height: auto; 4277} 4278body .tt-suggestions .media-body span { 4279 font-size: 10px; 4280} 4281body .tt-suggestions .media-body h4 { 4282 font-size: 12px; 4283 margin: 2px 0px; 4284 text-transform: capitalize; 4285} 4286a.suggest-link { 4287 padding: 5px; 4288 display: block; 4289} 4290a.suggest-link img { 4291 border-radius: 100px; 4292 display: block; 4293 margin: 0 auto; 4294 height: 100%!important; 4295 width: 100%; 4296 object-fit: cover; 4297} 4298.left-suggest-col { 4299 display: inline-block; 4300 vertical-align: middle; 4301 width: 44px; 4302 height: 44px;
4303} 4304.right-suggest-col { 4305 display: inline-block; 4306 padding-left: 1%; 4307 text-align: left; 4308 vertical-align: middle; 4309 width: calc(100% - 1% - 50px); 4310} 4311p.media-heading { 4312 color: #333; 4313 font-size: 12px; 4314 font-weight: 600; 4315 margin-bottom: 0; 4316} 4317p.suggest-origin { 4318 font-size: 10px; 4319 color: #333; 4320 margin:0; 4321} 4322p.location { 4323 color: #333; 4324 font-size: 10px; 4325 margin: 2px 0; 4326} 4327body .tt-is-under-cursor a.suggest-link { 4328 background: #F7F7F7; 4329} 4330body .tt-is-under-cursor .media-heading, body .tt-is-under-cursor .suggest-origin, body .tt-is-under-cursor .location { 4331 color: #333!important; 4332} 4333a.suggest-link[data-heading="heading"] { 4334 pointer-events: none; 4335 cursor: default; 4336 text-decoration: none; 4337} 4338body .tt-is-under-cursor a.suggest-link[data-heading="heading"] { 4339 background: rgb(0, 0, 0); 4340} 4341/* --- all the novalue css --- */ 4342a.suggest-link .suggest-origin[data-state="novalue"] { 4343 display: none; 4344} 4345a.suggest-link .location[data-state="novalue"] { 4346 display: none; 4347} 4348a.suggest-link img[data-state="novalue"] { 4349 display: none; 4350} 4351a.suggest-link .suggest-origin[data-state="heading"] { 4352 display: none; 4353} 4354a.suggest-link .media-heading[data-heading="heading"] { 4355 color:rgb(255, 255, 255)!important; 4356 font-weight: bold; 4357 padding: 4px; 4358 font-size: 13px; 4359} 4360.left-suggest-col[data-photo="novalue"], .left-suggest-col[data-photo="undefined"] { 4361 display: none; 4362} 4363.right-suggest-col[data-photo="novalue"], .right-suggest-col[data-photo="undefined"] { 4364 width: 100%; 4365} 4366a.suggest-link[href="novalue"] { 4367 cursor: default !important; 4368 pointer-events: none; 4369} 4370a.suggest-link[data-heading="heading"] { 4371 background-color: rgb(0, 0, 0); 4372} 4373div.content-shell { 4374 overflow: inherit; 4375} 4376span.tt-dropdown-menu div { 4377 float: none; 4378} 4379.tt-menu { 4380 border-radius: 0 0 6px 6px; 4381 box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); 4382 overflow: hidden; 4383 width: 100%; 4384 z-index: 150 !important; 4385} 4386.tt-menu .tt-dataset { 4387 overflow-y: auto; 4388 max-height: 200px; 4389} </style>
4389<script type="text/javascript"> 4390 4391 if (typeof decodeHtml != "function") { 4392 function decodeHtml(html) { 4393 var txt = document.createElement("textarea"); 4394 txt.innerHTML = html; 4395 return txt.value; 4396 } 4397 } 4398 function initializeTypeheadMember_search() { 4399 var member_searchEngine = new Bloodhound({ 4400 initialize: false, 4401 datumTokenizer: function (d) { 4402 return Bloodhound.tokenizers.whitespace(value); 4403 }, 4404 queryTokenizer: Bloodhound.tokenizers.whitespace, 4405 remote: { 4406 url: `/api/suggest/json/get/1,users_data,Listings,1,1,1,0,0,3|88,list_professions,Main Categories,1,0,1,0,1,3|89,list_services,Sub Categories,1,0,1,0,1,3?tID=16&q=%QUERY`, 4407 wildcard: '%QUERY', 4408 filter: function (response) { 4409 4410 if (response != null) { 4411 //var response = response.slice(1); 4412 $.each( 4413 response, function (key, value) { 4414 response[key]['value'] = decodeHtml(value['value']); 4415 response[key]['comes_f'] = decodeHtml(value['comes_f']); 4416 response[key]['location'] = decodeHtml(value['location']); 4417 4418 if (response[key]['value'].indexOf('-/-') >= 0) { 4419 var splitResult = response[key]['value'].split('-/-'); 4420 response[key]['value'] = splitResult[0]; 4421 } 4422 } 4423 ); 4424 4425 } else { 4426 response = {error: "null"}; 4427 } 4428 4429 return response; 4430 } 4431 } 4432 }); 4433 var member_searchDataSrc = member_searchEngine.initialize(); 4434 4435 member_searchDataSrc 4436 .done(function () { /*console.log('Autosuggestions engine initialized.'); */ 4437 }) 4438 .fail(function () { /*console.log('err, something went wrong while initializing autosuggestions engine:(');*/ 4439 }) 4440 4441 $('.member_search').typeahead({ 4442 minLength: 2, 4443 highlight: true, 4444 hint: false }, 4445 { 4446 display: 'value', 4447 source: member_searchEngine.ttAdapter(), 4448 limit: 10, 4449 templates: { 4450 empty: [ 4451 '<div class="empty-message">', 4452 'Result not found', 4453 '</div>' 4454 ].join(" "), 4455 notFound: [ 4456 '<div class="notFound-message">', 4457 'Result not found', 4458 '</div>' 4459 ].join(" "), 4460 suggestion: function (data) { 4461 4462 if (data == "null") { 4463 strTemplate = '<div class="empty-message">Result not found</div>'; 4464 4465 } else { 4466 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> '; 4467 4468 if ((data.link == undefined) || (data.link == "") || (data.link == "novalue")) { 4469 strTemplate = strTemplate.replace(/href=".*?"/, "href='#'"); 4470 } 4471 4472 if ((data.photo == undefined) || (data.photo == "") || (data.photo == "novalue")) { 4473 strTemplate = strTemplate.replace(/<img src=".*?>/, ""); 4474 } 4475 } 4476 4477 return strTemplate; 4478 } 4479 }, 4480 }).on('typeahead:selected', function (obj, datum) { 4481 /* 4482 console.log(obj); 4483 console.log(datum); 4484 */ 4485 }); 4486 4487 $('.member_search').each(function () {
4488 var inputWidth = $(this).outerWidth(); 4489 $(this).siblings('.tt-dropdown-menu').css('width', inputWidth + 'px'); 4490 }); 4491 } 4492 </script>
4492 4493
4493<script> 4494 let typeheadElement = '.member_search'; 4495 let TypeheadNameListFunction = 'initializeTypeheadMember_search'; 4496 let typeheadFormElement = undefined; 4497 window.addEventListener('load', () => { 4498 if(typeheadElement.length > 1) { 4499 typeheadFormElement = document.querySelectorAll(typeheadElement); 4500 } 4501 if (typeof typeheadFormElement != "undefined") { 4502 for (let i = 0; i < typeheadFormElement.length; i++) { 4503 let closestForm = typeheadFormElement[i].closest('form'); 4504 if (typeof closestForm != "undefined" && closestForm != null) { 4505 closestForm.addEventListener('focus', typeheadFormClick, false); 4506 } 4507 typeheadFormElement[i].addEventListener('focus', typeheadFormClick, false); 4508 } 4509 } 4510 }); 4511 function initializeTypehead(){ 4512 let splitFunctionNames= TypeheadNameListFunction.split(','); 4513 for ( let funcName of splitFunctionNames) 4514 if (typeof funcName != 'function') { 4515 window[funcName](); // execute the function 4516 4517 } 4518 } 4519 function typeheadFormClick(event) { 4520 4521 let head = document.getElementsByTagName('head')[0]; 4522 let script = document.createElement('script'); 4523 let elementClicked = event.target; 4524 script.type = 'text/javascript'; 4525 script.src = "https://cdnjs.cloudflare.com/ajax/libs/corejs-typeahead/0.11.1/typeahead.bundle.min.js"; 4526 script.onload = function () { 4527 initializeTypehead(); 4528 elementClicked.focus(); 4529 }; 4530 head.appendChild(script); 4531 if (typeof typeheadFormElement != "undefined") { 4532 for (let i = 0; i < typeheadFormElement.length; i++) { 4533 let closestForm = typeheadFormElement[i].closest('form'); 4534 if (typeof closestForm != "undefined" && closestForm != null) { 4535 closestForm.removeEventListener('focus', typeheadFormClick, false); 4536 } 4537 typeheadFormElement[i].removeEventListener('focus', typeheadFormClick, false) 4538 } 4539 } 4540 } 4541 4542 4543 </script>
4543 4544 4545
4545<script> 4546 window.addEventListener('load', () => { 4547 let embedlyClass = document.querySelector('.fr-embedly'); 4548 if (typeof embedlyClass != "undefined" && embedlyClass != null) { 4549 let embedlyURI = "https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/embedly_widget.min.js"; 4550 let head = document.getElementsByTagName("head")[0]; 4551 let script = document.createElement('script'); 4552 script.type = 'text/javascript'; 4553 script.src = embedlyURI; 4554 script.async = true; 4555 script.onload = function() { 4556 setTimeout(function() { 4557 if (typeof embedly !== 'undefined' && embedly.card) { 4558 document.querySelectorAll('.embedly-card').forEach(function(card) { 4559 embedly.card(card); 4560 }); 4561 } 4562 }, 500); 4563 }; 4564 head.appendChild(script); 4565 } 4566 }); 4567</script>
4567<script type="text/javascript" src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/jquery.lazy/1.7.9/jquery.lazy.min.js"></script>
4567<script> 4568 $(function () { 4569 $(".lazyloader").Lazy({ 4570 afterLoad: function(element) { 4571 $(".gridView.activeView").click(); 4572 } 4573 }); 4574 4575 }); 4576 $("button[class*='slick'],button[id*='slick']").click(function () { 4577 $(this).parents(".row").find(".lazyloader").lazy({ 4578 bind: "event", 4579 delay: 0 4580 }); 4581 }); 4582 $("[class*='slick'],[id*='slick']").on("swipe",function(){ 4583 $(this).parents(".row").find(".lazyloader").lazy({ 4584 bind: "event", 4585 delay: 0 4586 }); 4587 }); 4588 </script>
4588<script defer src="https://www.optimizecdn.com/directory/cdn/assets/bootstrap/js/websiteScripts.min.js?v=8.0.0"></script>
4588 4589 </body> 4590 </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.