1 2 3 4<!DOCTYPE html> 5<html lang="en"> 6<head> 7 <base href="https://ithappensinaddison.com/" /> 8 <meta charset="utf-8"> 9 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 10 <meta name="viewport" content="width=device-width, initial-scale=1"> 11 12 13 14 15 16<!-- Metadata Area Starts --> <title>Addison, IL Events</title> 17 <meta property="og:title" content="Addison, IL Events" /> 18 <meta property="og:image" content="https://ithappensinaddison.com///addisonilevents/_assets_/images/logo.png" /> 19 <meta name="robots" content="index, follow"> 20 21 22 23<link href="/revize/plugins/setup/css/revize.css" rel="stylesheet" type="text/css" /> 24 25 26
27<script type="text/javascript"> 28 29 30 31</script>
31 32 33 34 35 36 37 38 39<!-- #jquery --> 40
40<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/jquery/jquery.min.js"></script>
40 41 42<!-- #jquery lazy --> 43
43<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/jquery.lazy-master/jquery.lazy.min.js"></script>
43 44 45<!-- #masonry scripts --> 46
46<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/masonry.pkgd.min.js" crossorigin="anonymous"></script>
46 47
47<script src="https://code.jquery.com/ui/1.14.0/jquery-ui.js"></script>
47 48 49<!-- #lightGallery scripts --> 50
50<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/lightGallery-master/dist/lightgallery.min.js"></script>
50 51 52<!-- lightgallery plugins --> 53
53<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/lightGallery-master/dist/plugins/thumbnail/lg-thumbnail.umd.js"></script>
53 54
54<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/lightGallery-master/dist/plugins/zoom/lg-zoom.umd.js"></script>
54 55
55<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/lightGallery-master/dist/plugins/video/lg-video.min.js"></script>
55 56 57<!-- #lightGallery css --> 58 <link href="/revize/plugins/zbuilder/v1/website/_assets_/plugins/lightGallery-master/dist/css/lightgallery-bundle.min.css" rel="stylesheet" /> 59 60<!-- #bootstrap js + popper js --> 61
61<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/popperjs/popper.min.js"></script>
61 62
62<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/bootstrap/js/bootstrap.min.js"></script>
62 63 64<!-- #bootstrap css and fonts --> 65 <link href="/revize/plugins/zbuilder/v1/website/_assets_/plugins/bootstrap/css/bootstrap.css" rel="stylesheet" /> 66 <link href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.css" rel="stylesheet" /> 67 68<!-- #dotjs --> 69
69<script src="/revize/plugins/revize_calendar/doT.min.js"></script>
69 70 71<!-- #tiny sider --> 72 <link href="/revize/plugins/zbuilder/v1/website/_assets_/plugins/tiny-slider/dist/tiny-slider.css" rel="stylesheet" /> 73
73<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/tiny-slider/dist/min/tiny-slider.js"></script>
73 74 75<!-- #font awesome css --> 76 <link href="/revize/plugins/zbuilder/v1/website/_assets_/fonts/font-awesome/css/all.min.css" rel="stylesheet" > 77 78<!-- #font Google Material Icons --> 79 <link href="https://fonts.googleapis.com/css2?family=Material+Icons" rel="stylesheet" /> 80 <link href="https://fonts.googleapis.com/css2?family=Material+Icons+Outlined" rel="stylesheet" /> 81 82<!-- #aos css + js--> 83
83<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/aos/src/js/aos.min.js"></script>
83 84 <link href="/revize/plugins/zbuilder/v1/website/_assets_/plugins/aos/src/css/aos.min.css" rel="stylesheet" > 85<!-- #aos --> 86 87<!-- #fitty --> 88
88<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/fitty-gh-pages/dist/fitty.min.js"></script>
88 89
89<script src="/revize/plugins/zbuilder/v1/website/_assets_/plugins/revizeWeather/js/revizeWeather.min.js"></script>
89 90 91<!-- #layout css --> 92 <link href="/revize/plugins/zbuilder/v1/website/_assets_/css/layout.css?v=1" rel="stylesheet"> 93 <link href="_assets_/css/css_variables_T34_R3.css?t=1786147619000" rel="stylesheet"> 94 95<!-- #favicons --> 96 <link rel="shortcut icon" href="website-Assets/favicon.ico?t=202601221424530"> 97 <link rel="apple-touch-icon" href="website-Assets/apple-touch-icon.png?t=202601221425050"> 98 <meta name="theme-color" content="#423859" /> 99 100 101 102 103<style> 104@media (max-width: 767px) { 105 .rz-news-card-list.row-cols-xs > * {flex: 0 0 auto; width:100.0%} 106} 107@media (min-width: 768px) and (max-width: 991px) { 108 .rz-news-card-list.row-cols-md > * {flex: 0 0 auto; width:50.0%} 109} 110@media (min-width: 992px) { 111 .rz-news-card-list.row-cols-lg > * {flex: 0 0 auto; width:33.333332%} 112} 113</style> 114 115 116 117<link href="/revize/plugins/revize_calendar/core/main.css" rel="stylesheet" /> 118<link href="/revize/plugins/revize_calendar/daygrid/main.min.css" rel="stylesheet" /> 119<link href="/revize/plugins/revize_calendar/timegrid/main.min.css" rel="stylesheet" /> 120<link href="/revize/plugins/revize_calendar/list/main.min.css" rel="stylesheet" /> 121<link href="_assets_/plugins/revizeCalendar/css/mini.css" rel="stylesheet" /> 122<link href="/revize/plugins/revize_calendar/core/nav-panels.css" rel="stylesheet" />
122<script> 123 var defaultCalendarColor = "#3788d8"; 124 var ImportCals = []; 125 var calendarProps = {'1' : { 'color' : '#3787d8' , 'name' : 'Master' }, 126}; 127 var RZCalendarTimezone = ""; 128</script>
128 129 130</head> 131<body id="freeform" class="rz-page-links-101" data-zipcode="60101" data-header-left="false"> 132 133 134 135
136<script type="text/javascript"> 137if (typeof(RZ) == 'undefined') RZ = {}; 138if (!RZ.link) RZ.link = new Object(); 139RZ.pagetype = 'template' 140RZ.baseurlprefix = '../' 141RZ.baseurlpath = 'faq/' 142RZ.protocolRelativeRevizeBaseUrl='//builder1.revize.com' 143 144RZ.pagetemplatename = 'freeform' 145RZ.pagetemplateid = '1' 146RZ.pagemodule = 'links' 147RZ.pagemoduleid = '1' 148RZ.pagerecordid = '101'; 149 150RZ.pageid = 'links-101'; 151RZ.pageparentid = '100'; 152RZ.pagesectionid = '100'; 153RZ.pagesectionname = 'faq'; 154RZ.pagesectionlevel = '1'; 155RZ.pagesectionfolder = 'faq/'; 156RZ.pagesectionfilter = 'sectionid=100'; 157RZ.pagelinkfilter = 'linklevel=1 and linksectionid=100'; 158RZ.pagelinklevel = '1'; 159RZ.pagelinkid = '101'; 160RZ.pageidfield = ''; 161 162RZ.isnewrecord = false; 163RZ.editmodule = ''; 164RZ.editrecordid = '101'; 165RZ.editrecordversion = ''; 166RZ.editversion = ''; 167RZ.editaction = ''; 168 169RZ.page_roles = '' 170RZ.page_users = 'ec00111abf540a51f4ecabeb5b526b90a8058bdf50104c632325dcb88a9a4d50' 171RZ.page_key = 'freeform[101]' 172RZ.parent_key = 'freeform[100]' 173RZ.inherit_key = 'index[]' 174RZ.workflowname = '' 175RZ.permissions_options = 'warningsOFF' 176RZ.permissions_module = 'webspace_page_permissions' 177RZ.webspace = 'addisonilevents' 178RZ.webspacedesc = ""; 179 180RZ.featurespattern = '(EZ)'; 181null 182 183RZ.webspacelinksurl = '' 184RZ.webspacelinksurl = './webspace/links.html' 185RZ.workflowlist = '' 186RZ.revizeserverurl = 'https://builder1.revize.com/revize/addisonilevents'; 187 188if (!RZ.nextseq) RZ.nextseq = {linknames:{},modules:{}}; 189 190RZ.webspace_config = new Object(); 191RZ.webspace_config.admin_email = "[email protected]"; 192RZ.webspace_config.calendar_options = "max_events=6"; 193RZ.webspace_config.form_captcha = "yes"; 194RZ.webspace_config.form_server = "revizeserver"; 195RZ.webspace_config.form_technology = "jsp"; 196RZ.webspace_config.formwizard_ftp_password = ""; 197RZ.webspace_config.formwizard_ftp_port = ""; 198RZ.webspace_config.formwizard_ftp_server = ""; 199RZ.webspace_config.formwizard_ftp_user = ""; 200RZ.webspace_config.formwizard_setup = "yes"; 201RZ.webspace_config.formwizard_smtp_password = "xxx"; 202RZ.webspace_config.formwizard_smtp_server = "xxx"; 203RZ.webspace_config.formwizard_smtp_user = "xxx"; 204RZ.webspace_config.google_analytics = ""; 205RZ.webspace_config.home_pageid = "0"; 206RZ.webspace_config.home_sectionid = "0"; 207RZ.webspace_config.home_template = "home,index,sitemap"; 208RZ.webspace_config.icon_email = "<img src=\"/revize/images/email_icon_yellow.gif\" width=\"16\" border=\"0\" height=\"17\" title=\"Request email notification when page changes\" alt=\"Request email notification when page changes\" style=\"\" />"; 209RZ.webspace_config.image_maxheight = "3000"; 210RZ.webspace_config.image_maxwidth = "3000"; 211RZ.webspace_config.image_setup = "yes"; 212RZ.webspace_config.livesite_url = ""; 213RZ.webspace_config.menu_links_module = "links"; 214RZ.webspace_config.menu_newsection = ""; 215RZ.webspace_config.menu_nexturl = "webspace_menu-editform.jsp"; 216RZ.webspace_config.menu_sections_module = "sections"; 217RZ.webspace_config.menu_system = "custom"; 218RZ.webspace_config.menu_version = "1.00"; 219RZ.webspace_config.new_menu_manager_enabled = "yes"; 220RZ.webspace_config.notify_options = "hide_text=yes"; 221RZ.webspace_config.notify_return_url = "enotify/index.php"; 222RZ.webspace_config.rte_setup = "yes"; 223RZ.webspace_config.to_email = "[email protected]"; 224RZ.webspace_config.use_folders = "1"; 225 226RZ.isauthenticationactive = true 227RZ.warning = "" 228RZ.adminwinmsg = null 229 230RZ.channels = 'revize'; 231RZ.jsversion = 1.2</script>
vendor: 2 bytes, line 231
231
232<script type="text/javascript" src="/revize/util/snippet_helper.js"></script>
232 233 234 235 236<div class="skippy visually-hidden-focusable left-top mt-3 position-fixed align-items-center" style="z-index:1026"> 237 <div class="container-xl"> 238 <a class="d-inline-flex btn btn-light bg-white px-4 p-3 gap-4 align-items-center" 239 href="faq/contact.php#rz-content-wrap"> 240 <span class="d-inline-flex align-items-center gap-2"> 241 <i class="bi bi-window-sidebar fs-4" aria-hidden="true"></i> 242 <span>Skip to main content</span> 243 <span class="ms-5" aria-hidden="true"> 244 <svg width="26" height="27" viewBox="0 0 26 27" xmlns="http://www.w3.org/2000/svg" role="presentation" aria-hidden="true"> 245 <g fill="none" fill-rule="evenodd"> 246 <path d="M4.498 24.3v-.872H1.5v-1.37h2.716v-.872H1.5v-1.27h3v-.872H.542V24.3h3.955zm1.909 0v-3.695L9.183 24.3h.95v-5.256h-.95v3.695l-2.776-3.695H5.45V24.3h.957zm7.21 0v-4.383h1.682v-.873h-4.314v.873h1.683V24.3h.948zm6.421 0v-.872H17.04v-1.37h2.716v-.872H17.04v-1.27h3v-.872h-3.956V24.3h3.955zm1.84 0v-1.767h1.017l1.24 1.767h1.086l-1.316-1.867c.757-.237 1.27-.849 1.27-1.644 0-1.025-.842-1.745-1.966-1.745H20.92V24.3h.957zm1.224-2.647h-1.224v-1.729h1.224c.65 0 1.101.33 1.101.865 0 .535-.451.864-1.101.864z" 247 fill="currentColor" fill-rule="nonzero" /> 248 <path d="M18.9 1v6.3a2.7 2.7 0 0 1-2.7 2.7H5.4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" /> 249 <path d="M8.1 12.7L5.4 10l2.7-2.7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" /> 250 </g> 251 </svg> 252 </span> 253 </span> 254 </a> 255 </div> 256</div>
257<script>function RZBarAddButton() { return false; }</script>
257 258 259 260 261<div class="site-header-wrap" data-menu-onhover="true" data-mega-at="8" data-nav-icons="false" data-logo="image" data-logo-tagline="false" data-logo-move="false" data-sticky="true" data-menu-buttons-left="false"> 262 <div class="site-header"> 263 264 265 266 267<div class="rz-section-block-wrap position-relative top-header" style="background-color:#313491;--rz-section-padding-lg:12px 0;"> 268 269 270 271 <div class="rz-section-block container" style="max-width:1638px;"> 272 273 274 275 276 277<div class="rz-row-block d-grid opt_row_columns_7" style="grid-template-columns:0.65fr 2.5fr 0.60fr;"> 278<div class="rz-column-block d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-start align-items-lg-start"> 279 <div class="rz-element-wrapper logo-section d-flex d-lg-block"> 280 281 <div class="responsive-menu align-items-center d-flex d-lg-none gap-1"> 282 <button class="offcanvasHeaderItems-toggler btn btn-link text-dark p-2 lh-1 text-dark" data-bs-toggle="offcanvas" data-bs-target="#offcanvasHeaderItems" aria-controls="offcanvasHeaderItems" aria-label="Toggle navigation"> 283 <i class="bi bi-three-dots" aria-hidden="True"></i> 284 </button> 285 <button id="mobile-share-btn" class="flex-shrink-0 btn btn-link text-dark p-2 lh-1 text-dark" data-bs-toggle="modal" data-bs-target="#shareModal" aria-label="Open share modal"> 286 <i class="bi bi-share-fill" aria-hidden="True"></i> 287 </button> 288 </div><!-- /.responsive-menu --> 289 290 291 <a href="./" class="flex-fill d-flex text-center flex-column text-decoration-none main-logo main-logo-text justify-content-center"> 292 <span class="lh-1">Addison, IL Events</span> 293 <p class="logo-tagline lh-1 m-0">Live work play</p> 294 </a> 295 296 <a href="./" class="d-flex align-items-center text-decoration-none main-logo main-logo-image"> 297 <img loading="lazy" src="website-Assets/main-logo.png?t=202601221426040" alt="Addison, IL Events" class="header-logo-img"> 298 </a> 299 300 <div class="offcanvas-toggles align-items-center d-flex d-lg-none gap-1"> 301 <button class="search-toggle btn btn-link text-dark p-2 lh-1 text-dark" data-bs-toggle="modal" data-bs-target="#searchModal" aria-label="Toggle search"> 302 <i class="fa-solid fa-magnifying-glass" aria-hidden="True"></i> 303 </button> 304 <button class="navbar-toggler btn btn-link text-dark p-2 lh-1 text-dark" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNav" aria-controls="offcanvasNav" aria-label="Toggle navigation"> 305 <i class="fa-solid fa-bars" aria-hidden="True"></i> 306 </button> 307 </div><!-- /.offcanvas-toggles --> 308 309 </div><!-- /.rz-element-wrapper --> 310</div><div class="rz-column-block"> 311 <div class="header-element header-search-wrap align-items-stretch w-100 gap-3"> 312 <div class="vr vr-s d-none"></div> 313 <form class="m-0 align-self-center position-relative header-site-search w-100" 314 method="GET" action="search.php" role="search" 315 aria-label="Site Search" aria-labelledby="Search Site"> 316 <input class="form-control" name="q" type="search" 317 placeholder="Search..." 318 autocomplete="off" 319 > 320 <!-- Icon-only search button --> 321 <button class="search-btn-with-icon btn btn-link position-absolute top-50 end-0 translate-middle-y gap-3 ps-0 pe-3 lh-1 d-flex align-items-center" 322 aria-label="Search" tabindex="0"> 323 <span class="vr d-inline-flex align-self-center" style="height:1rem"></span> 324 <i class="bi bi-search"></i> 325 </button> 326 </form> 327 <div class="vr vr-e d-none"></div> 328 </div><!--/.header-element--> 329</div><div class="rz-column-block d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-end align-items-lg-center"> 330 331 332 333 334<div class="rz-element-wrapper rz-button-wrapper has-edit-buttons move-to-offcanvas" 335 336 > 337 338 <div class="center-top"> 339 <div class="rz-btns-container"> 340
340<script> 341 RZ.module = 'generic'; 342 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/buttons-editform.jsp"; 343 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Buttons</span>'; 344 RZ.caption = ''; 345 RZ.set = 'pageid=3f1c20b4-46ad-45d8-8d74-e13f6e4a43b5'; 346 RZ.options = ''; 347 if (typeof RZaction != 'undefined') RZaction('editform'); 348 </script>
348 349 </div> 350 </div> 351 <div class="rz-element rz-button-wrap d-flex flex-wrap" 352 style="gap:12px;"> 353 354<div class="d-flex align-items-stretch" data-aos-duration="600"> 355 <a href="https://www.facebook.com/AddisonEvents" target="_blank" 356 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 357 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-border-width:0px;padding:0px 0px 0px 0px;"> 358 359 360 361 362 <i class="fab fa-facebook rz-btn-icon flex-shrink-0" style="font-size:20px;border-radius:0px;color:#fff;" aria-hidden="true"></i> 363 364 365 366 367 368 369 370 371 372 </a> 373</div> 374 375<div class="d-flex align-items-stretch" data-aos-duration="600"> 376 <a href="https://x.com/AddisonVillage" target="_blank" 377 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 378 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-border-width:0px;padding:0px 0px 0px 0px;"> 379 380 381 382 383 <i class="bi bi-twitter-x rz-btn-icon flex-shrink-0" style="font-size:20px;border-radius:0px;color:#fff;" aria-hidden="true"></i> 384 385 386 387 388 389 390 391 392 393 </a> 394</div> 395 396<div class="d-flex align-items-stretch" data-aos-duration="600"> 397 <a href="https://www.youtube.com/channel/UCDyH_Ba0GsQk7gkB_GjFr_Q" target="_blank" 398 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 399 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-border-width:0px;padding:0px 0px 0px 0px;"> 400 401 402 403 404 <i class="fab fa-youtube rz-btn-icon flex-shrink-0" style="font-size:20px;border-radius:0px;color:#fff;" aria-hidden="true"></i> 405 406 407 408 409 410 411 412 413 414 </a> 415</div> 416 417 </div> 418</div> 419 420 421 422 423 <div class="rz-element-wrapper header-translate-wrap relative d-none d-lg-flex align-items-stretch gap-0"> 424 <div class="vr vr-s"></div> 425 <button class="btn text-start translate-button btn btn-link relative px-3 d-flex align-items-center" type="button" aria-expanded="false" data-bs-toggle="modal" data-bs-target="#translateModal"> 426 <div class="fi fi-us selected-flag"></div> 427 <i class="bi bi-translate me-2"></i> 428 <span class="visually-hidden">Translate</span> 429 <span class="translate-text">Translate</span> 430 </button> 431 <button class="btn text-start translate-reset px-2" translate="no"> 432 <i class="fa-solid fa-power-off" aria-hidden="true"></i> 433 <span class="visually-hidden">Reset Translation</span> 434 </button> 435 <div class="vr vr-e"></div> 436 </div> 437</div> 438 439 440 441</div><!-- /.rz-row-block --> 442 443 444 445 446 </div><!-- /.rz-section-block --> 447</div><!-- /.rz-section-block-wrap --> 448 449 450 451 452 453<div class="rz-section-block-wrap position-relative bottom-header"> 454 455 456 457 <div class="rz-section-block container" style="max-width:1638px;"> 458 459 460 461 462 463<div class="rz-row-block d-grid"> 464<div class="rz-column-block d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-center align-items-lg-center"><!----> <div class="d-none"> 465 466<div class="mega-button align-self-start position-relative d-flex flex-column gap-3 align-items-start"> 467 468 469 470 <img src="website-Assets/mega-manu-img .png" loading="lazy" class="nav-content-img" alt="" aria-hidden="true" style="border-radius:var(--bs-border-radius)"> 471 472 473 <p class="h4 mega-button-title m-0"></p> 474 <p class="mega-link-text m-0"></p> 475 476 477 478</div> 479 480 481 482<div class="mega-button align-self-start position-relative d-flex flex-column gap-3 align-items-start"> 483 484 485 486 <img src="website-Assets/mega-manu-img .png" loading="lazy" class="nav-content-img" alt="" aria-hidden="true" style="border-radius:var(--bs-border-radius)"> 487 488 489 <p class="h4 mega-button-title m-0"></p> 490 <p class="mega-link-text m-0"></p> 491 492 493 494</div> 495 496 497 498<div class="mega-button align-self-start position-relative d-flex flex-column gap-3 align-items-start"> 499 500
501 502 503 <p class="h4 mega-button-title m-0"></p> 504 <p class="mega-link-text m-0"></p> 505 506 507 508</div> 509 510 511 512<div class="mega-button align-self-start position-relative d-flex flex-column gap-3 align-items-start"> 513 514 515 516 517 <p class="h4 mega-button-title m-0"></p> 518 <p class="mega-link-text m-0"></p> 519 520 521 522</div> 523 524 525 526<div class="mega-button align-self-start position-relative d-flex flex-column gap-3 align-items-start"> 527 528 529 530 <img src="website-Assets/nav-content-img.png" loading="lazy" class="nav-content-img" alt="" aria-hidden="true" style="border-radius:var(--bs-border-radius)"> 531 532 533 <p class="h4 mega-button-title m-0"></p> 534 <p class="mega-link-text m-0"></p> 535 536 537 538</div> 539 540 </div><div class="offcanvas-lg offcanvas-end" tabindex="-1" id="offcanvasNav" aria-labelledby="offcanvasNavLabel"> 541 <div class="offcanvas-header border-bottom"> 542 <h5 class="offcanvas-title" id="offcanvasNavLabel">Main Menu</h5> 543 <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close" data-bs-target="#offcanvasNav"></button> 544 </div> 545 546 <div class="offcanvas-body pt-0"> 547 548 <div class="rz-element-wrapper rz-topnav-block-wrapper has-edit-buttons"> 549 <div class="rz-element rz-topnav-wrap"> 550 <div class="rz-topnav-element"> 551 552 553 554 555 556<ul id="nav" class="v2_05-23-2012"> 557 <li class="menuLI level0 menuDisplay li-140"><a class="menuA level0 menuDisplay" href="index.php" target="_self">Home</a></li> 558 <li class="menuLI level0 menuDisplay li-83 children"><a class="menuA level0 menuDisplay" href="events/index.php" target="_self">Events</a> 559 <ul class="menuUL level1 menuHidden ul-139"> 560 <li class="menuLI level1 menuHidden li-139"><a class="menuA level1 menuHidden" href="images/Bands/Rock N Wheels 2026 Season Schedule.JPG" target="_new">Season Schedule</a></li> 561 </ul> 562 </li> 563 <li class="menuLI level0 menuDisplay li-132 children"><a class="menuA level0 menuDisplay" href="participate/index.php" target="_self">Participate</a> 564 <ul class="menuUL level1 menuHidden ul-81"> 565 <li class="menuLI level1 menuHidden li-81"><a class="menuA level1 menuHidden" href="participate/sponsors.php" target="_self">Sponsors</a></li> 566 <li class="menuLI level1 menuHidden li-99"><a class="menuA level1 menuHidden" href="participate/bookings.php" target="_self">Bookings</a></li> 567 <li class="menuLI level1 menuHidden li-134"><a class="menuA level1 menuHidden" href="participate/craft_fair.php" target="_self">Craft Fair</a></li> 568 </ul> 569 </li> 570 <li class="menuLI level0 menuDisplay li-100 children"><a class="menuA level0 menuDisplay" href="faq/index.php" target="_self">FAQ</a> 571 <ul class="menuUL level1 menuHidden ul-79"> 572 <li class="menuLI level1 menuHidden li-79"><a class="menuA level1 menuHidden" href="faq/about_us.php" target="_self">About Us</a></li> 573 <li class="menuLI level1 menuHidden li-101"><a class="menuA level1 menuHidden" href="faq/contact.php" target="_self">Contact</a></li> 574 </ul> 575 </li> 576</ul> 577 578 </div><!-- /.rz-topnav-element --> 579 </div><!-- /.rz-element --> 580 581 </div><!-- /.rz-element-wrapper --> 582 583 </div><!-- /.offcanvas-body --> 584</div><!-- /.offcanvas-lg --> 585</div> 586 587 588 589</div><!-- /.rz-row-block --> 590 591 592 593 594 </div><!-- /.rz-section-block --> 595</div><!-- /.rz-section-block-wrap --> 596 597 598 </div><!-- /.site-header --> 599</div><!-- /.site-header-wrap --> 600<div class="rz-site-wrap"> 601 <main id="rz-content-wrap"> 602 603 604 605 606<!-- --><div class="rz-element-wrapper rz-slider-wrapper has-edit-buttons position-relative overflow-hidden" style=" --rz-slider-bg:#000000; "> 607 608 <div class="center-center"> 609 <div class="rz-btns-container"> 610
610<script language="JavaScript" type="text/JavaScript"> 611 RZ.module = 'generic'; 612 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/slider-editform.jsp"; 613 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Slider</span>'; 614 RZ.caption = ''; 615 RZ.set = 'pageid=slider-100'; 616 RZ.options = ''; 617 if (typeof RZaction != 'undefined') RZaction('editform'); 618 </script>
618 619 </div> 620 </div> 621 622 623 <div 624 625 data-controls-position="bottom" 626 class="rz-freeform-slider rz-slider tiny-carousel-wrap" 627 628 style=" 629 630 631 632 633 634 635 636 637 638 " 639 > 640 641 642 <div class="rz-slider-bg-overlay" ></div> 643 644 645 646 <div class="tiny-slider" 647 style="height:100%;" 648 data-tiny-items="1" 649 data-tiny-mode="gallery" 650 data-tiny-items-md="1" 651 data-tiny-items-sm="1" 652 data-tiny-gap="0" 653 data-tiny-controls="true" 654 data-tiny-nav="true" 655 data-tiny-autoplay-buttons="true" 656 data-tiny-autoplay="true"> 657 658 <div class="tiny-item" style="height:100%;"> 659 <div class="tns-lazy-img tns-bg-slide" 660 data-style="background:url('images/about-us/Events slider picture - Copy (2).jpg') center center / cover no-repeat;"></div> 661 </div> 662 663 </div><!--/.tiny-slider--> 664 665 </div><!-- /.slider --> 666 <div class="rz-slider-caption-wrap d-flex flex-column overflow-hidden justify-content-center align-items-start"> 667 <div class="rz-slider-caption container d-flex flex-column align-items-start"> 668 </div><!-- /.rz-slider-caption --> 669 </div><!-- /.rz-slider-caption-wrap --> 670</div><!-- /.slider-wrap --> 671 672 673 <div id="freeform-content-wrapper" class="position-relative z-3"> 674 <div class="container-fluid px-0 d-flex flex-column flex-lg-row flex-lg-nowrap"> 675 <div class="col freeform-left-col-fill"></div> 676 677 <div class="col-side-wrap position-relative"> 678 <div class="col-side h-100 has-edit-buttons"> 679 <div class="sticky-top freeform-leftcol-builder-edit-btn-wrap" style="z-index:1041;top:140px;right:0;"> 680 <div class="rz-btns-container freeform-leftcol-builder-edit-btn-container"> 681
681<script language="JavaScript" type="text/JavaScript"> 682 RZ.module = 'page_builder'; RZ.linkname = ''; 683 RZ.template = '*none*'; RZ.recordid = ''; 684 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/site_builder-editform.jsp?type=leftnav"; 685 RZ.popupwidth = ''; RZ.popupheight = ''; RZ.popupscroll = ''; 686 RZ.img = '<span class="rzBtn rzBtn freeform-builder-edit-btn" data-bs-toggle="tooltip" data-placement="right" aria-label="Edit column with builder" data-bs-original-title="Edit column with builder"><i class="bi bi-columns-gap fs-4"></i></span>'; 687 RZ.set = 'pageid=leftnav-links-101'; 688 RZ.options = ''; 689 if (typeof RZaction != 'undefined') RZaction('edititem'); 690 </script>
690 691 </div> 692 </div> 693 <!-- side content here --> 694 695 696 <div class="rz-element-wrapper rz-submenu-wrapper"> 697 <div class="submenu-header rz-module-header d-none d-lg-flex"> 698 <i class="module-header-icon-before lh-1 flex-shrink-0" aria-hidden="true"></i> 699 <span class="rz-module-header-text">Related Pages</span> 700 <i class="module-header-icon-after lh-1 flex-shrink-0" aria-hidden="true"></i> 701 </div> 702 703 <div class="submenu-wrap has-edit-buttons"> 704 <nav aria-labelledby="submenu" data-style="vertical"> 705 706 707 708 709 <div class="rz-btns-container center-top"> 710
710<script language="JavaScript" type="text/JavaScript"> 711 RZ.module = 'links'; 712 RZ.nexturl = "/revize/plugins/menus/webspace_menu-editlist.jsp?pageid=links-101&" 713 + "linksfilter=linkplacement=leftnav and linkparentid=100&" 714 + "numberoflevels=2&" 715 + "linkoptions=url,template,file&" 716 + "linknewsection=*all*"; 717 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Submenu</span>'; 718 RZ.caption = ''; 719 RZ.set = "links.linkplacement=leftnav" 720 RZ.options = ''; 721 if (typeof RZaction != 'undefined') RZaction('editlist'); 722 </script>
722 723 </div> 724 725 <ul id="submenu" class="v08-30-2012"> 726 <li id="li-79" class="menuLI level0 menuSelectedLevel first"><a class="menuA level0 menuSelectedLevel first" href="faq/about_us.php" target="_self" >About Us</a></li> 727 <li id="li-101" class="menuLI level0 menuSelectedItem"><a class="menuA level0 menuSelectedItem" href="faq/contact.php" target="_self" >Contact</a></li> 728</ul> 729 730 </nav> 731 </div><!-- /#submenu-wrap --> 732 </div><!-- /.rz-element-wrapper --> 733 734 </div><!-- /.col-side --> 735 </div><!-- /.col-side-wrap --> 736 737 <div class="col-post-wrap"> 738 <div class="col-post h-100"> 739 <div id="post" class="h-100"> 740 <div class="rz-section-block container page-title-wrapper mb-3 d-flex flex-column title-pos-standard breadcrumb-pos-below"> 741 <h1 class="page-title page-title-standard"> 742 743 744Contact 745 </h1> 746 <nav aria-label="breadcrumb" class="breadcrumb"> 747 <ul><li><a href="./">Home</a> </li><li><a href="faq/index.php">FAQ</a> </li><li>Contact</li></ul></nav> 748 </div> 749 <div class="post-content h-100"> 750 <!-- main content --> 751 752 753 754 755 756<div class="rz-section-block-wrap position-relative"> 757 758 759 760 <div class="rz-section-block container"> 761 762 763 764 765 766<div class="rz-row-block d-grid"> 767<div class="rz-column-block"> 768 769 770 771<div class="rz-element-wrapper rz-section-header-wrapper has-edit-buttons"> 772 <div class="center-top"> 773 <div class="rz-btns-container"> 774
774<script language="JavaScript" type="text/JavaScript"> 775 RZ.module = 'generic'; 776 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/section_header-editform.jsp"; 777 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Section Header</span>'; 778 RZ.caption = ''; 779 RZ.set = 'pageid=a7b5e5e2-68a6-4219-90f2-153a9b1675b3'; 780 RZ.options = ''; 781 if (typeof RZaction != 'undefined') RZaction('editform'); 782 </script>
782 783 </div> 784 </div> 785 <div class="rz-element rz-section-header-wrap align-items-start text-start d-flex align-items-center gap-2"> 786 787 <div class="rz-section-header d-flex align-items-start text-start align-items-center gap-2"> 788 789 790 <div class="d-flex flex-column align-items-start text-start"> 791 792 793 <h2 class="rz-section-header-title">Contact Us</h2> 794 795 796 </div> 797 798 799 </div><!-- /.rz-section-header --> 800 801 </div><!-- /.rz-section-header-wrap --> 802</div><!-- /.rz-element-wrapper --> 803 804 805 806 807<div class="rz-element-wrapper rz-raw-wrapper has-edit-buttons" 808> 809 <div class="center-top"> 810 <div class="rz-btns-container"> 811
811<script language="JavaScript" type="text/JavaScript"> 812 RZ.module = 'generic'; 813 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/raw_html-editform.jsp"; 814 RZ.img = '<span class="rzBtn rzBtn-xs">Edit HTML</span>'; 815 RZ.caption = ''; 816 RZ.set = 'pageid=3846ad4d-3074-4844-b899-47669e9e26f8'; 817 RZ.options = ''; 818 if (typeof RZaction != 'undefined') RZaction('editform'); 819 </script>
819 820 </div> 821 </div> 822 823 <div class="rz-element rz-raw-wrap"><iframe src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d11872.570226459686!2d-87.992719!3d41.932788!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x880fb2f2b3da4d1b%3A0x76b14de57389aed0!2s1%20Friendship%20Plaza%2C%20Addison%2C%20IL%2060101!5e0!3m2!1sen!2sus!4v1773077083751!5m2!1sen!2sus" width="100%" height="450" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe></div> 824</div> 825 826 827 828 829 830<div class="rz-element-wrapper rz-rte-wrapper has-edit-buttons" 831 832 > 833 834 835 836 <div class="center-top"> 837 <div class="rz-btns-container"> 838
838<script language="JavaScript" type="text/JavaScript"> 839 RZ.module = 'generic'; 840 RZ.nexturl = '/revize/plugins/zbuilder/v1/website/editforms/rte-editform.jsp'; 841 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Content</span>'; 842 RZ.set = 'pageid=a816852c-3452-4386-88f5-f23bfc4f6f0d'; 843 RZ.options = ''; 844 if (typeof RZaction != 'undefined') RZaction('editform'); 845 </script>
845 846 </div> 847 </div> 848 849 <div class="rz-element rz-rte-wrap clearfix"> 850 851 <div class="rz-rte-element"> 852 853 854 <div class="inner_allpages_auto"> 855<div class="innercontactus_map"> </div> 856<div class="innercontactus_forms"> 857<p>This is for general questions only, NOT for bands and entertainers. Please check the "Bookings" tab for that information.</p> 858<p>Before submitting a question, please check our <a href= "faq/index.php">FAQ</a>; we may not have time to respond to questions that are already answered there. Note: information about who to contact regarding craft vendors, sponsorships, etc., are all listed in the FAQ.</p> 859<p>This site is for events related information only. For more general Village of Addison information, visit <a rel="noopener" href="http://addisonadvantage.org" target="_blank">AddisonAdvantage.org</a>.</p> 860</div> 861</div> 862 863 </div> 864 865 </div> 866</div> 867 868 869 870 871 872<div class="rz-element-wrapper rz-form-builder-wrapper has-edit-buttons"> 873 <div class="center-top"> 874 <div class="rz-btns-container"> 875
875<script language="JavaScript" type="text/JavaScript"> 876 RZ.module = 'form_builder'; 877 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/form_builder-editform.jsp"; 878 RZ.popupwidth = ''; RZ.popupheight = ''; RZ.popupscroll = ''; 879 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Form</span>'; 880 RZ.set = 'pageid=7f7561cc-2ec7-47c5-bbba-af9b2e71d55e'; 881 RZ.options = ''; 882 if (typeof RZaction != 'undefined') RZaction('editform'); 883 </script>
883 884 </div> 885 </div> 886 <div class="rz-element rz-form-builder-wrap"> 887 <form id="formwiz-3" style="position:relative" class="formwizziwmorf formwiznew" name="formwizard" action="https://builder1.revize.com/revize/addisonilevents/form_T25_R3.jsp?webspace=addisonilevents" accept-charset="ISO-8859-1" enctype="multipart/form-data" method="post"><div class="rendered-form"><div class="formbuilder-text form-group field-first-name"><label for="first-name" class="formbuilder-text-label">First Name<span class="formbuilder-required">*</span></label><input type="text" class="form-control" name="first-name" id="first-name" required="required" aria-required="true"></div><div class="formbuilder-text form-group field-last-name"><label for="last-name" class="formbuilder-text-label">Last Name<span class="formbuilder-required">*</span></label><input type="text" class="form-control" name="last-name" id="last-name" required="required" aria-required="true"></div><div class="formbuilder-text form-group field-email"><label for="email" class="formbuilder-text-label">Email<span class="formbuilder-required">*</span></label><input type="email" class="form-control" name="email" id="email" required="required" aria-required="true"></div><div class="formbuilder-text form-group field-phone"><label for="phone" class="formbuilder-text-label">Phone</label><input type="tel" class="form-control" name="phone" id="phone"></div><div class="formbuilder-textarea form-group field-message"><label for="message" class="formbuilder-textarea-label">Message</label><textarea type="textarea" class="form-control" name="message" id="message"></textarea></div></div><div class="g-recaptcha" data-sitekey="6Lf1ng0UAAAAALu528vXSEIuUkv4aOMAO0Y1K0Ze"></div><input type="submit" value="Submit"></form><br> 888 </div> 889</div> 890 891 892</div> 893 894 895 896</div><!-- /.rz-row-block --> 897 898 899 900 901 </div><!-- /.rz-section-block --> 902</div><!-- /.rz-section-block-wrap --> 903 904 905 </div><!-- /.post-content --> 906 </div><!-- /#post --> 907 </div><!-- /.col-post --> 908 </div><!-- /.col-post-wrap --> 909 <div class="col freeform-right-col-fill"></div> 910 </div><!-- /.row --> 911 </div><!-- /.freeform-content-wrapper --> 912 </main><!-- /#rz-content-wrap --> 913 914 915 916 917<footer class="site-footer-wrap"> 918 <div class="site-footer"> 919 920 921 922 923<div class="rz-section-block-wrap position-relative" style="background-color:#423859;--rz-section-padding-sm:48px 0;--rz-section-padding-md:48px 0;--rz-section-padding-lg:48px 0;"> 924 925 926 927 <div class="rz-section-block container" style="max-width:1460px;"> 928 929 930 931 932 933<div class="rz-row-block d-grid opt_row_columns_5" style="--gap-lg:72px;"> 934<div class="rz-column-block d-flex flex-wrap flex-column justify-content-center align-items-center d-md-flex flex-md-wrap flex-md-column justify-content-md-center align-items-md-center d-lg-flex flex-lg-wrap flex-lg-column justify-content-lg-start align-items-lg-start" style="padding:0px 0px 0px 48px;"> 935 <div class="rz-element-wrapper rz-rte-block-wrapper footer-logo-section d-flex"> 936 937 <a href="./" class="d-flex align-items-center text-decoration-none footer-logo"> 938 <img loading="lazy" src="website-Assets/main-logo.png?t=202601221426040" alt="Addison, IL Events" class="footer-logo"> 939 </a> 940 941 </div><!-- /.rz-element-wrapper --> 942 943 944 945 946 947 948 949<div class="rz-element-wrapper rz-button-wrapper has-edit-buttons move-to-offcanvas" 950 951 style="margin:32px 0px 0px 0px;"> 952 953 <div class="center-top"> 954 <div class="rz-btns-container"> 955
955<script> 956 RZ.module = 'generic'; 957 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/buttons-editform.jsp"; 958 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Buttons</span>'; 959 RZ.caption = ''; 960 RZ.set = 'pageid=11b40f1f-c380-4a17-83b1-22f4c7f228af'; 961 RZ.options = ''; 962 if (typeof RZaction != 'undefined') RZaction('editform'); 963 </script>
963 964 </div> 965 </div> 966 <div class="rz-element rz-button-wrap d-flex flex-wrap" 967 style="gap:16px;"> 968 969<div class="d-flex align-items-stretch" data-aos-duration="600"> 970 <a href="https://www.facebook.com/AddisonEvents" target="_blank" 971 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 972 style="background:linear-gradient(90deg, #423859 0%, #423859 100%);--bs-btn-border-width:0px;padding:0px 0px 0px 0px;"> 973 974 975 976 977 <i class="fab fa-facebook rz-btn-icon flex-shrink-0" style="font-size:24px;width:40px;height:40px;line-height:40px;color:#fff;" aria-hidden="true"></i> 978 979 980 981 982 983 984 985 986 987 </a> 988</div> 989 990<div class="d-flex align-items-stretch" data-aos-duration="600"> 991 <a href="https://x.com/AddisonVillage" target="_blank" 992 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 993 style="background:linear-gradient(90deg, #423859 0%, #423859 100%);--bs-btn-border-width:0px;padding:0px 0px 0px 0px;"> 994 995 996 997 998 <i class="bi bi-twitter-x rz-btn-icon flex-shrink-0" style="font-size:24px;width:40px;height:40px;line-height:40px;color:#fff;" aria-hidden="true"></i> 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 </a> 1009</div> 1010 1011<div class="d-flex align-items-stretch" data-aos-duration="600"> 1012 <a href="https://www.youtube.com/channel/UCDyH_Ba0GsQk7gkB_GjFr_Q" target="_blank" 1013 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 1014 style="background:linear-gradient(90deg, #423859 0%, #423859 100%);--bs-btn-border-width:0px;padding:0px 0px 0px 0px;"> 1015 1016 1017 1018 1019 <i class="fab fa-youtube rz-btn-icon flex-shrink-0" style="font-size:24px;width:40px;height:40px;line-height:40px;color:#fff;" aria-hidden="true"></i> 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 </a> 1030</div> 1031 1032 </div> 1033</div> 1034 1035 1036 1037</div><div class="rz-column-block d-flex flex-wrap flex-column justify-content-start align-items-start d-md-flex flex-md-wrap flex-md-column justify-content-md-start align-items-md-start d-lg-flex flex-lg-wrap flex-lg-column justify-content-lg-start align-items-lg-start"> 1038 1039 1040 1041 1042<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons" 1043 > 1044 <div class="center-top"> 1045 <div class="rz-btns-container"> 1046
1046<script language="JavaScript" type="text/JavaScript"> 1047 RZ.module = 'generic'; 1048 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1049 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1050 RZ.caption = ''; 1051 RZ.set = 'pageid=9a4890e0-e1ad-4a01-8d02-0f3c627470d3'; 1052 RZ.options = ''; 1053 if (typeof RZaction != 'undefined') RZaction('editform'); 1054 </script>
1054 1055 </div> 1056 </div> 1057 1058 1059 <div class="rz-module-header d-flex align-items-center gap-2"> 1060 1061 1062 <span class="rz-module-header-text">Village of Addison, IL</span> 1063 1064 1065 </div> 1066 1067 1068 <div class="rz-element rz-link-list-wrap"> 1069 <div class="list-group list-group-flush" > 1070 1071 <a href="https://maps.app.goo.gl/5asV7Bq6vrT82gKR8" target="_blank" 1072 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1073 style="gap:16px;color:#FFF;"> 1074 1075 <i class="material-icons|business flex-shrink-0 lh-1 d-inline-flex align-items-center justify-content-center" style="line-height:1;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#A0B4D9;"></i> 1076 1077 <span style="color:#FFF;font-size:18px;">1 Friendship Plaza, Addison IL 60101</span> 1078 1079 </a> 1080 1081 <a href="index.php" target="_self" 1082 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1083 style="gap:16px;color:#FFF;"> 1084 1085 <i class="material-icons|phone flex-shrink-0 lh-1 d-inline-flex align-items-center justify-content-center" style="line-height:1;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#A0B4D9;"></i> 1086 1087 <span style="color:#FFF;font-size:18px;">630-543-4100</span> 1088 1089 </a> 1090 1091 </div><!-- /.list-group --> 1092 </div><!-- /.rz-element --> 1093</div><!-- /.rz-element-wrapper --> 1094 1095 1096 1097 1098</div><div class="rz-column-block d-flex flex-wrap flex-column justify-content-start align-items-start d-md-flex flex-md-wrap flex-md-column justify-content-md-start align-items-md-start d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-center align-items-lg-center"> 1099 1100 1101 1102 1103<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons" 1104 > 1105 <div class="center-top"> 1106 <div class="rz-btns-container"> 1107
1107<script language="JavaScript" type="text/JavaScript"> 1108 RZ.module = 'generic'; 1109 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1110 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1111 RZ.caption = ''; 1112 RZ.set = 'pageid=04c3e6a4-b365-4ea1-bd48-486c88023034'; 1113 RZ.options = ''; 1114 if (typeof RZaction != 'undefined') RZaction('editform'); 1115 </script>
1115 1116 </div> 1117 </div> 1118 1119 1120 1121 <div class="rz-element rz-link-list-wrap"> 1122 <div class="list-group list-group-flush" > 1123 1124 <a href="index.php" target="_self" 1125 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1126 style="gap:16px;color:#FFF;"> 1127 1128 <span style="color:#FFF;font-size:18px;">Home</span> 1129 1130 </a> 1131 1132 <a href="events/index.php?view=month&month=03&day=01&year=2026" target="_blank" 1133 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1134 style="gap:16px;color:#FFF;"> 1135 1136 <span style="color:#FFF;font-size:18px;">Events</span> 1137 1138 </a> 1139 1140 <a href="participate/index.php" target="_self" 1141 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1142 style="gap:16px;color:#FFF;"> 1143 1144 <span style="color:#FFF;font-size:18px;">Participate</span> 1145 1146 </a> 1147 1148 <a href="faq/index.php" target="_self" 1149 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1150 style="gap:16px;color:#FFF;"> 1151 1152 <span style="color:#FFF;font-size:18px;">FAQ</span> 1153 1154 </a> 1155 1156 </div><!-- /.list-group --> 1157 </div><!-- /.rz-element --> 1158</div><!-- /.rz-element-wrapper --> 1159 1160 1161 1162 1163</div><div class="rz-column-block d-flex flex-wrap justify-content-start d-md-flex flex-md-wrap justify-content-md-start" style="padding:0px 48px 0px 0px;"> 1164 1165 1166 1167 1168<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons" 1169 > 1170 <div class="center-top"> 1171 <div class="rz-btns-container"> 1172
1172<script language="JavaScript" type="text/JavaScript"> 1173 RZ.module = 'generic'; 1174 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1175 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1176 RZ.caption = ''; 1177 RZ.set = 'pageid=be6ca659-8524-486c-8a03-d172b4b56c18'; 1178 RZ.options = ''; 1179 if (typeof RZaction != 'undefined') RZaction('editform'); 1180 </script>
1180 1181 </div> 1182 </div> 1183 1184 1185 1186 <div class="rz-element rz-link-list-wrap"> 1187 <div class="list-group list-group-flush" > 1188 1189 <a href="http://www.addisonadvantage.org/" target="_blank" 1190 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1191 style="gap:16px;color:#FFF;"> 1192 1193 <span style="color:#FFF;font-size:18px;">Village Information</span> 1194 1195 </a> 1196 1197 <a href="faq/contact.php" target="_self" 1198 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1199 style="gap:16px;color:#FFF;"> 1200 1201 <span style="color:#FFF;font-size:18px;">Contact Us</span> 1202 1203 </a> 1204 1205 </div><!-- /.list-group --> 1206 </div><!-- /.rz-element --> 1207</div><!-- /.rz-element-wrapper --> 1208 1209 1210 1211 1212</div> 1213 1214 1215 1216</div><!-- /.rz-row-block --> 1217 1218 1219 1220 1221<div class="rz-row-block d-grid"> 1222<div class="rz-column-block"> 1223 1224 1225<div class="rz-element-wrapper rz-single-image-wrapper has-edit-buttons home-bg-img hide-edit-buttons" 1226 > 1227 <div class="center-center"> 1228 <div class="rz-btns-container"> 1229
1229<script language="JavaScript" type="text/JavaScript"> 1230 RZ.module = 'generic'; 1231 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/image-editform.jsp"; 1232 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Image</span>'; 1233 RZ.caption = ''; 1234 RZ.set = 'pageid=2706ef5e-3cb4-44b1-9a2c-15c5d71c4d8f'; 1235 RZ.options = ''; 1236 if (typeof RZaction != 'undefined') RZaction('editform'); 1237 </script>
1237 1238 </div> 1239 </div> 1240 1241 <div class="rz-element rz-single-image-wrap"> 1242 1243 <div class="rz-single-image position-relative"> 1244 1245 1246 <img loading="lazy" 1247 src="website-Assets/home-bg-img.png?t=202601260459400" 1248 alt="home-bg-img" 1249 style="width:100%;" 1250 > 1251 1252 </div><!-- /.rz-single-image --> 1253 1254 </div><!-- /.rz-single-image-wrap --> 1255</div><!-- /.rz-element-wrapper --> 1256 1257 1258 1259 1260 1261</div> 1262 1263 1264 1265</div><!-- /.rz-row-block --> 1266 1267 1268 1269 1270 </div><!-- /.rz-section-block --> 1271</div><!-- /.rz-section-block-wrap --> 1272 1273 1274 </div><!-- /.site-footer --> 1275</footer><!-- /.site-footer-wrap --> 1276<div class="offcanvas-lg offcanvas-bottom" 1277 tabindex="-1" 1278 id="offcanvasHeaderItems"> 1279 <div class="offcanvas-header"> 1280 <button type="button" 1281 class="btn-close" 1282 data-bs-dismiss="offcanvas" 1283 aria-label="Close" 1284 data-bs-target="#offcanvasHeaderItems"></button> 1285 </div> 1286 <div class="offcanvas-body offcanvasHeaderItems-offcanvas-body pt-0"></div> 1287</div><!-- #offcanvasHeaderItems --> 1288 1289 1290<div class="modal modal-lg fade" id="searchModal" tabindex="-1" role="dialog" aria-labelledby="searchModal" style="--bs-modal-width:640px;"> 1291 <div class="modal-dialog modal-dialog-centered" role="Site Search"> 1292 <div class="modal-content px-0"> 1293 <div class="modal-header border-0 pb-0 px-lg-3 pt-4"> 1294 <h5>Search Addison, IL Events</h5> 1295 <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> 1296 </div> 1297 <div class="modal-body p-0"> 1298 <form class="form-inline overflow-hidden" method="GET" action="search.php" role="search" aria-label="sitewide"> 1299 <div class="d-flex relative bg-white p-2 px-3"> 1300 <div class="position-relative w-100"> 1301 <div class="form-floating w-100"> 1302 <input id="autocompleteme" autocomplete="off" class="form-control form-control-lg m-0 w-100" name="q" type="search" placeholder="Search..."> 1303 <label for="autocompleteme" class="bg-transparent">Search...</label> 1304 </div> 1305 <div id="autocomplete-spinner" class="spinner-border text-success position-absolute" role="status" 1306 style="top: 50%; right: 4rem; width: 1rem; height: 1rem; margin-top: -9px; display: none; z-index: 10;--bs-spinner-border-width:0.15em" > 1307 <span class="visually-hidden">Loading...</span> 1308 </div> 1309 </div> 1310 1311 <button class="btn btn-link right-center d-flex gap-3 p-0 pe-4 bg-transparent me-1 ps-0 outline-none lh-1" aria-label="Search"><span class="vr"></span> 1312 <span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class="insta-search-icon"> 1313 <path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path> 1314 </svg><span class="sr-only">Search</span></span> 1315 </button> 1316 </div> 1317 </form> 1318 <div class="all-search-buttons-wrap w-100 lh-1 position-relative" style="display:none"> 1319 <div class="all-search-buttons py-3 p-3 d-md-flex flex-column flex-md-row gap-2 border-top"> 1320 <div class="searchPopover p-3 bg-white d-none d-xl-block popover"> 1321 <div class="searchPopover-arrow"></div><span class="searchPopover-text">Try searching... </span> 1322 </div> 1323 <a href="" class="all-site-search-btn align-content-center btn btn-primary icon-link icon-link-hover w-100 p-2 mb-2 mb-md-0"><span class="d-lg-none">Search</span> <span>site for</span> <span class="search-query-text text-decoration-underline"></span> <i class="bi bi-arrow-right"></i></a> 1324 <a href="" class="all-doc-search-btn align-content-center btn btn-primary icon-link icon-link-hover w-100 p-2"><span class="d-lg-none">Search</span> <span>documents for</span> <span class="search-query-text text-decoration-underline"></span> <i class="bi bi-arrow-right"></i></a> 1325 </div><!-- /.search-buttons --> 1326 </div><!-- /.all-search-buttons-wrap --> 1327 <div class="popular-pages-search p-2"></div> 1328 </div><!-- /.modal-body --> 1329 </div><!-- /.modal-content --> 1330 </div><!-- /.modal-dialog --> 1331</div><!-- /.modal --> 1332 1333 1334 1335 1336<div class="modal fade confirmation-popup" style="--bs-modal-width:420px;z-index:1100" tabindex="-1" data-bs-backdrop="static"> 1337 <div class="modal-dialog modal-dialog-centered"> 1338 <div class="modal-content"> 1339 <div class="modal-body p-4 text-center"> 1340 <div class="d-flex justify-content-center"> 1341 <i class="d-flex lh-1 fs-3 rounded-circle bg-danger-subtle p-4 border-info text-danger-emphasis bi bi-exclamation-octagon"></i> 1342 </div> 1343 <div class="d-flex"></div> 1344 <p class="m-0 mt-3 px-sm-"><span class="fw-bold d-block fs-4 mb-2">Important</span> You are about to leave <strong>Addison, IL Events</strong> and visit an external site, do you wish to continue?</p> 1345 </div> 1346 <div class="modal-footer flex-nowrap p-0"> 1347 <button id="confirmLeave" type="button" class="btn btn-lg btn-link text-success fs-6 text-decoration-none col-6 py-3 m-0 border-end" style="border-radius:0 0 0 var(--rz-modal-border-radius)"><strong>Yes, leave <i class="bi bi-box-arrow-up-right ms-2 fs-5 lh-1"></i></strong></button> 1348 <button type="button" class="btn btn-lg btn-link text-danger fw-bold fs-6 text-decoration-none col-6 py-3 m-0" data-bs-dismiss="modal" id="cancelLeave" style="border-radius:0 0 var(--rz-modal-border-radius)">No, Stay </button> 1349 </div> 1350 </div> 1351 </div> 1352</div> 1353
1354<script> 1355$(document).ready(function () { 1356 let externalLink = ''; // Store the external link URL 1357 1358 $('a') 1359 .not('[href^="javascript:"]') 1360 .not('[href^="mailto:"]') 1361 .not('[href^="tel:"]') 1362 .not('[href="http://cms4.revize.com/revize/supportrevize/revize_faq.php"]') 1363 .not('[href="https://intercom.help/revizefaqs/en/"]') 1364 .not('.rz-brand-footer a') 1365 .not('#revize-login') 1366 .not('.copy-live-link') 1367 .on('click', function (event) { 1368 // Ignore links with .rzBtn children 1369 if ($(this).find('span.rzBtn').length === 0) { 1370 const linkUrl = $(this).prop('href'); 1371 const linkHost = new URL(linkUrl).hostname; 1372 const currentHost = window.location.hostname; 1373 1374 // Treat current domain and all revize.com domains/subdomains as internal 1375 const isRevizeDomain = 1376 linkHost === 'revize.com' || 1377 linkHost.endsWith('.revize.com'); 1378 1379 // If different domain and NOT a Revize domain, show confirmation popup 1380 if (linkHost !== currentHost && !isRevizeDomain) { 1381 event.preventDefault(); 1382 externalLink = linkUrl; 1383 $('.confirmation-popup').addClass('show').show(); 1384 } 1385 } 1386 }); 1387 1388 // Confirm external navigation 1389 $('#confirmLeave').on('click', function () { 1390 if (externalLink) { 1391 window.open(externalLink, '_blank'); 1392 } 1393 1394 $('.confirmation-popup').removeClass('show').hide(); 1395 externalLink = ''; 1396 }); 1397 1398 // Cancel external navigation 1399 $('#cancelLeave').on('click', function () { 1400 $('.confirmation-popup').removeClass('show').hide(); 1401 externalLink = ''; 1402 }); 1403}); 1404</script>
1404 1405 <div class="modal fade" 1406 id="event-modal" 1407 tabindex="-1" 1408 role="dialog" 1409 aria-labelledby="modal-event-title" 1410 aria-hidden="true"> 1411 <div id="event-modal-dialog" 1412 class="modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable" 1413 role="document" 1414 style="--bs-modal-width:1000px"> 1415 <div class="modal-content"> 1416 1417 <div class="modal-header align-items-center"> 1418 <div> 1419 <h2 class="h4 modal-subtitle m-0 fs-4 fw-bold">Event Details</h2> 1420 </div> 1421 <button type="button" 1422 class="btn-close mt-0" 1423 data-bs-dismiss="modal" 1424 aria-label="Close"></button> 1425 </div> 1426 1427 <div class="modal-body p-0" 1428 id="modal-event-body"> 1429 <div class="center-center"><div class="rz-btns-container"></div></div> 1430 <div class="row row-cols-lg-2 g-0 mx-0"> 1431 <div class="event-modal-header" 1432 style="min-height:200px"></div><!-- /.event-modal-header for image --> 1433 <div class="event-details d-flex flex-column has-edit-buttons"> 1434 <div class="d-flex align-items-start justify-content-between bg-light p-4"> 1435 <div class="w-100"> 1436 <div class="d-flex align-items-center gap-3"> 1437 <div class="event-border-color" 1438 style="margin-top:3px;width:12px;height:26px;border-radius:100px;align-self:start;"></div> 1439 <div class="w-100"> 1440 <div class="d-flex justify-content-between align-items-center"> 1441 <h3 class="fs-4 fw-bold" id="modal-event-title">City Council Meeting </h3> 1442 <a href="calendar" 1443 class="flex-shrink-0 btn btn-light bg-white border-0 btn-sm" 1444 data-bs-toggle="tooltip" 1445 data-bs-placement="left" 1446 data-bs-title="view Calendar" 1447 data-bs-offset="0,20"> 1448 <i class="bi bi-box-arrow-up-right"></i> 1449 <span class="sr-only">View Calendar</span> 1450 </a> 1451 </div> 1452 1453 <p class="text-muted row row-cols-1 g-2 my-0 p-0 fw-normal lh-sm small"> 1454 <span class="modal-event-date w-max-content"><i class="bi bi-calendar4-event me-2"></i></span> 1455 <span class="modal-event-time"><i class="bi bi-clock me-2"></i></span> 1456 <span class="modal-location w-100"><i class="bi bi-geo-alt me-2"></i></span> 1457 </p> 1458 </div> 1459 </div> 1460 </div> 1461 <button type="button" 1462 class="btn-close bg-white d-none" 1463 data-bs-dismiss="modal" 1464 aria-label="Close"></button> 1465 </div><!-- /.d-flex --> 1466 1467 <div class="d-flex flex-column p-4 my-auto row-gap-4"> 1468 <div class="modal-event-description small"> 1469 <h4 class="h6 fw-bold">Description</h4> 1470 <div id="modal-event-subtitle"></div> 1471 <div id="modal-event-description"> 1472 </div> 1473 </div> 1474 <div style="width: 100%" id="modal-event-location" class="ratio ratio-16x9"></div> 1475 </div><!-- /.d-flex --> 1476 1477 <div class="modal-action-buttons d-flex gap-2 mt-auto mb-4 px-4"> 1478 1479 <a href="#" 1480 class="btn btn-primary border-0" id="modal-event-readmore">Read More</a> 1481 </div><!-- /.modal-action-buttons --> 1482 1483 </div><!-- /.event-details --> 1484 </div><!-- /.row --> 1485 </div><!-- /.modal-body --> 1486 </div><!-- /.modal-content --> 1487 </div> 1488 </div> 1489 1490 <style> 1491 #modal-event-duration{display:none} 1492 .rz-business-inner-map{border:1px solid var(--bs-border-color)!important;border-radius:var(--bs-border-radius)} 1493 </style> 1494 1495<div id="share-modal-section"> 1496 <div class="modal fade" id="shareModal" tabindex="-1" role="dialog" aria-labelledby="shareModal"> 1497 <div class="modal-dialog modal-dialog-centered" role="document"> 1498 <div class="modal-content"> 1499 <div class="modal-header border-0 bg-transparent pb-0 px-lg-4 pt-4"> 1500 <div class="w-100 text-center"> 1501 <span class="d-block h5 mb-1 w-100">Share this page</span> 1502 <p class="mb-1">On your favorite social media platform</p> 1503 </div> 1504 <button type="button" class="btn-close position-absolute end-0 top-0 m-3" data-bs-dismiss="modal" aria-label="Close"></button> 1505 </div> 1506 <div class="modal-body p-lg-4"> 1507 <div class="share-btns row m-0 row-cols-md-3 gap-2"> 1508 <a href="#" class="btn btn-primary btn-facebook" target="_blank"> 1509 <i class="fa-brands fs-5 fa-square-facebook"></i> Facebook 1510 </a> 1511 1512 <a href="#" class="btn btn-primary btn-twitter" target="_blank"> 1513 <i class="fa-brands fs-5 fa-x-twitter"></i> x(twitter) 1514 </a> 1515 1516 <a href="#" class="btn btn-primary btn-linkedin" target="_blank"> 1517 <i class="fa-brands fs-5 fa-linkedin"></i> Linkedin 1518 </a> 1519 1520 <a href="#" class="btn btn-primary btn-reddit" target="_blank"> 1521 <i class="fa-brands fs-5 fa-square-reddit"></i> reddit 1522 </a> 1523 <div class="w-100 p-0 my-2"><div class="d-flex align-items-center"><div class="border-top flex-fill"></div><span class="bg-body px-3">Or</span><div class="border-top flex-fill"></div></div></div> 1524 1525 <a href="" class="btn btn-outline-dark w-100 border emailpage"><i class="fa-regular fs-5 fa-envelope"></i> Email Page Link</a> 1526 1527 <a href="" class="btn btn-outline-dark w-100 border share-copy-link"><i class="fa-regular fs-5 fa-copy"></i> Copy Current URL</a> 1528 1529 </div><!-- /.share-btns --> 1530 1531
1531<script> 1532 $(document).ready(function () { 1533 // Build social share URLs from current page 1534 var pageUrl = window.location.href; 1535 var encodedUrl = encodeURIComponent(pageUrl); 1536 1537 $('.btn-facebook').attr( 1538 'href', 1539 'https://www.facebook.com/sharer/sharer.php?u=' + encodedUrl 1540 ); 1541 1542 $('.btn-twitter').attr( 1543 'href', 1544 'https://twitter.com/intent/tweet?url=' + encodedUrl 1545 ); 1546 1547 $('.btn-linkedin').attr( 1548 'href', 1549 'https://www.linkedin.com/sharing/share-offsite/?url=' + encodedUrl 1550 ); 1551 1552 $('.btn-reddit').attr( 1553 'href', 1554 'https://www.reddit.com/submit?url=' + encodedUrl 1555 ); 1556 1557 // Copy to clipboard 1558 $('.share-copy-link').on('click', function (e) { 1559 e.preventDefault(); 1560 1561 var urlToCopy = $(this).attr('href') || $(this).data('url') || window.location.href; 1562 1563 if (navigator.clipboard && navigator.clipboard.writeText) { 1564 navigator.clipboard 1565 .writeText(urlToCopy) 1566 .then(function () { 1567 new bootstrap.Toast(document.getElementById('coppiedToast')).show(); 1568 }) 1569 .catch(function () { 1570 fallbackCopy(urlToCopy); 1571 }); 1572 } else { 1573 fallbackCopy(urlToCopy); 1574 } 1575 }); 1576 1577 function fallbackCopy(text) { 1578 var $tempInput = $('<input style="position:absolute;left:-9999px;">'); 1579 $('body').append($tempInput); 1580 $tempInput.val(text).select(); 1581 document.execCommand('copy'); 1582 $tempInput.remove(); 1583 new bootstrap.Toast(document.getElementById('coppiedToast')).show(); 1584 } 1585 1586 // Email page link 1587 $('.emailpage').on('click', function (e) { 1588 e.preventDefault(); 1589 1590 var pageUrl = window.location.href; 1591 var subject = encodeURIComponent('Check out this page'); 1592 var body = encodeURIComponent('Hey,\n\nI thought you might find this interesting:\n' + pageUrl); 1593 window.location.href = 'mailto:?subject=' + subject + '&body=' + body; 1594 }); 1595 }); 1596 </script>
1596 1597 1598 <div class="toast-container position-fixed top-0 start-50 translate-middle-x"> 1599 <div id="coppiedToast" class="toast align-items-center align-items-center text-bg-success border-0 border-0 fade" role="alert" aria-live="assertive" aria-atomic="true"> 1600 <div class="d-flex"> 1601 <div class="toast-body"> 1602 URL copied to clipboard! 1603 </div> 1604 <button type="button" class="btn-close btn-close-white me-2 m-auto" data-bs-dismiss="toast" aria-label="Close"></button> 1605 </div> 1606 </div> 1607 </div> 1608 1609 </div><!-- /.modal-body --> 1610 </div><!-- /.modal-content --> 1611 </div><!-- /.modal-dialog --> 1612 </div><!-- /.modal --> 1613</div><!-- /#modal-section --><link href="https://cdn.jsdelivr.net/gh/lipis/[email protected]/css/flag-icons.min.css" rel="stylesheet" type="text/css" /> 1614<div class="modal fade" id="translateModal" tabindex="-1" aria-hidden="true"> 1615 <div class="modal-dialog modal-sm modal-dialog-centered modal-dialog-scrollable"> 1616 <div class="modal-content"> 1617 <form role="search" aria-label="Search Languages" class="sticky-top bg-white m-0 align-self-center position-relative translate-search w-100 p-3 border-bottom"> 1618 <input type="search" placeholder="Search languages..." autocomplete="off" class="form-control" id="translatesearch-input"> 1619 <button aria-label="Search" tabindex="-1" class="btn btn-link position-absolute top-50 end-0 translate-middle-y gap-3 ps-0 pe-3 me-3 me-1 lh-1 d-flex align-items-center"> 1620 <label for="translatesearch-input"><span class="visually-hidden">Search</span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class="DocSearch-Search-Icon"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg></label> 1621 </button>
1622 </form> 1623 <div class="modal-body" style="max-height:300px"> 1624 <div class="lang-no-results text-center d-none text-muted small">No matching languages.</div> 1625 <div class="translation-links row row-cols-lg-1"> 1626 <div> 1627 <button class="btn btn-link text-body p-2 text-start w-100 English" data-lang="English" translate="no"> 1628 <span class="fi fi-us me-2"></span><strong>English</strong> 1629 </button> 1630 </div> 1631 <div> 1632 <button class="btn btn-link text-body p-2 text-start w-100 Afrikaans" data-lang="Afrikaans"> 1633 <span class="fi fi-za me-2"></span>Afrikaans 1634 </button> 1635 </div> 1636 <div> 1637 <button class="btn btn-link text-body p-2 text-start w-100 Albanian" data-lang="Albanian"> 1638 <span class="fi fi-al me-2"></span>Albanian 1639 </button> 1640 </div> 1641 <div> 1642 <button class="btn btn-link text-body p-2 text-start w-100 Arabic" data-lang="Arabic"> 1643 <span class="fi fi-sa me-2"></span>Arabic 1644 </button> 1645 </div> 1646 <div> 1647 <button class="btn btn-link text-body p-2 text-start w-100 Armenian" data-lang="Armenian"> 1648 <span class="fi fi-am me-2"></span>Armenian 1649 </button> 1650 </div> 1651 <div> 1652 <button class="btn btn-link text-body p-2 text-start w-100 Azerbaijani" data-lang="Azerbaijani"> 1653 <span class="fi fi-az me-2"></span>Azerbaijani 1654 </button> 1655 </div> 1656 <div> 1657 <button class="btn btn-link text-body p-2 text-start w-100 Basque" data-lang="Basque"> 1658 <span class="fi fi-es me-2"></span>Basque 1659 </button> 1660 </div> 1661 <div> 1662 <button class="btn btn-link text-body p-2 text-start w-100 Belarusian" data-lang="Belarusian"> 1663 <span class="fi fi-by me-2"></span>Belarusian 1664 </button> 1665 </div> 1666 <div> 1667 <button class="btn btn-link text-body p-2 text-start w-100 Bengali" data-lang="Bengali"> 1668 <span class="fi fi-bd me-2"></span>Bengali 1669 </button> 1670 </div> 1671 <div> 1672 <button class="btn btn-link text-body p-2 text-start w-100 Bosnian" data-lang="Bosnian"> 1673 <span class="fi fi-ba me-2"></span>Bosnian 1674 </button> 1675 </div> 1676 <div> 1677 <button class="btn btn-link text-body p-2 text-start w-100 Bulgarian" data-lang="Bulgarian"> 1678 <span class="fi fi-bg me-2"></span>Bulgarian 1679 </button> 1680 </div> 1681 <div> 1682 <button class="btn btn-link text-body p-2 text-start w-100 Catalan" data-lang="Catalan"> 1683 <span class="fi fi-ad me-2"></span>Catalan 1684 </button> 1685 </div> 1686 <div> 1687 <button class="btn btn-link text-body p-2 text-start w-100 Cebuano" data-lang="Cebuano"> 1688 <span class="fi fi-ph me-2"></span>Cebuano 1689 </button> 1690 </div> 1691 <div> 1692 <button class="btn btn-link text-body p-2 text-start w-100 Chinese" data-lang="Chinese (Simplified)"> 1693 <span class="fi fi-cn me-2"></span>Chinese (Simplified) 1694 </button> 1695 </div> 1696 <div> 1697 <button class="btn btn-link text-body p-2 text-start w-100 Chinese" data-lang="Chinese (Traditional)"> 1698 <span class="fi fi-tw me-2"></span>Chinese (Traditional) 1699 </button> 1700 </div> 1701 <div> 1702 <button class="btn btn-link text-body p-2 text-start w-100 Croatian" data-lang="Croatian"> 1703 <span class="fi fi-hr me-2"></span>Croatian 1704 </button> 1705 </div> 1706 <div> 1707 <button class="btn btn-link text-body p-2 text-start w-100 Czech" data-lang="Czech"> 1708 <span class="fi fi-cz me-2"></span>Czech 1709 </button> 1710 </div> 1711 <div> 1712 <button class="btn btn-link text-body p-2 text-start w-100 Danish" data-lang="Danish"> 1713 <span class="fi fi-dk me-2"></span>Danish 1714 </button> 1715 </div> 1716 <div> 1717 <button class="btn btn-link text-body p-2 text-start w-100 Dutch" data-lang="Dutch"> 1718 <span class="fi fi-nl me-2"></span>Dutch 1719 </button> 1720 </div> 1721 <div> 1722 <button class="btn btn-link text-body p-2 text-start w-100 Esperanto" data-lang="Esperanto"> 1723 <span class="fi fi-un me-2"></span>Esperanto 1724 </button> 1725 </div> 1726 <div> 1727 <button class="btn btn-link text-body p-2 text-start w-100
1727Estonian" data-lang="Estonian"> 1728 <span class="fi fi-ee me-2"></span>Estonian 1729 </button> 1730 </div> 1731 <div> 1732 <button class="btn btn-link text-body p-2 text-start w-100 Filipino" data-lang="Filipino"> 1733 <span class="fi fi-ph me-2"></span>Filipino 1734 </button> 1735 </div> 1736 <div> 1737 <button class="btn btn-link text-body p-2 text-start w-100 Finnish" data-lang="Finnish"> 1738 <span class="fi fi-fi me-2"></span>Finnish 1739 </button> 1740 </div> 1741 <div> 1742 <button class="btn btn-link text-body p-2 text-start w-100 French" data-lang="French"> 1743 <span class="fi fi-fr me-2"></span>French 1744 </button> 1745 </div> 1746 <div> 1747 <button class="btn btn-link text-body p-2 text-start w-100 Galician" data-lang="Galician"> 1748 <span class="fi fi-es me-2"></span>Galician 1749 </button> 1750 </div> 1751 <div> 1752 <button class="btn btn-link text-body p-2 text-start w-100 Georgian" data-lang="Georgian"> 1753 <span class="fi fi-ge me-2"></span>Georgian 1754 </button> 1755 </div> 1756 <div> 1757 <button class="btn btn-link text-body p-2 text-start w-100 German" data-lang="German"> 1758 <span class="fi fi-de me-2"></span>German 1759 </button> 1760 </div> 1761 <div> 1762 <button class="btn btn-link text-body p-2 text-start w-100 Greek" data-lang="Greek"> 1763 <span class="fi fi-gr me-2"></span>Greek 1764 </button> 1765 </div> 1766 <div> 1767 <button class="btn btn-link text-body p-2 text-start w-100 Gujarati" data-lang="Gujarati"> 1768 <span class="fi fi-in me-2"></span>Gujarati 1769 </button> 1770 </div> 1771 <div> 1772 <button class="btn btn-link text-body p-2 text-start w-100 Haitian" data-lang="Haitian Creole"> 1773 <span class="fi fi-ht me-2"></span>Haitian Creole 1774 </button> 1775 </div> 1776 <div> 1777 <button class="btn btn-link text-body p-2 text-start w-100 Hausa" data-lang="Hausa"> 1778 <span class="fi fi-ng me-2"></span>Hausa 1779 </button> 1780 </div> 1781 <div> 1782 <button class="btn btn-link text-body p-2 text-start w-100 Hebrew" data-lang="Hebrew"> 1783 <span class="fi fi-il me-2"></span>Hebrew 1784 </button> 1785 </div> 1786 <div> 1787 <button class="btn btn-link text-body p-2 text-start w-100 Hindi" data-lang="Hindi"> 1788 <span class="fi fi-in me-2"></span>Hindi 1789 </button> 1790 </div> 1791 <div> 1792 <button class="btn btn-link text-body p-2 text-start w-100 Hmong" data-lang="Hmong"> 1793 <span class="fi fi-cn me-2"></span>Hmong 1794 </button> 1795 </div> 1796 <div> 1797 <button class="btn btn-link text-body p-2 text-start w-100 Hungarian" data-lang="Hungarian"> 1798 <span class="fi fi-hu me-2"></span>Hungarian 1799 </button> 1800 </div> 1801 <div> 1802 <button class="btn btn-link text-body p-2 text-start w-100 Icelandic" data-lang="Icelandic"> 1803 <span class="fi fi-is me-2"></span>Icelandic 1804 </button> 1805 </div> 1806 <div> 1807 <button class="btn btn-link text-body p-2 text-start w-100 Igbo" data-lang="Igbo"> 1808 <span class="fi fi-ng me-2"></span>Igbo 1809 </button> 1810 </div> 1811 <div> 1812 <button class="btn btn-link text-body p-2 text-start w-100 Indonesian" data-lang="Indonesian"> 1813 <span class="fi fi-id me-2"></span>Indonesian 1814 </button> 1815 </div> 1816 <div> 1817 <button class="btn btn-link text-body p-2 text-start w-100 Irish" data-lang="Irish"> 1818 <span class="fi fi-ie me-2"></span>Irish 1819 </button> 1820 </div> 1821 <div> 1822 <button class="btn btn-link text-body p-2 text-start w-100 Italian" data-lang="Italian"> 1823 <span class="fi fi-it me-2"></span>Italian 1824 </button> 1825 </div> 1826 <div> 1827 <button class="btn btn-link text-body p-2 text-start w-100 Japanese" data-lang="Japanese"> 1828 <span class="fi fi-jp me-2"></span>Japanese 1829 </button> 1830 </div> 1831 <div> 1832 <button class="btn btn-link text-body p-2 text-start w-100 Javanese" data-lang="Javanese"> 1833 <span class="fi fi-id me-2"></span>Javanese 1834 </button> 1835 </div> 1836 <div> 1837 <button class="btn btn-link text-body p-2 text-start w-100 K
1837annada" data-lang="Kannada"> 1838 <span class="fi fi-in me-2"></span>Kannada 1839 </button> 1840 </div> 1841 <div> 1842 <button class="btn btn-link text-body p-2 text-start w-100 Khmer" data-lang="Khmer"> 1843 <span class="fi fi-kh me-2"></span>Khmer 1844 </button> 1845 </div> 1846 <div> 1847 <button class="btn btn-link text-body p-2 text-start w-100 Korean" data-lang="Korean"> 1848 <span class="fi fi-kr me-2"></span>Korean 1849 </button> 1850 </div> 1851 <div> 1852 <button class="btn btn-link text-body p-2 text-start w-100 Lao" data-lang="Lao"> 1853 <span class="fi fi-la me-2"></span>Lao 1854 </button> 1855 </div> 1856 <div> 1857 <button class="btn btn-link text-body p-2 text-start w-100 Latin" data-lang="Latin"> 1858 <span class="fi fi-va me-2"></span>Latin 1859 </button> 1860 </div> 1861 <div> 1862 <button class="btn btn-link text-body p-2 text-start w-100 Latvian" data-lang="Latvian"> 1863 <span class="fi fi-lv me-2"></span>Latvian 1864 </button> 1865 </div> 1866 <div> 1867 <button class="btn btn-link text-body p-2 text-start w-100 Lithuanian" data-lang="Lithuanian"> 1868 <span class="fi fi-lt me-2"></span>Lithuanian 1869 </button> 1870 </div> 1871 <div> 1872 <button class="btn btn-link text-body p-2 text-start w-100 Macedonian" data-lang="Macedonian"> 1873 <span class="fi fi-mk me-2"></span>Macedonian 1874 </button> 1875 </div> 1876 <div> 1877 <button class="btn btn-link text-body p-2 text-start w-100 Malay" data-lang="Malay"> 1878 <span class="fi fi-my me-2"></span>Malay 1879 </button> 1880 </div> 1881 <div> 1882 <button class="btn btn-link text-body p-2 text-start w-100 Maltese" data-lang="Maltese"> 1883 <span class="fi fi-mt me-2"></span>Maltese 1884 </button> 1885 </div> 1886 <div> 1887 <button class="btn btn-link text-body p-2 text-start w-100 Maori" data-lang="Maori"> 1888 <span class="fi fi-nz me-2"></span>Maori 1889 </button> 1890 </div> 1891 <div> 1892 <button class="btn btn-link text-body p-2 text-start w-100 Marathi" data-lang="Marathi"> 1893 <span class="fi fi-in me-2"></span>Marathi 1894 </button> 1895 </div> 1896 <div> 1897 <button class="btn btn-link text-body p-2 text-start w-100 Mongolian" data-lang="Mongolian"> 1898 <span class="fi fi-mn me-2"></span>Mongolian 1899 </button> 1900 </div> 1901 <div> 1902 <button class="btn btn-link text-body p-2 text-start w-100 Nepali" data-lang="Nepali"> 1903 <span class="fi fi-np me-2"></span>Nepali 1904 </button> 1905 </div> 1906 <div> 1907 <button class="btn btn-link text-body p-2 text-start w-100 Norwegian" data-lang="Norwegian"> 1908 <span class="fi fi-no me-2"></span>Norwegian 1909 </button> 1910 </div> 1911 <div> 1912 <button class="btn btn-link text-body p-2 text-start w-100 Persian" data-lang="Persian"> 1913 <span class="fi fi-ir me-2"></span>Persian 1914 </button> 1915 </div> 1916 <div> 1917 <button class="btn btn-link text-body p-2 text-start w-100 Polish" data-lang="Polish"> 1918 <span class="fi fi-pl me-2"></span>Polish 1919 </button> 1920 </div> 1921 <div> 1922 <button class="btn btn-link text-body p-2 text-start w-100 Portuguese" data-lang="Portuguese"> 1923 <span class="fi fi-pt me-2"></span>Portuguese 1924 </button> 1925 </div> 1926 <div> 1927 <button class="btn btn-link text-body p-2 text-start w-100 Punjabi" data-lang="Punjabi"> 1928 <span class="fi fi-in me-2"></span>Punjabi 1929 </button> 1930 </div> 1931 <div> 1932 <button class="btn btn-link text-body p-2 text-start w-100 Romanian" data-lang="Romanian"> 1933 <span class="fi fi-ro me-2"></span>Romanian 1934 </button> 1935 </div> 1936 <div> 1937 <button class="btn btn-link text-body p-2 text-start w-100 Russian" data-lang="Russian"> 1938 <span class="fi fi-ru me-2"></span>Russian 1939 </button> 1940 </div> 1941 <div> 1942 <button class="btn btn-link text-body p-2 text-start w-100 Serbian" data-lang="Serbian"> 1943 <span class="fi fi-rs me-2"></span>Serbian 1944 </button> 1945 </div> 1946 <div> 1947 <button class="btn btn-link text-body p-2 text-start w-100 Slovak" data-lang="Slovak"> 1948 <span class="fi fi-sk me-2"></span>Slovak 1949 </button> 1950 </div> 1951 <div> 1952 <button class="btn btn-link text-body p-2 text-start w-100 Slovenian" data-lang="Slovenian"> 1953 <span class="fi fi-si me-2"></span>Slovenian 1954 </button> 1955 </div> 1956 <div> 1957 <button class="btn btn-link text-body p-2 text-start w-100 Somali" data-lang="Somali"> 1958 <span class="fi fi-so me-2"></span>Somali 1959 </button> 1960 </div> 1961 <div> 1962 <button class="btn btn-link text-body p-2 text-start w-100 Spanish" data-lang="Spanish"> 1963 <span class="fi fi-es me-2"></span>Spanish 1964 </button> 1965 </div> 1966 <div> 1967 <button class="btn btn-link text-body p-2 text-start w-100 Swahili" data-lang="Swahili"> 1968 <span class="fi fi-ke me-2"></span>Swahili 1969 </button> 1970 </div> 1971 <div> 1972 <button class="btn btn-link text-body p-2 text-start w-100 Swedish" data-lang="Swedish"> 1973 <span class="fi fi-se me-2"></span>Swedish 1974 </button> 1975 </div> 1976 <div> 1977 <button class="btn btn-link text-body p-2 text-start w-100 Tamil" data-lang="Tamil"> 1978 <span class="fi fi-in me-2"></span>Tamil 1979 </button> 1980 </div> 1981 <div> 1982 <button class="btn btn-link text-body p-2 text-start w-100 Telugu" data-lang="Telugu"> 1983 <span class="fi fi-in me-2"></span>Telugu 1984 </button> 1985 </div> 1986 <div> 1987 <button class="btn btn-link text-body p-2 text-start w-100 Thai" data-lang="Thai"> 1988 <span class="fi fi-th me-2"></span>Thai 1989 </button> 1990 </div> 1991 <div> 1992 <button class="btn btn-link text-body p-2 text-start w-100 Turkish" data-lang="Turkish"> 1993 <span class="fi fi-tr me-2"></span>Turkish 1994 </button> 1995 </div> 1996 <div> 1997 <button class="btn btn-link text-body p-2 text-start w-100 Ukrainian" data-lang="Ukrainian"> 1998 <span class="fi fi-ua me-2"></span>Ukrainian 1999 </button> 2000 </div> 2001 <div> 2002 <button class="btn btn-link text-body p-2 text-start w-100 Urdu" data-lang="Urdu"> 2003 <span class="fi fi-pk me-2"></span>Urdu 2004 </button> 2005 </div> 2006 <div> 2007 <button class="btn btn-link text-body p-2 text-start w-100 Vietnamese" data-lang="Vietnamese"> 2008 <span class="fi fi-vn me-2"></span>Vietnamese 2009 </button> 2010 </div> 2011 <div> 2012 <button class="btn btn-link text-body p-2 text-start w-100 Welsh" data-lang="Welsh"> 2013 <span class="fi fi-gb me-2"></span>Welsh 2014 </button> 2015 </div> 2016 <div> 2017 <button class="btn btn-link text-body p-2 text-start w-100 Yoruba" data-lang="Yoruba"> 2018 <span class="fi fi-ng me-2"></span>Yoruba 2019 </button> 2020 </div> 2021 <div> 2022 <button class="btn btn-link text-body p-2 text-start w-100 Zulu" data-lang="Zulu"> 2023 <span class="fi fi-za me-2"></span>Zulu 2024 </button> 2025 </div> 2026 </div> 2027 </div> 2028 <div class="modal-footer p-2"> 2029 <div class="lang-search-status text-center small text-muted" aria-l
2029ive="polite" aria-atomic="true"></div> 2030 <button type="button" class="btn btn-sm btn-primary ms-auto" data-bs-dismiss="modal">Close</button> 2031 <button class="btn btn-link text-body p-2 text-start translate-reset" translate="no"> 2032 <i class="fa-solid fa-power-off" aria-hidden="true"></i> 2033 <span class="visually-hidden">Reset Translation</span> 2034 </button> 2035 </div> 2036 </div> 2037 </div> 2038</div> 2039<div id="google-translate" class="d-none"></div>
2040<script> 2041function googleTranslateElementInit() { 2042 new google.translate.TranslateElement( 2043 { pageLanguage: 'en', autoDisplay: false, layout: google.translate.TranslateElement.InlineLayout.SIMPLE }, 2044 'google-translate' 2045 ); 2046} 2047</script>
vendor: 2 bytes, line 2047
2047
2048<script> 2049var translateURL = "//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"; 2050$.getScript(translateURL); 2051 2052function clickLanguage(langText, maxTries, intervalMs) { 2053 langText = (langText || '').trim(); 2054 maxTries = maxTries || 30; 2055 intervalMs = intervalMs || 200; 2056 var tries = 0; 2057 var timer = setInterval(function () { 2058 var $frame = $("iframe.skiptranslate"); 2059 if ($frame.length) { 2060 var doc = $frame.contents(); 2061 var $target = doc.find('span.text').filter(function () { 2062 return $(this).text().trim() === langText; 2063 }).closest('a'); 2064 if (!$target.length) { 2065 $target = doc.find('span.text').filter(function () { 2066 return $(this).text().trim() === 'English'; 2067 }).closest('a'); 2068 } 2069 if ($target.length) { 2070 $target.get(0).click(); 2071 clearInterval(timer); 2072 return; 2073 } 2074 } 2075 tries++; 2076 if (tries >= maxTries) clearInterval(timer); 2077 }, intervalMs); 2078} 2079 2080function getCookie(cname) { 2081 let name = cname + "="; 2082 let ca = document.cookie.split(';'); 2083 for(let i = 0; i < ca.length; i++) { 2084 let c = ca[i]; 2085 while (c.charAt(0) == ' ') c = c.substring(1); 2086 if (c.indexOf(name) == 0) return c.substring(name.length, c.length); 2087 } 2088 return ""; 2089} 2090 2091function sanitizeFlag(code) { 2092 var v = (code || "").toLowerCase().trim(); 2093 if (!v || v === "undefined" || v === "null") return ""; 2094 if (!/^[a-z]{2}$/.test(v)) return ""; 2095 return v; 2096} 2097 2098function applyActiveFromCookie() { 2099 var code = sanitizeFlag(getCookie('lang')) || sanitizeFlag(getCookie('code')) || 'us'; 2100 var $btn = $('.translation-links button').filter(function(){ 2101 var dataCode = ($(this).data('code') || '').toString().toLowerCase(); 2102 if (dataCode && dataCode === code) return true; 2103 var cls = ($(this).find('span[class*="fi-"]').attr('class') || ''); 2104 var m = cls.match(/\bfi-([a-z]{2})\b/i); 2105 return m && m[1].toLowerCase() === code; 2106 }).first(); 2107 if (!$btn.length && code === 'us') $btn = $('.translation-links button[data-lang="English"]').first(); 2108 $('.translation-links button').removeClass('active'); 2109 if ($btn.length) $btn.addClass('active'); 2110} 2111 2112(function initSelectedFlag(){ 2113 var initialCode = sanitizeFlag(getCookie('lang')) || sanitizeFlag(getCookie('code')) || "us"; 2114 $('.selected-flag').attr('class', 'fi fi-' + initialCode + ' selected-flag'); 2115 $('.c-code').text(initialCode); 2116 applyActiveFromCookie(); 2117})(); 2118 2119$(".translation-links button").on("click", function () { 2120 var lang = $(this).data("lang"); 2121 $('.translation-links button').removeClass('active'); 2122 $(this).addClass('active'); 2123 clickLanguage(lang); 2124 var cCode = $(this).data('code'); 2125 if (!cCode) { 2126 var cls = $(this).find('span[class*="fi-"]').attr('class') || ''; 2127 var m = cls.match(/\bfi-([a-z]{2})\b/i); 2128 if (m) cCode = m[1].toLowerCase(); 2129 } 2130 if (!cCode) cCode = 'us'; 2131 $('.selected-flag').attr('class', 'fi fi-' + cCode + ' selected-flag'); 2132 $('.c-code').text(cCode); 2133 document.cookie = 'lang=' + cCode + '; path=/'; 2134 document.cookie = 'code=' + cCode + '; path=/'; 2135 return false; 2136}); 2137 2138var $translateReset = $(".translate-reset");
2139$translateReset.on("keydown click", function (e) { 2140 if (e.keyCode === 13 || e.type === "click") { 2141 clickLanguage('English'); 2142 $('.translation-links button').removeClass('active'); 2143 $('.translation-links button[data-lang="English"]').addClass('active'); 2144 $('.selected-flag').attr('class','fi fi-us selected-flag'); 2145 $('.c-code').text('us'); 2146 document.cookie = 'lang=us; path=/'; 2147 document.cookie = 'code=us; path=/'; 2148 } 2149}); 2150 2151(function($){ 2152 var $form = $('.translate-search'); 2153 var $input = $form.find('input[type="search"]'); 2154 var $list = $('.translation-links'); 2155 var $btns = $list.find('div'); 2156 var $empty = $('.lang-no-results'); 2157 var $status = $('.lang-search-status'); 2158 $form.on('submit', function(e){ e.preventDefault(); }); 2159 function norm(s){ 2160 return (s||'').toString().toLowerCase().normalize('NFD').replace(/[\u0300-\u036f]/g,''); 2161 } 2162 $btns.each(function(){ 2163 var $b = $(this); 2164 var txt = $b.text().trim(); 2165 var lang = ($b.data('lang')||'')+''; 2166 $b.attr('data-search', norm(txt + ' ' + lang)); 2167 }); 2168 function updateStatus(visible, total){ 2169 if ($status.length) $status.text(visible + ' of ' + total + ' languages'); 2170 if ($empty.length) $empty.toggleClass('d-none', visible > 0); 2171 } 2172 var total = $btns.length; 2173 updateStatus(total, total); 2174 function filter(){ 2175 var q = norm($input.val()); 2176 if (!q){ 2177 $btns.removeClass('d-none'); 2178 updateStatus(total, total); 2179 return; 2180 } 2181 var visible = 0; 2182 $btns.each(function(){ 2183 var $b = $(this); 2184 var hay = $b.attr('data-search') || ''; 2185 var match = hay.indexOf(q) !== -1; 2186 $b.toggleClass('d-none', !match); 2187 if (match) visible++; 2188 }); 2189 $btns.filter('.d-none').attr('tabindex', -1); 2190 $btns.not('.d-none'); 2191 updateStatus(visible, total); 2192 } 2193 $input.on('input keyup', filter); 2194})(jQuery); 2195// ADA, Fix Google Translate Inputs 2196function fixGoogleTranslateInputs() { 2197 const inputs = [ 2198 { id: "goog-gt-votingInputSrcLang", label: "Source Language Input" }, 2199 { id: "goog-gt-votingInputTrgLang", label: "Target Language Input" }, 2200 { id: "goog-gt-votingInputSrcText", label: "Source Text Input" }, 2201 { id: "goog-gt-votingInputTrgText", label: "Target Text Input" }, 2202 { id: "goog-gt-votingInputVote", label: "Vote Input" }, 2203 ]; 2204 2205 let allLabelsSet = true; 2206 inputs.forEach((item) => { 2207 const input = document.getElementById(item.id); 2208 if (input) { 2209 input.setAttribute("aria-label", item.label); 2210 } else { 2211 allLabelsSet = false; 2212 } 2213 }); 2214 2215 if (allLabelsSet) { 2216 googleObserver.disconnect(); 2217 } 2218 } 2219 const googleObserver = new MutationObserver((mutationsList, observer) => { 2220 for (let mutation of mutationsList) { 2221 if (mutation.type === "childList") { 2222 fixGoogleTranslateInputs(); 2223 } 2224 } 2225 }); 2226 googleObserver.observe(document.body, { childList: true, subtree: true }); 2227 fixGoogleTranslateInputs(); 2228</script>
vendor: 2 bytes, line 2228
2228
2229<script> 2230// === prevent translation on certain elements === 2231var NO_TRANSLATE_SELECTORS = [ 2232 '.material-icons', 2233 '.main-logo', 2234 '.nav-label', 2235 '.mini-calendar', 2236 '.rz-address-wrapper', 2237 '[data-no-translate]', 2238 'a[href^="mailto:"]' 2239]; 2240 2241function applyNoTranslate() { 2242 try { 2243 NO_TRANSLATE_SELECTORS.forEach(function (sel) { 2244 var $els = $(sel); 2245 if ($els.length) { 2246 $els 2247 .addClass('notranslate') 2248 .attr('translate', 'no') 2249 .attr('lang', $els.attr('lang') || 'en'); 2250 } 2251 }); 2252 } catch (e){ 2253 2254 } 2255} 2256 2257$(applyNoTranslate); 2258var noTranslateObserver = new MutationObserver(function () { 2259 applyNoTranslate(); 2260}); 2261noTranslateObserver.observe(document.documentElement, { childList: true, subtree: true }); 2262</script>
2262 2263<div class="offcanvas offcanvas-end offcanvas-business-item" tabindex="-1" id="catalogueDetails" aria-modal="true"> 2264 <div class="offcanvas-body p-0"> 2265 <div class="ratio ratio-16x9 mb-4 featured-image-wrap z-0" style="background-image: url('');"></div> 2266 <button type="button" class="btn-close m-3 me-4 p-2 position-absolute end-0 top-0 bg-white" data-bs-dismiss="offcanvas" aria-label="Close"></button> 2267 <h4 class="p-2 px-md-4 catalogue-title">Catalogue title</h4> 2268 <ul class="nav nav-underline justify-content-start border-bottom m-0 px-4" id="businessTabs" role="tablist"> 2269 <li class="nav-item m-0 " role="presentation"> 2270 <button class="nav-link py-2 active" id="home-tab" data-bs-toggle="tab" data-bs-target="#overview-tab-pane" type="button" role="tab" aria-controls="overview-tab-pane" aria-selected="true">Overview</button> 2271 </li> 2272 <li class="nav-item m-0" role="presentation"> 2273 <button class="nav-link py-2" id="profile-tab" data-bs-toggle="tab" data-bs-target="#about-tab-pane" type="button" role="tab" aria-controls="about-tab-pane" aria-selected="false" tabindex="-1">About</button> 2274 </li> 2275 <li class="nav-item m-0 d-none" role="presentation"> 2276 <button class="nav-link py-2" id="contact-tab" data-bs-toggle="tab" data-bs-target="#photos-tab-pane" type="button" role="tab" aria-controls="photos-tab-pane" aria-selected="false" tabindex="-1">Photos</button> 2277 </li> 2278 </ul> 2279 <div id="business-details"> 2280 <div class="tab-content" id="businessTabContent"> 2281 <div class="tab-pane p-4 fade active show" id="overview-tab-pane" role="tabpanel" tabindex="0"> 2282 <div class="row row-cols-3 row-cols-md-3 py-lg-3 px-2 catalogue-helpful-links"> 2283 <p class="d-flex flex-column text-center m-0"> 2284 <a href="" class="btn btn-link px-0 py-4 p-lg-4 d-flex flex-column text-decoration-none row g-4"><i class="m-0 bi bi-box-arrow-up-right lh-1 fs-2"></i><span>Website</span></a> 2285 </p> 2286 <p class="d-flex flex-column text-center m-0 catalogue-map-link"> 2287 <a href="" class="btn btn-link px-0 py-4 p-lg-4 d-flex flex-column text-decoration-none row g-4"><i class="m-0 bi bi-geo-alt lh-1 fs-2"></i><span>View Map</span></a> 2288 </p> 2289 <!-- <p class="d-flex flex-column text-center m-0"> 2290 <a href="" class="btn btn-link px-0 py-4 p-lg-4 d-flex flex-column text-decoration-none row g-4"><i class="m-0 bi bi-heart lh-1 fs-2"></i><span>Save</span></a> 2291 </p> --> 2292 <p class="d-flex flex-column text-center m-0"> 2293 <a href="" class="btn btn-link px-0 py-4 p-lg-4 d-flex flex-column text-decoration-none row g-4" data-bs-toggle="modal" data-bs-target="#shareModal"><i class="m-0 bi bi-share lh-1 fs-2"></i><span>Share</span></a> 2294 </p> 2295 </div><!-- /.d-flex --> 2296 <hr class="mt-0 mb-4"> 2297 <div class="row row-cols-1 row-cols-md-3 catalogue-contacts gap-md-3"> 2298 </div><!-- /.row --> 2299 <table class="table catalogue-hours"> 2300 <thead> 2301 <tr> 2302 <th scope="col" style="width:160px" class="ps-0 small text-muted">Days</th> 2303 <th scope="col" class="small text-muted">Hours</th> 2304 </tr> 2305 </thead> 2306 2307 <tbody class="table-group-divider"> 2308 <tr> 2309 <th scope="row" class="ps-0 text-nowrap">Sunday</th> 2310 <td></td> 2311 </tr> 2312 <tr> 2313 <th scope="row" class="ps-0 text-nowrap">Monday</th> 2314 <td></td> 2315 </tr> 2316 <tr> 2317 <th scope="row" class="ps-0 text-nowrap">Tuesday</th> 2318 <td></td> 2319 </tr> 2320 <tr> 2321 <th scope="row" class="ps-0 text-nowrap">Wednesday</th> 2322 <td></td> 2323 </tr> 2324 <tr> 2325 <th scope="row" class="ps-0 text-nowrap">Thursday</th> 2326 <td></td> 2327 </tr> 2328 <tr> 2329 <th scope="row" class="ps-0 text-nowrap">Friday</th> 2330 <td></td> 2331 </tr> 2332 <tr> 2333 <th scope="row" class="ps-0 text-nowrap">Saturday</th> 2334 <td></td> 2335 </tr> 2336 </tbody> 2337 </table> 2338 </div><!-- /.tab-pane --> 2339 <div class="tab-pane p-4 fade" id="about-tab-pane" role="tabpanel" tabindex="0"> 2340 </div><!-- /.tab-pane --> 2341 <div class="tab-pane p-4 fade" id="photos-tab-pane" role="tabpanel" tabindex="0"> 2342 <div class="alert alert-warning text-dark border-0 border-start border-warning rounded-0 show" style="border-width:5px!important">#todo masonry has to refresh after clicking photos tab</div> 2343 <div class="rz-gallery-wrap"> 2344
2345 <div id="businessDetailslightgallery" class="row row-cols-1 row-cols-md-2 row-cols-lg-3 g-2" data-masonry="{"percentPosition": true, "itemSelector": ".rz-gallery-image"}" style="position: relative; height: 0px;"> 2346 2347 <!-- <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2348 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2349 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2350 <i class="bi bi-arrows-angle-expand lh-1"></i> 2351 </span> 2352 </div> 2353 2354 <div data-src="_assets_/images/no-image-slider.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2355 <img src="_assets_/images/no-image-slider.jpg" class="w-100" alt=""> 2356 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2357 <i class="bi bi-arrows-angle-expand lh-1"></i> 2358 </span> 2359 </div> 2360 2361 <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2362 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2363 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2364 <i class="bi bi-arrows-angle-expand lh-1"></i> 2365 </span> 2366 </div> 2367 2368 <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2369 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2370 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2371 <i class="bi bi-arrows-angle-expand lh-1"></i> 2372 </span> 2373 </div> 2374 2375 <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2376 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2377 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2378 <i class="bi bi-arrows-angle-expand lh-1"></i> 2379 </span> 2380 </div> --> 2381 2382 </div><!-- #lightgallery --> 2383 </div><!-- /.rz-gallery-wrap --> 2384 </div><!-- /.tab-pane --> 2385 </div><!-- /.tab-content --> 2386 </div><!-- /#business-details --> 2387 </div><!-- /.offcanvas-body --> 2388</div> 2389 2390
2391<script> 2392 2393var catalogueDetailsMap = { modal: null }; 2394var catalogueJSONData = null; 2395 2396if (typeof indexByIdOrRid !== 'function') { 2397 function indexByIdOrRid(data){ 2398 if (!data) return {}; 2399 if (!Array.isArray(data)) return data; 2400 return data.reduce((m, item) => { 2401 if (!item) return m; 2402 const key = item.rid ?? item.id; 2403 if (key != null) m[String(key)] = item; 2404 return m; 2405 }, {}); 2406 } 2407} 2408 2409function openCatalogueDetails(rid) { 2410 if (!catalogueDetailsMap.modal || !catalogueJSONData) return; 2411 2412 rid = String(rid); 2413 var cRecord = catalogueJSONData[rid]; 2414 if (!cRecord) return; 2415 2416 var m = catalogueDetailsMap; 2417 2418 var parsedOptions = cRecord.options; 2419 if (typeof parsedOptions === 'string') { 2420 try { parsedOptions = JSON.parse(parsedOptions); } catch(e){ parsedOptions = {}; } 2421 } 2422 parsedOptions = parsedOptions || {}; 2423 2424 var imgURL = (cRecord.image || '').trim(); 2425 if (imgURL && !imgURL.endsWith('/')) { 2426 m.img && m.img.classList.remove('d-none'); 2427 if (m.img) { 2428 m.img.style.backgroundImage = "url('" + imgURL + "')"; 2429 } 2430 } else { 2431 if (m.img) { 2432 m.img.style.backgroundImage = ''; 2433 m.img.classList.add('d-none'); 2434 } 2435 } 2436 2437 // Title 2438 if (m.title) { 2439 var rawTitle = cRecord.title || cRecord.name || ""; 2440 m.title.textContent = decodeHtmlEntities(rawTitle); 2441 } 2442 2443 if (m.helpful) { 2444 var links = m.helpful.querySelectorAll("a"); 2445 if (links.length) { 2446 var el = links[0]; 2447 var webUrl = (parsedOptions.website_url || "").trim(); 2448 var webText = (parsedOptions.website_text || "Visit Website").trim(); 2449 if (webUrl && webUrl !== "#") { 2450 el.href = webUrl; 2451 el.target = "_blank"; 2452 var span = el.querySelector("span"); 2453 if (span) span.innerText = webText; 2454 el.parentElement && el.parentElement.classList.remove("d-none"); 2455 } else { 2456 el.href = ""; 2457 el.parentElement && el.parentElement.classList.add("d-none"); 2458 } 2459 } 2460 } 2461 2462 if (m.maplink) { 2463 var mapAs = m.maplink.querySelectorAll("a"); 2464 if (mapAs.length) { 2465 var mapEl = mapAs[0]; 2466 var addr = (parsedOptions.val_address || "").trim(); 2467 if (addr) { 2468 var encoded = encodeURIComponent(addr).replace(/%20/g, "+"); 2469 mapEl.href = "https://www.google.com/maps/search/?api=1&query=" + encoded; 2470 mapEl.target = "_blank"; 2471 mapEl.parentElement && mapEl.parentElement.classList.remove('d-none'); 2472 } else { 2473 mapEl.href = ""; 2474 mapEl.parentElement && mapEl.parentElement.classList.add('d-none'); 2475 } 2476 } 2477 } 2478 2479 if (m.contacts) { 2480 m.contacts.innerHTML = ""; 2481 if (Array.isArray(parsedOptions.contacts)) {
2482 parsedOptions.contacts.forEach(function(contact) { 2483 var newAddress = document.createElement("address"); 2484 newAddress.innerHTML = '<strong class="small text-muted">' + (contact.val_header||'') + '</strong><br>'; 2485 2486 var inner = contact.val_text || ''; 2487 if (contact.val_href) { 2488 try { 2489 var href = contact.val_href; 2490 var isSelf = href.startsWith('tel:') || href.startsWith('mailto:') || href.startsWith(location.origin); 2491 inner = '<a href="'+href+'" target="'+(isSelf?'_self':'_blank')+'">'+ inner +'</a>'; 2492 } catch(e) { /* ignore bad href */ } 2493 } 2494 newAddress.innerHTML += inner; 2495 m.contacts.append(newAddress); 2496 }); 2497 } 2498 } 2499 2500 if (m.hours) { 2501 const table = m.hours; 2502 const dayKeys = [ 2503 'val_sunday','val_monday','val_tuesday','val_wednesday', 2504 'val_thursday','val_friday','val_saturday' 2505 ]; 2506 2507 const tds = Array.from(table.querySelectorAll('tbody td')); 2508 let hasAny = false; 2509 2510 tds.forEach((td, i) => { 2511 const val = parsedOptions.hours && parsedOptions.hours[dayKeys[i]]; 2512 const v = (val || '').trim(); 2513 td.textContent = v; 2514 if (v) hasAny = true; 2515 }); 2516 2517 table.classList.toggle('d-none', !hasAny); 2518 } 2519 2520 if (m.detail) { 2521 const pane = m.detail; 2522 const tabPane = pane.closest('.tab-pane'); 2523 const tabLink = tabPane ? document.querySelector(`[data-bs-target="#${tabPane.id}"]`) : null; 2524 2525 pane.innerHTML = "Loading..."; 2526 2527 fetch('catalogue/' + encodeURIComponent(rid) + '.php?display=json') 2528 .then(res => res.json()) 2529 .then(data => { 2530 const html = (data && data.details) ? data.details.trim() : ""; 2531 2532 pane.innerHTML = html || ""; 2533 2534 const isEmpty = !html; 2535 if (tabPane) tabPane.classList.toggle('d-none', isEmpty); 2536 if (tabLink) tabLink.classList.toggle('d-none', isEmpty); 2537 }) 2538 .catch(() => { 2539 pane.innerHTML = ""; 2540 if (tabPane) tabPane.classList.add('d-none'); 2541 if (tabLink) tabLink.classList.add('d-none'); 2542 }); 2543 } 2544 2545 // Gallery #TODO) 2546 if (m.gallery) m.gallery.innerHTML = ""; 2547 2548 try { 2549 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 2550 } catch(e) { 2551 console.error('Offcanvas show failed:', e); 2552 } 2553 2554 if (window.pushOcState) pushOcState('catalogueDetails', rid); 2555} 2556 2557document.addEventListener('DOMContentLoaded', function() { 2558 var modal = document.querySelector("#catalogueDetails"); 2559 if (!modal) return; 2560 2561 catalogueDetailsMap = { 2562 modal: modal, 2563 img: modal.querySelector(".featured-image-wrap"), 2564 title: modal.querySelector(".offcanvas-body .catalogue-title"), 2565 helpful: modal.querySelector(".catalogue-helpful-links"), 2566 maplink: modal.querySelector(".catalogue-map-link"), 2567 contacts: modal.querySelector(".catalogue-contacts"), 2568 hours: modal.querySelector(".catalogue-hours"), 2569 detail: modal.querySelector("#about-tab-pane"), 2570 gallery: modal.querySelector("#businessDetailslightgallery"), 2571 }; 2572 2573 fetch('_includes_/published/catalogue.json') 2574 .then(res => res.json()) 2575 .then(data => { catalogueJSONData = indexByIdOrRid(data); }) 2576 .then(() => { if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('catalogueDetails'); }) 2577 .catch((e) => { console.error('catalogue.json load failed', e); catalogueJSONData = {}; }); 2578}); 2579</script>
2579<div class="offcanvas offcanvas-bottom offcanvas-news-item mx-auto rounded-0 bg-body" tabindex="-1" id="newsDetails" style="--bs-offcanvas-height:95vh;"> 2580<div class="progress rounded-0" role="progressbar" aria-label="Scroll Progress" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100" style="height: 8px"> 2581 <div class="progress-bar bg-secondary"></div></div> 2582 2583 <div class="offcanvas-header border-bottom fw-bold"> 2584 Article Details 2585 <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button> 2586 </div> 2587 <div class="offcanvas-body pt-0"> 2588 <div class="container p-0"> 2589 <div class="col-lg-9 mx-auto"> 2590 2591 <div class="sticky-top"> 2592 <div class="d-flex small bg-body flex-wrap align-items-center py-3"> 2593 <div class="d-flex me-3"> 2594 <div class="d-flex post-info-wrap"> 2595 <p class="post-published m-0"> 2596 <span class="opacity-75">Published:</span> 2597 <time></time> <i class="bi bi-dot d-inline-block"></i> 2598 <span id="eta"></span> 2599 </p><!-- /.post-published --> 2600 </div><!-- /.post-info-wrap --> 2601 </div><!-- /.d-flex --> 2602 2603 <div class="post-btns-wrap ms-auto"> 2604 <button type="button" class="btn px-3 py-1 py-md-2 btn-outline-light d-flex gap-2 align-items-center" data-bs-toggle="modal" data-bs-target="#shareModal" aria-label="Share this post"> 2605 <i class="bi bi-share align-middle" aria-hidden="true"></i> 2606 <span class="visually-hidden">Share</span> 2607 </button> 2608 </div><!-- /.post-btns-wrap --> 2609 2610 </div><!-- /.d-flex --> 2611 </div><!-- /.sticky-top --> 2612 2613 <div class="featured-image-wrapper"></div> 2614 2615 <div class="p-lg-2 px-md-5"> 2616 <h3 class="mb-3 h3">Article Title</h3> 2617 <nav aria-label="breadcrumb" class="breadcrumb mb-3"> 2618 <ul> 2619 <li class="breadcrumb-item"><a href="./news">Articles</a> 2620 <li class="breadcrumb-item active text-truncate" aria-current="page"></li> 2621 </ul> 2622 </nav> 2623 <div id="news-full-details" class="article-full-details"></div><!-- /#post-details --> 2624 </div><!-- /.p-lg-2 --> 2625 </div><!-- /.col-lg-9 --> 2626 </div><!-- /.container --> 2627 </div><!-- /.offcanvas-body --> 2628</div><!-- /.offcanvas --> 2629
2630<script> 2631var newsDetailsMap = { modal: null }; 2632var newsJSONData = null; 2633 2634if (typeof indexByIdOrRid !== 'function') { 2635 function indexByIdOrRid(data){ 2636 if (!data) return {}; 2637 if (!Array.isArray(data)) return data; 2638 return data.reduce((m, item) => { 2639 if (!item) return m; 2640 const key = item.rid ?? item.id; 2641 if (key != null) m[String(key)] = item; 2642 return m; 2643 }, {}); 2644 } 2645} 2646 2647function hasImg(url) { 2648 if (!url) return false; 2649 var s = String(url).trim(); 2650 if (!s) return false; 2651 if (/^(null|undefined|none|n\/a)$/i.test(s)) return false; 2652 return true; 2653} 2654 2655/* global helper: decode ✨ & etc */ 2656window.decodeHtmlEntities = window.decodeHtmlEntities || function (str) { 2657 if (str == null) return ''; 2658 const ta = document.createElement('textarea'); 2659 ta.innerHTML = String(str); 2660 return ta.value; 2661}; 2662 2663function setFeaturedImage(url) { 2664 var m = newsDetailsMap; 2665 var modal = m.modal; 2666 if (!modal) return; 2667 2668 var wrap = modal.querySelector(".featured-image-wrapper"); 2669 if (!wrap) return; 2670 2671 if (hasImg(url)) { 2672 wrap.className = "featured-image-wrapper ratio ratio-16x9 mb-4 featured-image-wrap rounded"; 2673 wrap.style.backgroundImage = "url('" + url + "')"; 2674 m.img = wrap; 2675 } else { 2676 wrap.className = "featured-image-wrapper"; 2677 wrap.style.backgroundImage = ""; 2678 m.img = null; 2679 } 2680} 2681 2682function openNewsDetails(rid) {
2683 if (!newsDetailsMap.modal || !newsJSONData) return; 2684 2685 rid = String(rid); 2686 var cRecord = newsJSONData[rid]; 2687 if (!cRecord) return; 2688 2689 var m = newsDetailsMap; 2690 2691 setFeaturedImage(cRecord.image); 2692 2693 const titleDecoded = decodeHtmlEntities(cRecord.title || ""); 2694 2695 m.title.textContent = titleDecoded; 2696 m.date.textContent = cRecord.date || cRecord.posted || ""; 2697 m.breadcrumb.textContent = titleDecoded; 2698 2699 m.detail.innerHTML = "Loading..."; 2700 fetch('articles/' + encodeURIComponent(rid) + '.php?display=json') 2701 .then(res => res.json()) 2702 .then(newsData => { m.detail.innerHTML = newsData.details || ""; }) 2703 .catch(() => { m.detail.innerHTML = ""; }); 2704 2705 try { 2706 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 2707 } catch(e) { 2708 console.error('Offcanvas show failed:', e); 2709 } 2710 2711 if (window.pushOcState) pushOcState('newsDetails', rid); 2712} 2713 2714document.addEventListener('DOMContentLoaded', function() { 2715 var modal = document.querySelector("#newsDetails"); 2716 if (!modal) return; 2717 2718 newsDetailsMap = { 2719 modal: modal, 2720 img: modal.querySelector(".featured-image-wrapper"), 2721 title: modal.querySelector("h3.h3"), 2722 date: modal.querySelector(".post-published>time"), 2723 breadcrumb: modal.querySelector(".breadcrumb-item.active"), 2724 detail: modal.querySelector("#news-full-details") 2725 }; 2726 2727 // Scroll progress bar 2728 var scrollTarget = modal.querySelector('.offcanvas-body'); 2729 var progressBar = modal.querySelector('.progress-bar'); 2730 var progressOuter = modal.querySelector('.progress[role="progressbar"]'); 2731 2732 function updateScrollProgress() { 2733 if (!scrollTarget || !progressBar) return; 2734 2735 var maxScroll = scrollTarget.scrollHeight - scrollTarget.clientHeight; 2736 var current = scrollTarget.scrollTop || 0; 2737 2738 var pct = 0; 2739 if (maxScroll > 0) { 2740 pct = (current / maxScroll) * 100; 2741 } 2742 pct = Math.min(Math.max(pct, 0), 100); 2743 2744 progressBar.style.width = pct + '%'; 2745 if (progressOuter) { 2746 progressOuter.setAttribute('aria-valuenow', Math.round(pct)); 2747 } 2748 } 2749 2750 if (scrollTarget && progressBar) { 2751 scrollTarget.addEventListener('scroll', updateScrollProgress, { passive: true }); 2752 2753 modal.addEventListener('show.bs.offcanvas', function () { 2754 if (!scrollTarget) return; 2755 scrollTarget.scrollTop = 0; 2756 updateScrollProgress(); 2757 }); 2758 2759 updateScrollProgress(); 2760 } 2761 2762 fetch('_includes_/published/news_list.json') 2763 .then(res => res.json()) 2764 .then(data => { newsJSONData = indexByIdOrRid(data); }) 2765 .then(() => { if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('newsDetails'); }) 2766 .catch((e) => { console.error('news_list.json load failed', e); newsJSONData = {}; }); 2767}); 2768</script>
2768<div class="offcanvas offcanvas-end offcanvas-job-item" 2769 tabindex="-1" 2770 id="jobDetails"> 2771 <div class="offcanvas-header bg-light p-4 px-lg-5"> 2772 <h3 class="offcanvas-title fs-4">Job post</h3> 2773 <button type="button" 2774 class="btn-close" 2775 data-bs-dismiss="offcanvas" 2776 aria-label="Close"></button> 2777 </div> 2778 <div class="offcanvas-body p-0"> 2779 2780 <div class="p-4 p-lg-5"> 2781 <div class="d-flex align-items-center justify-content-between"> 2782 <div> 2783 <p class="h3 m-0 fs-3 d-flex flex-column"> 2784 <small class="fs-6 text-muted fw-bold">Position</small> 2785 </p> 2786 <h4 class="job-position">Job Position</h4> 2787 </div> 2788 <span class="btn btn-link btn-lg ms-auto d-none" 2789 id="saveItemBtn" 2790 tabindex="0"> 2791 <i class="bi bi-heart text-danger ms-auto cursor-pointer"></i> 2792 </span> 2793 <span class="btn btn-link btn-lg p-0" 2794 data-bs-toggle="modal" 2795 data-bs-target="#shareModal" 2796 tabindex="0"> 2797 <i class="bi bi-share text-body"></i> 2798 </span> 2799 </div> 2800 </div><!-- /.p-4 --> 2801 2802 <div class="job-details"> 2803 <div class="bg-light p-4 p-lg-5"> 2804 <div class="row row-cols-1 row-cols-sm-2 g-2 attribute-callouts"></div> 2805 2806 <a href="#" 2807 class="btn btn-primary mt-lg-4 apply-link"> 2808 Apply Now<i class="bi bi-box-arrow-up-right ms-2"></i> 2809 </a> 2810 </div><!-- /.bg-light --> 2811 2812 <div class="bg-white p-4 p-lg-5"> 2813 <!-- <p class="small bg-success-subtle text-success-emphasis p-1 px-2 mb-2 rounded-pill d-inline-flex"> 2814 <small><i class="bi bi-exclamation-circle"></i> Urgent Hire</small> 2815 </p> --> 2816 <p class="fs-4"></p> 2817 <div class="job-full-details"></div> 2818 </div><!-- /.bg-white --> 2819 </div><!-- /#job-details --> 2820 </div><!-- /.offcanvas-body --> 2821</div><!-- /.offcanvas --> 2822 2823<div class="toast align-items-center text-bg-success border-0 position-fixed bottom-0 end-0 m-4" 2824 id="savedItem" 2825 role="alert" 2826 aria-live="assertive" 2827 aria-atomic="true"> 2828 <div class="d-flex"> 2829 <div class="toast-body"> 2830 Added to your favorites! 2831 <a href="" class="text-light">See all here</a> 2832 </div> 2833 <button type="button" 2834 class="btn-close btn-close-white me-2 m-auto" 2835 data-bs-dismiss="toast" 2836 aria-label="Close"></button> 2837 </div> 2838</div><!-- /.toast --> 2839
2840<script> 2841var jobDetailsMap = { modal: null }; 2842var jobJSONData = null; 2843 2844if (typeof indexByIdOrRid !== 'function') { 2845 function indexByIdOrRid(data){ 2846 if (!data) return {}; 2847 if (!Array.isArray(data)) return data; 2848 return data.reduce((m, item) => { 2849 if (!item) return m; 2850 const key = item.rid ?? item.id; 2851 if (key != null) m[String(key)] = item; 2852 return m; 2853 }, {}); 2854 } 2855} 2856 2857function openJobDetails(rid) { 2858 if (!jobDetailsMap.modal || !jobJSONData) return; 2859 2860 rid = String(rid); 2861 var cRecord = jobJSONData[rid]; 2862 if (!cRecord) return; 2863 2864 var m = jobDetailsMap; 2865 var parsedOptions = cRecord.options || {}; 2866 2867 if (m.titleB) m.titleB.textContent = decodeHtmlEntities(cRecord.title || ""); 2868 2869 if (m.callouts) { 2870 m.callouts.innerHTML = ""; 2871 if (Array.isArray(parsedOptions.attributes)) { 2872 parsedOptions.attributes.forEach(function(attr) { 2873 var header = attr.val_header || ""; 2874 var text = attr.val_text || ""; 2875 var icon = parseIconClass(attr.val_icon) || { class: "bi bi-info-circle", ligature: "" }; 2876 var wrap = document.createElement("div"); 2877 wrap.innerHTML = ` 2878 <p class="d-flex gap-3 align-items-center my-2 my-lg-3"> 2879 <i class="${icon.class} flex-shrink-0 d-flex align-items-center justify-content-center text-primary bg-white rounded-circle w-h-48 fs-5">${icon.ligature}</i> 2880 <span><strong class="small text-muted lh-1">${header}</strong><br>${text}</span> 2881 </p>`; 2882 m.callouts.append(wrap.firstElementChild); 2883 }); 2884 } 2885 2886 var posted = cRecord.posted || ""; 2887 if (posted) { 2888 var pWrap = document.createElement('div'); 2889 pWrap.innerHTML = ` 2890 <p class="d-flex gap-3 align-items-center"> 2891 <i class="bi bi-clock flex-shrink-0 d-flex align-items-center justify-content-center text-primary bg-white rounded-circle w-h-48 fs-5"></i> 2892 <span><strong class="small text-muted lh-1">Posted</strong><br>${posted}</span> 2893 </p>`; 2894 m.callouts.append(pWrap.firstElementChild); 2895 } 2896 } 2897 2898 if (m.apply) { 2899 var btnURL = (parsedOptions.website_url || "").trim(); 2900 var btnText = (parsedOptions.website_text || "Learn More").trim(); 2901 2902 if (btnURL && btnURL !== "#") { 2903 m.apply.classList.remove("d-none"); 2904 m.apply.setAttribute("href", btnURL); 2905 m.apply.setAttribute("target", "_blank"); 2906 m.apply.innerHTML = btnText + '<i class="bi bi-box-arrow-up-right ms-2"></i>'; 2907 } else { 2908 m.apply.classList.add("d-none"); 2909 m.apply.setAttribute("href", "#"); 2910 } 2911 } 2912 2913 if (m.detail) { 2914 const pane = m.detail; 2915 const tabPane = pane.closest('.tab-pane'); 2916 const tabLink = tabPane ? document.querySelector(`[data-bs-target="#${tabPane.id}"]`) : null; 2917 2918 pane.innerHTML = "Loading..."; 2919 2920 fetch('jobs/' + encodeURIComponent(rid) + '.php?display=json') 2921 .then(res => res.json()) 2922 .then(data => { 2923 const html = (data && data.details) ? data.details.trim() : ""; 2924 2925 pane.innerHTML = html || ""; 2926 2927 const isEmpty = !html; 2928 if (tabPane) tabPane.classList.toggle('d-none', isEmpty); 2929 if (tabLink) tabLink.classList.toggle('d-none', isEmpty); 2930 }) 2931 .catch(() => { 2932 pane.innerHTML = ""; 2933 if (tabPane) tabPane.classList.add('d-none'); 2934 if (tabLink) tabLink.classList.add('d-none'); 2935 }); 2936 } 2937 2938 try { 2939 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 2940 } catch(e) { 2941 console.error('Offcanvas show failed:', e); 2942 } 2943 2944 if (window.pushOcState) pushOcState('jobDetails', rid); 2945} 2946 2947document.addEventListener('DOMContentLoaded', function() { 2948 var modal = document.querySelector("#jobDetails"); 2949 if (!modal) return; 2950 2951 jobDetailsMap = { 2952 modal: modal, 2953 titleB: modal.querySelector(".job-position"), 2954 callouts: modal.querySelector(".attribute-callouts"), 2955 detail: modal.querySelector(".job-full-details"), 2956 apply: modal.querySelector(".apply-link") 2957 }; 2958 2959 fetch('_includes_/published/job_list.json') 2960 .then(res => res.json()) 2961 .then(data => { jobJSONData = indexByIdOrRid(data); }) 2962 .then(() => { if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('jobDetails'); }) 2963 .catch((e) => { console.error('job_list.json load failed', e); jobJSONData = {}; }); 2964}); 2965 2966</script>
2966 2967<div class="offcanvas offcanvas-end offcanvas-bid-item" 2968 tabindex="-1" 2969 id="bidDetails"> 2970 <div class="offcanvas-header bg-light p-4 px-lg-5"> 2971 <h3 class="offcanvas-title fs-4">Bid details</h3> 2972 <button type="button" 2973 class="btn-close" 2974 data-bs-dismiss="offcanvas" 2975 aria-label="Close"></button> 2976 </div> 2977 <div class="offcanvas-body p-0"> 2978 2979 <div class="p-4 p-lg-5"> 2980 <div class="d-flex align-items-center justify-content-between"> 2981 <div> 2982 <p class="mb-2"> 2983 <span class="small">Status:</span> <span class="badge bid-status d-none d-inline-flex"></span> 2984 </p> 2985 <h4 class="bid-title">Bid Title</h4> 2986 </div> 2987 <span class="btn btn-link btn-lg p-0" 2988 data-bs-toggle="modal" 2989 data-bs-target="#shareModal" 2990 tabindex="0"> 2991 <i class="bi bi-share text-body"></i> 2992 </span> 2993 </div> 2994 </div> 2995 2996 <div class="bid-details"> 2997 <div class="bg-light p-4 p-lg-5"> 2998 <div class="row row-cols-1 row-cols-sm-2 g-2 start-end-dates"> 2999 <p class="d-flex gap-3 align-items-center my-2 my-lg-3 bid-start-wrap"> 3000 <i class="bi bi-check2 flex-shrink-0 d-flex align-items-center justify-content-center text-success bg-white rounded-circle w-h-48 fs-4"></i> 3001 <span> 3002 <strong class="small text-muted lh-1">Start date</strong><br> 3003 Start: <span class="bid-start-date"></span> 3004 </span> 3005 </p> 3006 3007 <p class="d-flex gap-3 align-items-center my-2 my-lg-3 bid-end-wrap"> 3008 <i class="bi bi-x-lg flex-shrink-0 d-flex align-items-center justify-content-center text-danger bg-white rounded-circle w-h-48 fs-5"></i> 3009 <span> 3010 <strong class="small text-muted lh-1">End date</strong><br> 3011 End: <span class="bid-end-date"></span> 3012 </span> 3013 </p> 3014 </div> 3015 <a href="#" 3016 class="btn btn-primary mt-3 mt-lg-4 apply-link"> 3017 Apply Now<i class="bi bi-box-arrow-up-right ms-2"></i> 3018 </a> 3019 </div> 3020 3021 <div class="bg-white p-4 p-lg-5"> 3022 <p class="fs-4"></p> 3023 <div class="bid-full-details"></div> 3024 </div> 3025 </div> 3026 </div> 3027</div> 3028
3029<script> 3030var bidDetailsMap = { modal: null }; 3031var bidJSONData = null; 3032 3033if (typeof indexByIdOrRid !== 'function') { 3034 function indexByIdOrRid(data){ 3035 if (!data) return {}; 3036 if (!Array.isArray(data)) return data; 3037 return data.reduce((m, item) => { 3038 if (!item) return m; 3039 const key = item.rid ?? item.id; 3040 if (key != null) m[String(key)] = item; 3041 return m; 3042 }, {}); 3043 } 3044} 3045 3046function fmtDate(iso) { 3047 if (!iso) return ""; 3048 var s = String(iso).trim(); 3049 if (!s) return ""; 3050 var d = new Date(s.slice(0, 10) + "T00:00:00"); 3051 if (Number.isNaN(d.getTime())) return s; 3052 return d.toLocaleDateString(undefined, { year: "numeric", month: "short", day: "numeric" }); 3053} 3054 3055function statusClass(status) { 3056 var s = String(status || "").trim().toLowerCase(); 3057 if (s === "open") return "text-bg-success"; 3058 if (s === "closed") return "text-bg-danger"; 3059 if (s === "awarded") return "text-bg-primary"; 3060 if (s === "canceled" || s === "cancelled") return "text-bg-dark"; 3061 if (s === "pending") return "text-bg-secondary"; 3062 return "text-bg-secondary"; 3063} 3064 3065function openBidDetails(rid) { 3066 if (!bidDetailsMap.modal || !bidJSONData) return false; 3067 3068 rid = String(rid); 3069 var cRecord = bidJSONData[rid]; 3070 if (!cRecord) return false; 3071 3072 var m = bidDetailsMap; 3073 var parsedOptions = cRecord.options || {}; 3074 3075 if (m.titleB) m.titleB.textContent = cRecord.title || ""; 3076 3077 // STATUS 3078 if (m.statusEl) { 3079 var status = (parsedOptions.val_status || "").trim(); 3080 if (status) { 3081 m.statusEl.className = "small px-2 py-1 rounded-1 bid-status " + statusClass(status); 3082 m.statusEl.textContent = status; 3083 m.statusEl.classList.remove("d-none"); 3084 } else { 3085 m.statusEl.classList.add("d-none"); 3086 m.statusEl.textContent = ""; 3087 } 3088 } 3089 3090 // DATES (Start/End) 3091 var sd = fmtDate(parsedOptions.start_date || parsedOptions.startDate); 3092 var ed = fmtDate(parsedOptions.end_date || parsedOptions.endDate); 3093 3094 if (m.startWrap && m.startEl) { 3095 if (sd) { 3096 m.startEl.textContent = sd; 3097 m.startWrap.classList.remove("d-none"); 3098 } else { 3099 m.startEl.textContent = ""; 3100 m.startWrap.classList.add("d-none"); 3101 } 3102 } 3103 3104 if (m.endWrap && m.endEl) { 3105 if (ed) { 3106 m.endEl.textContent = ed; 3107 m.endWrap.classList.remove("d-none"); 3108 } else { 3109 m.endEl.textContent = ""; 3110 m.endWrap.classList.add("d-none"); 3111 } 3112 } 3113 3114 if (m.apply) { 3115 var btnURL = (parsedOptions.website_url || "").trim(); 3116 var btnText = (parsedOptions.website_text || "Learn More").trim(); 3117 3118 if (btnURL && btnURL !== "#") { 3119 m.apply.classList.remove("d-none"); 3120 m.apply.setAttribute("href", btnURL); 3121 m.apply.setAttribute("target", "_blank"); 3122 m.apply.innerHTML = btnText + '<i class="bi bi-box-arrow-up-right ms-2"></i>'; 3123 } else { 3124 m.apply.classList.add("d-none"); 3125 m.apply.setAttribute("href", "#"); 3126 } 3127 } 3128 3129 if (m.detail) { 3130 var pane = m.detail; 3131 pane.innerHTML = "Loading..."; 3132 3133 fetch('bids/' + encodeURIComponent(rid) + '.php?display=json') 3134 .then(function(res){ return res.json(); }) 3135 .then(function(data){ 3136 var html = (data && data.details) ? String(data.details).trim() : ""; 3137 pane.innerHTML = html || ""; 3138 }) 3139 .catch(function(){ 3140 pane.innerHTML = ""; 3141 }); 3142 } 3143 3144 try { 3145 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 3146 } catch(e) { 3147 console.error('Offcanvas show failed:', e); 3148 } 3149 3150 if (window.pushOcState) pushOcState('bidDetails', rid); 3151 3152 return false; 3153} 3154 3155document.addEventListener('DOMContentLoaded', function() { 3156 var modal = document.querySelector("#bidDetails"); 3157 if (!modal) return; 3158 3159 bidDetailsMap = { 3160 modal: modal, 3161 titleB: modal.querySelector(".bid-title"), 3162 statusEl: modal.querySelector(".bid-status"), 3163 startWrap: modal.querySelector(".bid-start-wrap"), 3164 endWrap: modal.querySelector(".bid-end-wrap"), 3165 startEl: modal.querySelector(".bid-start-date"), 3166 endEl: modal.querySelector(".bid-end-date"), 3167 detail: modal.querySelector(".bid-full-details"), 3168 apply: modal.querySelector(".apply-link") 3169 }; 3170 3171 fetch('_includes_/published/bids_list.json') 3172 .then(function(res){ return res.json(); }) 3173 .then(function(data){ bidJSONData = indexByIdOrRid(data); }) 3174 .then(function(){ if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('bidDetails'); }) 3175 .catch(function(e){
3176 console.error('bids_list.json load failed', e); 3177 bidJSONData = {}; 3178 }); 3179}); 3180</script>
3180 3181 <div class="rz-brand-footer bg-black small text-white py-3 py-lg-2"> 3182 <div class="container-fluid small"> 3183 <div class="d-lg-flex align-items-center"> 3184 <div class="col w-100 d-flex flex-lg-row flex-column gap-2 mb-lg-0 mb-3 p-0"> 3185 <span class="footer-copyright">© 2026 Addison, IL Events</span> 3186 <a class="text-white f-accessibility_statement" href="accessibility_statement/index.php">Accessibility Statement</a> 3187 <a class="text-white f-privacy_policy" href="privacy_policy/index.php">Privacy Policy</a> 3188 <a class="text-white f-terms_and_conditions" href="terms_and_conditions/index.php">Terms and Conditions</a> 3189 <a class="text-white f-cookie_policy" href="cookie_policy/index.php">Cookie Policy</a> 3190 </div><!-- /.col --> 3191 <div class="text-lg-end align-items-center d-xl-flex gap-1 justify-content-start justify-content-lg-end f-powered-by"> 3192 Designed & Powered by <a href="https://www.revize.com/" target="_blank" class="text-white">revize.</a>,<br class="d-xl-none"> the Government Website Experts <i class="bi bi-dot"></i> <a href="https://builder1.revize.com/revize/security/index.jsp?webspace=addisonilevents&filename=/faq/contact.php" class="btn btn-primary btn-primary-rz btn-sm rounded-1">Staff Login</a> 3193 </div> 3194 </div><!-- /.d-lg-flex --> 3195 </div><!-- /.container-fluid --> 3196 </div> 3197
3197<script src="/revize/plugins/revize_calendar/index.v2.js"></script>
3197 3198
3198<script src="/revize/plugins/zbuilder/v1/website/_assets_/js/scripts.js"></script>
vendor: 81 bytes, lines 3198-3200
3198 3199 <script src="https://www.google.com/recaptcha/api.js" async defer></script> 3200
3200<script src="/revize/plugins/page_builder/formwizard.form_validation_include.js"></script>
3200 3201
3201<script> 3202$('.staffmember-bio').appendTo('.staffmember-contact'); 3203$('.breadcrumb').prependTo('#freeform-content-wrapper'); 3204$('body').append($('.home-bg-img')); 3205 3206$(document).ready(function () { 3207 $('.dropdown-toggle, .dropdown-menu').hover( 3208 function () { 3209 $('.bottom-header').addClass('bottom-header-active'); 3210 $('.top-header').addClass('top-header-active'); 3211 }, 3212 function () { 3213 $('.bottom-header').removeClass('bottom-header-active'); 3214 $('.top-header').removeClass('top-header-active'); 3215 } 3216 ); 3217}); 3218 3219 3220function RZRenderMini(elementList) { 3221 $('.cal-event-wrap').each(function () { 3222 const title = $(this).find('.cal-event-title'); 3223 const desc = $(this).find('.cal-event-desc'); 3224 const location = $(this).find('.cal-event-location'); 3225 const time = $(this).find('.cal-event-time'); 3226 3227 time.find('time').each(function () { 3228 const dt = $(this).attr('datetime'); 3229 if (dt) { 3230 const date = new Date(dt); 3231 3232 let hours = date.getHours(); 3233 let minutes = date.getMinutes(); 3234 3235 const ampm = hours >= 12 ? 'pm' : 'am'; 3236 hours = hours % 12; 3237 hours = hours ? hours : 12; 3238 3239 minutes = minutes.toString().padStart(2, '0'); 3240 3241 const formattedTime = minutes === '00' 3242 ? `${hours} ${ampm}` 3243 : `${hours}:${minutes} ${ampm}`; 3244 3245 $(this).text(formattedTime); 3246 } 3247 }); 3248 3249 const dataWrap = $('<div class="cal-data"></div>'); 3250 dataWrap.append(title, desc, location, time); 3251 3252 $(this).prepend(dataWrap); 3253 3254 time.append('<div class="cal-event-view">View details</div>'); 3255 }); 3256} 3257</script>
3257 3258
3259<script type="application/javascript">(function(w,d,t,r,u){w[u]=w[u]||[];w[u].push({'projectId':'10000','properties':{'pixelId':'10219081','he': '<email_address>','hph': '<phone_number>'}});var s=d.createElement(t);s.src=r;s.async=true;s.onload=s.onreadystatechange=function(){var y,rs=this.readyState,c=w[u];if(rs&&rs!="complete"&&rs!="loaded"){return}try{y=YAHOO.ywa.I13N.fireBeacon;w[u]=[];w[u].push=function(p){y([p])};y(c)}catch(e){}};var scr=d.getElementsByTagName(t)[0],par=scr.parentNode;par.insertBefore(s,scr)})(window,document,"script","https://s.yimg.com/wi/ytc.js","dotq");</script>
3259 3260</div><!-- /.rz-site-wrap --> 3261</body> 3262</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.