1 2 3 4<!DOCTYPE html> 5<html lang="en"> 6<head> 7 <base href="https://www.raymore.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>Raymore, MO</title> 17 <meta property="og:title" content="Raymore, MO" /> 18 <meta property="og:image" content="https://www.raymore.com///raymoremo/_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=1788536727000" rel="stylesheet"> 94 95<!-- #favicons --> 96 <link rel="shortcut icon" href="website_assets/favicon.ico?t=202605220549340"> 97 <link rel="apple-touch-icon" href=""> 98 <meta name="theme-color" content="#1a3668" /> 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 = ["10","11","12","13","14","15",]; 125 var calendarProps = {'1' : { 'color' : '#193668' , 'name' : 'Master' }, 126'8' : { 'color' : '#b0afa9' , 'name' : 'Meetings' }, 127'9' : { 'color' : '#f89c24' , 'name' : 'Events' }, 128'10' : { 'color' : '#a679ba' , 'name' : 'Arts Commission' }, 129'11' : { 'color' : '#88b594' , 'name' : 'Planning & Zoning' }, 130'12' : { 'color' : '#5c7e95' , 'name' : 'Municipal Court' }, 131'13' : { 'color' : '#00783d' , 'name' : 'Parks & Recreation' }, 132'14' : { 'color' : '#193668' , 'name' : 'City Council' }, 133'15' : { 'color' : '#646262' , 'name' : 'Emergency Management' }, 134'16' : { 'color' : '#008fb9' , 'name' : 'Police' }, 135'17' : { 'color' : '' , 'name' : 'calendar-list-options' }, 136}; 137 var RZCalendarTimezone = "US/Central"; 138</script>
138 139 140</head> 141<body id="freeform" class="freeform-fullwidth rz-page-links-51" data-zipcode="64083" data-header-left="false"> 142 143 144 145
146<script type="text/javascript"> 147if (typeof(RZ) == 'undefined') RZ = {}; 148if (!RZ.link) RZ.link = new Object(); 149RZ.pagetype = 'template' 150RZ.baseurlprefix = '../' 151RZ.baseurlpath = 'news/' 152RZ.protocolRelativeRevizeBaseUrl='//builder1.revize.com' 153 154RZ.pagetemplatename = 'freeform' 155RZ.pagetemplateid = '1' 156RZ.pagemodule = 'links' 157RZ.pagemoduleid = '1' 158RZ.pagerecordid = '51'; 159 160RZ.pageid = 'links-51'; 161RZ.pageparentid = '0'; 162RZ.pagesectionid = '51'; 163RZ.pagesectionname = 'news'; 164RZ.pagesectionlevel = '1'; 165RZ.pagesectionfolder = 'news/'; 166RZ.pagesectionfilter = 'sectionid=51'; 167RZ.pagelinkfilter = 'linklevel=1 and linksectionid=51'; 168RZ.pagelinklevel = '1'; 169RZ.pagelinkid = '51'; 170RZ.pageidfield = ''; 171 172RZ.isnewrecord = false; 173RZ.editmodule = ''; 174RZ.editrecordid = '51'; 175RZ.editrecordversion = ''; 176RZ.editversion = ''; 177RZ.editaction = ''; 178 179RZ.page_roles = '' 180RZ.page_users = 'e33ae14b46ea0307ff5febc5b397672a6ea9c8a2efa2513ff5fe11d469a6b3ae|ef83fb0457bb4827d83226bcaa9339ee022076ce21fb6c5efa766462537e6fd1|c3dd13ecc3f1ac6aee97af4a2c52c7d93caf84a01b7f7bbeee5b91f27528b951|d769f017d7ad31fe8dcf4b3d82ea5497da263555d600912cdaa4654c92d9ddb3|ce93f2a3e04d387a6fc1c5c6723f9ace10888467acd4023787b865d3100670bf|238493d2cba6fcf8fe37ad56cf31114411728679bd3814067c574840bf672443|6586279727553a1e68df32f1d4d97f4be3307b0a5e1fa6b88fda2cc8af8bed01|69292bb24d09338a9ef1db21f83a37602ca0f4168b7bf49a7060022e9729d70d|4568138645ff4696bfe44e26b374e5e825a08f5ee0a8e8707043e8228b73b60e|5845d13599fa9647ba9532bcf9b960377756eda3ac2e5fe20b513739dfe2ffa8|1e16054623c7324f420629dfe956cf52b9be8ae0ef9b7dff3c1d5772b6929498|3996e9953ef38763521b1e91c97cbaa262a7f95a957243fb36086c3fd40441d9|a0f5a450fa61b23615f7ef9e285a8f08949631fe1e687ccc16dff3e84f1bce44|3204515caef1295ba1301f203b9c73ee6fb809194b623d45423b89f92b72db0e|b055d7b1609043fecc7c1586050164aeb0a6e28d2aa018e78aafba2d80c3fafd|72fff3dd3738a9f6e96cf394635a4e90851968c0e6726b72e8e6c05987f15cd9|3095debe8d9bfb77dc6de66f81e3ffc0223c1e0893353a5abdfda0add9dc43d2' 181RZ.page_key = 'freeform[51]' 182RZ.parent_key = 'index[]' 183RZ.inherit_key = 'index[]' 184RZ.workflowname = '' 185RZ.permissions_options = 'warningsOFF' 186RZ.permissions_module = 'webspace_page_permissions' 187RZ.webspace = 'raymoremo' 188RZ.webspacedesc = ""; 189 190RZ.featurespattern = '(EZ)'; 191null 192 193RZ.webspacelinksurl = '' 194RZ.webspacelinksurl = './webspace/links.html' 195RZ.workflowlist = '' 196RZ.revizeserverurl = 'https://builder1.revize.com/revize/raymoremo'; 197 198if (!RZ.nextseq) RZ.nextseq = {linknames:{},modules:{}}; 199 200RZ.webspace_config = new Object(); 201RZ.webspace_config.admin_email = "[email protected]"; 202RZ.webspace_config.calendar_options = "max_events=6"; 203RZ.webspace_config.form_captcha = "yes"; 204RZ.webspace_config.form_server = "revizeserver"; 205RZ.webspace_config.form_technology = "jsp"; 206RZ.webspace_config.formwizard_ftp_password = ""; 207RZ.webspace_config.formwizard_ftp_port = ""; 208RZ.webspace_config.formwizard_ftp_server = ""; 209RZ.webspace_config.formwizard_ftp_user = ""; 210RZ.webspace_config.formwizard_setup = "yes"; 211RZ.webspace_config.formwizard_smtp_password = "xxx"; 212RZ.webspace_config.formwizard_smtp_server = "xxx"; 213RZ.webspace_config.formwizard_smtp_user = "xxx"; 214RZ.webspace_config.google_analytics = ""; 215RZ.webspace_config.home_pageid = "0"; 216RZ.webspace_config.home_sectionid = "0"; 217RZ.webspace_config.home_template = "home,index,sitemap"; 218RZ.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=\"\" />"; 219RZ.webspace_config.image_maxheight = "3000"; 220RZ.webspace_config.image_maxwidth = "3000"; 221RZ.webspace_config.image_setup = "yes"; 222RZ.webspace_config.livesite_url = ""; 223RZ.webspace_config.menu_links_module = "links"; 224RZ.webspace_config.menu_newsection = ""; 225RZ.webspace_config.menu_nexturl = "webspace_menu-editform.jsp"; 226RZ.webspace_config.menu_sections_module = "sections"; 227RZ.webspace_config.menu_system = "custom"; 228RZ.webspace_config.menu_version = "1.00"; 229RZ.webspace_config.new_menu_manager_enabled = "yes"; 230RZ.webspace_config.notify_options = "hide_text=yes"; 231RZ.webspace_config.notify_return_url = "enotify/index.php"; 232RZ.webspace_config.rte_setup = "yes"; 233RZ.webspace_config.to_email = "[email protected]"; 234RZ.webspace_config.use_folders = "1"; 235 236RZ.isauthenticationactive = true 237RZ.warning = "" 238RZ.adminwinmsg = null 239 240RZ.channels = 'revize'; 241RZ.jsversion = 1.2</script>
vendor: 2 bytes, line 241
241
242<script type="text/javascript" src="/revize/util/snippet_helper.js"></script>
242 243 244
245<script> 246document.addEventListener('DOMContentLoaded', function() { 247 RZ.module = 'emailnotify_messages'; 248 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/emailnotify.jsp"; 249 RZ.img = '<i class="bi bi-bell fs-4"></i>'; 250 RZ.caption = ''; 251 RZ.set = 'pageid=links-51'; 252 RZ.active = 'html'; 253 if (typeof RZaction != 'undefined') { 254 var tag = RZaction('editform'); 255 RZBarAddButton(null, {content: tag, tooltip: "Send ENotify", class: "rz-bar-btn-alert"}); 256 } 257}); 258 </script>
258 259<div class="skippy visually-hidden-focusable left-top mt-3 position-fixed align-items-center" style="z-index:1026"> 260 <div class="container-xl"> 261 <a class="d-inline-flex btn btn-light bg-white px-4 p-3 gap-4 align-items-center" 262 href="news/index.php#rz-content-wrap"> 263 <span class="d-inline-flex align-items-center gap-2"> 264 <i class="bi bi-window-sidebar fs-4" aria-hidden="true"></i> 265 <span>Skip to main content</span> 266 <span class="ms-5" aria-hidden="true"> 267 <svg width="26" height="27" viewBox="0 0 26 27" xmlns="http://www.w3.org/2000/svg" role="presentation" aria-hidden="true"> 268 <g fill="none" fill-rule="evenodd"> 269 <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" 270 fill="currentColor" fill-rule="nonzero" /> 271 <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" /> 272 <path d="M8.1 12.7L5.4 10l2.7-2.7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" /> 273 </g> 274 </svg> 275 </span> 276 </span> 277 </a> 278 </div> 279</div>
280<script>function RZBarAddButton() { return false; }</script>
280 281 282 283 284<header 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"> 285 <div class="site-header"> 286 287 288 289 290<div class="rz-section-block-wrap position-relative header-top py-lg-0" style="background-color:rgba(26, 54, 104, 0.91);"> 291 292 293 294 <div class="rz-section-block container" style="max-width:1320px;"> 295 296 297 298 299 300<div class="rz-row-block d-grid header-top-in"> 301<div class="rz-column-block gap-2 d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-end align-items-lg-center"> 302 303 304 305 306<div class="rz-element-wrapper rz-button-wrapper has-edit-buttons move-to-offcanvas" 307 308 > 309 310 <div class="center-top"> 311 <div class="rz-btns-container"> 312
312<script> 313 RZ.module = 'generic'; 314 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/buttons-editform.jsp"; 315 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Buttons</span>'; 316 RZ.caption = ''; 317 RZ.set = 'pageid=dd3fa46a-fb84-4680-a225-d4107ca47ba9'; 318 RZ.options = ''; 319 if (typeof RZaction != 'undefined') RZaction('editform'); 320 </script>
320 321 </div> 322 </div> 323 <div class="rz-element rz-button-wrap d-flex flex-wrap" 324 style="gap:0px;"> 325 326<div class="d-flex align-items-stretch" data-aos-duration="600"> 327 <a href="https://maps.app.goo.gl/at7UYqfCWSRdZqe49" target="_blank" 328 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 329 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-font-size:min(14px, 7vw);--bs-btn-border-width:-2px;gap:8px;"> 330 331 332 333 334 <i class="bi bi-geo-alt-fill rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 335 336 337 338 339 340 <span class="overflow-hidden d-inline-block" 341 > 342 <span data-text="100 Municipal Circle, Raymore, MO 64083" class="rz-btn-text" 343 > 344 100 Municipal Circle, Raymore, MO 64083 345 </span> 346 </span> 347 348 349 350 351 352 </a> 353</div> 354 355<div class="d-flex align-items-stretch" data-aos-duration="600"> 356 <a href="tel:816.331-0488" target="_blank" 357 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 358 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-font-size:min(14px, 7vw);--bs-btn-border-width:-2px;gap:8px;"> 359 360 361 362 363 <i class="bi bi-telephone-fill rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 364 365 366 367 368 369 <span class="overflow-hidden d-inline-block" 370 > 371 <span data-text="816.331.0488" class="rz-btn-text" 372 > 373 816.331.0488 374 </span> 375 </span> 376 377 378 379 380 381 </a> 382</div> 383 384 </div> 385</div> 386 387 388 389 390 391 392 393 394<div class="rz-element-wrapper rz-button-wrapper has-edit-buttons move-to-offcanvas" 395 396 > 397 398 <div class="center-top"> 399 <div class="rz-btns-container"> 400
400<script> 401 RZ.module = 'generic'; 402 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/buttons-editform.jsp"; 403 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Buttons</span>'; 404 RZ.caption = ''; 405 RZ.set = 'pageid=76591dd1-d22f-4969-b137-47bc2c60eed6'; 406 RZ.options = ''; 407 if (typeof RZaction != 'undefined') RZaction('editform'); 408 </script>
408 409 </div> 410 </div> 411 <div class="rz-element rz-button-wrap d-flex flex-wrap" 412 style="gap:0px;"> 413 414<div class="d-flex align-items-stretch" data-aos-duration="600"> 415 <a href="http://www.facebook.com/cityofraymoremo" target="_blank" 416 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 417 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-border-width:0px;padding:6px 6px 6px 6px;"> 418 419 420 421 422 <i class="bi bi-facebook rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 423 424 425 426 427 428 429 430 431 432 </a> 433</div> 434 435<div class="d-flex align-items-stretch" data-aos-duration="600"> 436 <a href="http://www.instagram.com/cityofraymoremo" target="_blank" 437 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 438 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-border-width:0px;padding:6px 6px 6px 6px;"> 439 440 441 442 443 <i class="bi bi-instagram rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 444 445 446 447 448 449 450 451 452 453 </a> 454</div> 455 456<div class="d-flex align-items-stretch" data-aos-duration="600"> 457 <a href="https://saymoreinraymore.buzzsprout.com" target="_blank" 458 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 459 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-border-width:0px;padding:6px 6px 6px 6px;"> 460 461 462 463 464 <i class="material-icons|podcasts rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 465 466 467 468 469 470 471 472 473 474 </a> 475</div> 476 477<div class="d-flex align-items-stretch" data-aos-duration="600"> 478 <a href="https://linkedin.com/company/city-of-raymore-missouri/" target="_blank" 479 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 480 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-border-width:0px;padding:6px 6px 6px 6px;"> 481 482 483 484 485 <i class="bi bi-linkedin rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 486 487 488 489 490 491 492 493 494 495 </a> 496</div> 497 498<div class="d-flex align-items-stretch" data-aos-duration="600"> 499 <a href="https://www.youtube.com/cityofraymore" target="_blank" 500 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-primary no-rz-text-reveal-btn " 501 style="background:linear-gradient(90deg, #00000000 0%, #00000000 100%);--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-border-width:0px;padding:6px 6px 6px 6px;"> 502 503 504 505 506 <i class="bi bi-youtube rz-btn-icon flex-shrink-0" style="font-size:18px;" aria-hidden="true"></i> 507 508 509 510 511 512 513 514 515 516 </a> 517</div> 518 519 </div> 520</div> 521 522 523 524 525 <div class="rz-element-wrapper header-translate-wrap relative d-none d-lg-flex align-items-stretch gap-0"> 526 <div class="vr vr-s"></div> 527 <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"> 528 <div class="fi fi-us selected-flag"></div> 529 <i class="bi bi-translate me-2"></i> 530 <span class="visually-hidden">Translate</span> 531 <span class="translate-text">Translate</span> 532 </button> 533 <button class="btn text-start translate-reset px-2" translate="no"> 534 <i class="fa-solid fa-power-off" aria-hidden="true"></i> 535 <span class="visually-hidden">Reset Translation</span> 536 </button> 537 <div class="vr vr-e"></div> 538 </div> 539</div> 540 541 542 543</div><!-- /.rz-row-block --> 544 545 546 547 548 </div><!-- /.rz-section-block --> 549</div><!-- /.rz-section-block-wrap --> 550 551 552 553 554 555<div class="rz-section-block-wrap position-relative" style="background-color:rgba(26, 54, 104, 0.91);--rz-section-margin-sm:0;--rz-section-margin-md:0;--rz-section-margin-lg:0 0 -112px;"> 556 557 558 559 <div class="rz-section-block container" style="max-width:1320px;"> 560 561 562 563 564 565<div class="rz-row-block d-grid opt_row_columns_6 header-btm-in" style="grid-template-columns:180px 1fr;
565--rz-column-padding-t:5px;--rz-column-padding-b:5px;"> 566<div class="rz-column-block d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-between align-items-lg-center"> 567 <div class="rz-element-wrapper logo-section d-flex d-lg-block"> 568 569 <div class="responsive-menu align-items-center d-flex d-lg-none gap-1"> 570 <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"> 571 <i class="bi bi-three-dots" aria-hidden="True"></i> 572 </button> 573 <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"> 574 <i class="bi bi-share-fill" aria-hidden="True"></i> 575 </button> 576 </div><!-- /.responsive-menu --> 577 578 579 <a href="./" class="flex-fill d-flex text-center flex-column text-decoration-none main-logo main-logo-text justify-content-center"> 580 <span class="lh-1">Raymore, MO</span> 581 <p class="logo-tagline lh-1 m-0">Live work play</p> 582 </a> 583 584 <a href="./" class="d-flex align-items-center text-decoration-none main-logo main-logo-image"> 585 <img loading="lazy" src="website_assets/logo.png?t=202607081250130" alt="Raymore, MO" class="header-logo-img"> 586 </a> 587 588 <div class="offcanvas-toggles align-items-center d-flex d-lg-none gap-1"> 589 <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"> 590 <i class="fa-solid fa-magnifying-glass" aria-hidden="True"></i> 591 </button> 592 <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"> 593 <i class="fa-solid fa-bars" aria-hidden="True"></i> 594 </button> 595 </div><!-- /.offcanvas-toggles --> 596 597 </div><!-- /.rz-element-wrapper --> 598</div><div class="rz-column-block gap-3 d-lg-flex flex-lg-wrap flex-lg-row justify-content-lg-end align-items-lg-center"> 599<div class="offcanvas-lg offcanvas-end" tabindex="-1" id="offcanvasNav" aria-labelledby="offcanvasNavLabel"> 600 <div class="offcanvas-header border-bottom"> 601 <h5 class="offcanvas-title" id="offcanvasNavLabel">Main Menu</h5> 602 <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close" data-bs-target="#offcanvasNav"></button> 603 </div> 604 605 <div class="offcanvas-body pt-0"> 606 607 <div class="rz-element-wrapper rz-topnav-block-wrapper has-edit-buttons"> 608 <div class="rz-element rz-topnav-wrap"> 609 <div class="rz-topnav-element"> 610 611 612 613 614 615<ul id="nav" class="v2_05-23-2012"> 616 <li class="menuLI level0 menuDisplay li-213 children"><a class="menuA level0 menuDisplay" href="government/index.php" target="_self">Government</a> 617 <ul class="menuUL level1 menuHidden ul-346"> 618 <li class="menuLI level1 menuHidden li-346"><a class="menuA level1 menuHidden" href="government/mayor_city_council.php" target="_self">Mayor & City Council</a></li> 619 <li class="menuLI level1 menuHidden li-219"><a class="menuA level1 menuHidden" href="https://raymoremo.portal.civicclerk.com/" target="_new">Agendas, Minutes & ePackets</a></li> 620 <li class="menuLI level1 menuHidden li-348 children"><a class="menuA level1 menuHidden" href="government/board_commissions/index.php" target="_self">Board & Commissions</a> 621 <ul class="menuUL level2 menuHidden ul-349"> 622 <li class="menuLI level2 menuHidden li-349"><a class="menuA level2 menuHidden" href="government/board_commissions/arts_commission.php" target="_self">Arts Commission</a></li> 623 <li class="menuLI level2 menuHidden li-350"><a class="menuA level2 menuHidden" href="government/board_commissions/board_of_adjustment.php" target="_self">
623Board of Adjustment</a></li> 624 <li class="menuLI level2 menuHidden li-351"><a class="menuA level2 menuHidden" href="government/board_commissions/board_of_appeals.php" target="_self">Board of Appeals</a></li> 625 <li class="menuLI level2 menuHidden li-352"><a class="menuA level2 menuHidden" href="government/board_commissions/license_tax_review_committee.php" target="_self">License Tax Review Committee</a></li> 626 <li class="menuLI level2 menuHidden li-353"><a class="menuA level2 menuHidden" href="government/board_commissions/parks_and_recreation_board.php" target="_self">Parks and Recreation Board</a></li> 627 <li class="menuLI level2 menuHidden li-354"><a class="menuA level2 menuHidden" href="government/board_commissions/planning_and_zoning_commission.php" target="_self">Planning and Zoning Commission</a></li> 628 </ul> 629 </li> 630 <li class="menuLI level1 menuHidden li-355"><a class="menuA level1 menuHidden" href="calendar/index.php" target="_self">Calendar</a></li> 631 <li class="menuLI level1 menuHidden li-221 children"><a class="menuA level1 menuHidden" href="government/city_departments/index.php" target="_self">City Departments</a> 632 <ul class="menuUL level2 menuHidden ul-246"> 633 <li class="menuLI level2 menuHidden li-246"><a class="menuA level2 menuHidden" href="government/city_departments/city_clerk/index.php" target="_self">City Clerk</a></li> 634 <li class="menuLI level2 menuHidden li-356"><a class="menuA level2 menuHidden" href="government/city_departments/communications_public_relations/index.php" target="_self">Communications & Public Relations</a></li> 635 <li class="menuLI level2 menuHidden li-248"><a class="menuA level2 menuHidden" href="government/city_departments/development_services/index.php" target="_self">Development Services</a></li> 636 <li class="menuLI level2 menuHidden li-249"><a class="menuA level2 menuHidden" href="business/economic_development/index.php" target="_self">Economic Development</a></li> 637 <li class="menuLI level2 menuHidden li-250"><a class="menuA level2 menuHidden" href="government/city_departments/emergency_management.php" target="_self">Emergency Management</a></li> 638 <li class="menuLI level2 menuHidden li-251"><a class="menuA level2 menuHidden" href="government/city_departments/finance/index.php" target="_self">Finance</a></li> 639 <li class="menuLI level2 menuHidden li-252"><a class="menuA level2 menuHidden" href="government/city_departments/human_resources/index.php" target="_self">Human Resources</a></li> 640 <li class="menuLI level2 menuHidden li-253"><a class="menuA level2 menuHidden" href="government/city_departments/municipal_court.php" target="_self">Municipal Court</a></li> 641 <li class="menuLI level2 menuHidden li-254"><a class="menuA level2 menuHidden" href="government/city_departments/parks_and_recreation/index.php" target="_self">Parks and Recreation</a></li> 642 <li class="menuLI level2 menuHidden li-255"><a class="menuA level2 menuHidden" href="government/city_departments/police/index.php" target="_self">Police</a></li> 643 <li class="menuLI level2 menuHidden li-256"><a class="menuA level2 menuHidden" href="government/city_departments/public_works/index.php" target="_self">Public Works</a></li> 644 <li class="menuLI level2 menuHidden li-257"><a class="menuA level2 menuHidden" href="government/city_departments/resident_utility_services/index.php" target="_self">Resident Utility Services</a></li> 645 </ul> 646 </li> 647 <li class="menuLI level1 menuHidden li-222"><a class="menuA level1 menuHidden" href="government/budget_and_capital_improvement_plan.php" target="_self">Budget and Capital Improvement Plan</a></li> 648 <li class="menuLI level1 menuHidden li-223"><a class="menuA level1 menuHidden" href="government/raymore_master_plans.php" target="_self">Raymore Master Plans</a></li> 649 <li class="menuLI level1 menuHidden li-224"><a class="menuA level1 menuHidden" href="government/contact_city_staff.php" target="_self">Contact City Staff</a></li> 650 </ul> 651 </li> 652 <li class="menuLI level0 menuDisplay li-214 children"><a class="menuA level0 menuDisplay" href="residents/index.php" target="_self">Residents</a> 653 <ul class="menuUL level1 menuHidden ul-357"> 654 <li class="menuLI level1 menuHidden li-357"><a class="menuA level1 menuHidden" href="residents/justice_center_information.php" target="_self">Justice Center Information</a></li> 655 <li class="menuLI level1 menuHidden li-225 children"><a class="menuA level1 menuHidden" href="residents/city_services/index.php" target="_self">City Services</a> 656 <ul class="menuUL level2 menuHidden ul-365"> 657 <li class="menuLI level2 menuHidden li-365"><a class="menuA level2 menuHidden" href="government/city_departments/police/animal_control/index.php" target="_self">Animal Control</a></li> 658 <li class="menuLI level2 menuHidden li-366"><a class="menuA level2 menuHidden" href="government/city_departments/development_services/code_enforcement.php" target="_self">Code Enforcement</a></li> 659 <li class="menuLI level2 menuHidden li-367"><a class="menuA level2 menuHidden" href="government/city_departments/resident_utility_services/payment_options.php" target="_self">How to Pay a Utility Bill</a></li> 660 <li class="menuLI level2 menuHidden li-749"><a class="menuA level2 menuHidden" href="government/city_departments/city_clerk/licenses.php" target="_self">Licensing</a></li> 661 <li class="menuLI level2 menuHidden li-258"><a class="menuA level2 menuHidden" href="residents/city_services/oats_transit.php" target="_self">OATS Transit</a></li> 662 <li class="menuLI level2 menuHidden li-259"><a class="menuA level2 menuHidden" href="government/city_departments/police/index.php" target="_self">Police</a></li> 663 <li class="menuLI level2 menuHidden li-368"><a class="menuA level2 menuHidden" href="government/city_departments/resident_utility_services/trash_service/index.php" target="_self">Residential Trash Service</a></li> 664 <li class="menuLI level2 menuHidden li-369"><a class="menuA level2 menuHidden" href="government/city_departments/resident_utility_services/water_service.php" target="_self">Water Service</a></li> 665 <li class="menuLI level2 menuHidden li-1103"><a class="menuA level2 menuHidden" href="index.php" target="_self">New Page</a></li> 666 </ul> 667 </li> 668 <li class="menuLI level1 menuHidden li-226"><a class="menuA level1 menuHidden" href="residents/resident_survey_program.php" target="_self">Resident Survey Program</a></li> 669 <li class="menuLI level1 menuHidden li-227 children"><a class="menuA level1 menuHidden" href="residents/in_the_know/index.php" target="_self">In the Know</a> 670 <ul class="menuUL level2 menuHidden ul-370"> 671 <li class="menuLI level2 menuHidden li-370"><a class="menuA level2 menuHidden" href="government/city_departments/communications_public_relations/weekly_enews.php" target="_self">Weekly eNews</a></li> 672 <li class="menuLI level2 menuHidden li-371"><a class="menuA level2 menuHidden" href="news/index.php" target="_self">City Hall News</a></li> 673 <li class="menuLI level2 menuHidden li-261"><a class="menuA level2 menuHidden" href="https://storymaps.arcgis.com/collections/c77d62cc7a344098bf730a6b95e7299a" target="_new">Current Projects</a></li> 674 <li class="menuLI level2 menuHidden li-262"><a class="menuA level2 menuHidden" href="residents/in_the_know/voting_information.php" target="_self">Voting Information</a></li> 675 </ul> 676 </li> 677 <li class="menuLI level1 menuHidden li-372"><a class="menuA level1 menuHidden" href="government/city_departments/human_resources/jobs.php" target="_self">Find City Jobs</a></li> 678 <li class="menuLI level1 menuHidden li-373"><a class="menuA level1 menuHidden" href="government/city_departments/parks_and_recreation/index.php" target="_self">Parks and Recreation</a></li> 679 <li class="menuLI level1 menuHidden li-374"><a class="menuA level1 menuHidden" href="government/city_departments/city_clerk/city_volunteer_online_application.php" target="_self">City Volunteer Online Application</a></li> 680 <li class="menuLI level1 menuHidden li-228"><a class="menuA level1 menuHidden" href="residents/city_plans_and_reports.php" target="_self">City Plans and Reports</a></li> 681 <li class="menuLI level1 menuHidden li-375"><a class="menuA level1 menuHidden" href="government/city_departments/public_works/water_service_line_inventory.php" target="_self">Water Service Line Inventory</a></li> 682 </ul> 683 </li> 684 <li class="menuLI level0 menuDisplay li-215 children"><a class="menuA level0 menuDisplay" href="business/index.php" target="_self">Business</a> 685 <ul class="menuUL level1 menuHidden ul-229"> 686 <li class="menuLI level1 menuHidden li-229"><a class="menuA level1 menuHidden" href="business/bidding_opportunities.php" target="_self">Bidding Opportunities</a></li> 687 <li class="menuLI level1 menuHidden li-230 children"><a class="menuA level1 menuHidden" href="business/doing_business_in_raymore/index.php" target="_self">Doing Business in Raymore</a> 688 <ul class="menuUL level2 menuHidden ul-263"> 689 <li class="menuLI level2 menuHidden li-263"><a class="menuA level2 menuHidden" href="business/doing_business_in_raymore/building_permit_and_development_applications.php" target="_self">Building Permit and Development Applications</a></li> 690 <li class="menuLI level2 menuHidden li-766"><a class="menuA level2 menuHidden" href="government/city_departments/city_clerk/licenses.php" target="_self">Fireworks Permit and Liquor License Information</a></li> 691 <li class="menuLI level2 menuHidden li-264"><a class="menuA level2 menuHidden" href="business/doing_business_in_raymore/land_disturbance_grading_permit_application.php" target="_self">Land Disturbance/Grading Permit Application</a></li> 692 <li class="menuLI level2 menuHidden li-265"><a class="menuA level2 menuHidden" href="business/doing_business_in_raymore/occupational_license_and_renewal_information.php" target="_self">Occupational License and Renewal Information</a></li> 693 <li class="menuLI level2 menuHidden li-266"><a class="menuA level2 menuHidden" href="https://raymore.mo.roway.net/" target="_new">Right-of-Way Permits</a></li> 694 </ul> 695 </li> 696 <li class="menuLI level1 menuHidden li-231 children"><a class="menuA level1 menuHidden" href="business/economic_development/index.php" target="_self">Economic Development</a> 697 <ul class="menuUL level2 menuHidden ul-378"> 698 <li class="menuLI level2 menuHidden li-378"><a class="menuA level2 menuHidden" href="business/economic_development/why_raymore.php" target="_self">Why Raymore?</a></li> 699 <li class="menuLI level2 menuHidden li-379"><a class="menuA level2 menuHidden" href="business/economic_development/available_sites_and_buildings.php" target="_self">Available Sites and Buildings</a></li> 700 <li class="menuLI level2 menuHidden li-380"><a class="menuA level2 menuHidden" href="https://reports.mysidewalk.com/3be90afa2b" target="_new">Demographics</a></li> 701 <li class="menuLI level2 menuHidden li-381"><a class="menuA level2 menuHidden" href="business/economic_development/incentive_programs.php" target="_self">Incentive Programs</a></li> 702 <li class="menuLI level2 menuHidden li-382"><a class="menuA level2 menuHidden" href="business/economic_development/workforce_and_targeted_industry.php" target="_self">Workforce and Targeted Industry</a></li> 703 <li class="menuLI level2 menuHidden li-383"><a class="menuA level2 menuHidden" href="business/economic_development/business_support_and_resources.php" target="_self">Business Support and Resources</a></li> 704 </ul> 705 </li> 706 <li class="menuLI level1 menuHidden li-376"><a class="menuA level1 menuHidden" href="government/city_departments/human_resources/jobs.php" target="_self">Find City Jobs</a></li> 707 <li class="menuLI level1 menuHidden li-377"><a class="menuA level1 menuHidden" href="business/raymore_restaurant_and_small_business_week.php" target="_self">Raymore Restaurant and Small Business Week</a></li> 708 <li class="menuLI level1 menuHidden li-233"><a class="menuA level1 menuHidden" href="business/small_business_saturday.php" target="_self">Small Business Saturday</a></li> 709 </ul> 710 </li> 711 <li class="menuLI level0 menuDisplay li-216 children"><a class="menuA level0 menuDisplay" href="explore/index.php" target="_self">Explore</a> 712 <ul class="menuUL level1 menuHidden ul-235"> 713 <li class="menuLI level1 menuHidden li-235"><a class="menuA level1 menuHidden" href="explore/raymore_community_foundation.php" target="_self">Raymore Community Foundation</a></li> 714 <li class="menuLI level1 menuHidden li-236 children"><a class="menuA level1 menuHidden" href="explore/the_arts_in_raymore/arts.p
714hp" target="_self">The Arts in Raymore</a> 715 <ul class="menuUL level2 menuHidden ul-267"> 716 <li class="menuLI level2 menuHidden li-267"><a class="menuA level2 menuHidden" href="explore/the_arts_in_raymore/raymore_chili_cook_off.php" target="_self">Raymore Chili Cook-Off</a></li> 717 <li class="menuLI level2 menuHidden li-268"><a class="menuA level2 menuHidden" href="explore/the_arts_in_raymore/power_of_perspectives.php" target="_self">Power of Perspectives</a></li> 718 <li class="menuLI level2 menuHidden li-269"><a class="menuA level2 menuHidden" href="explore/the_arts_in_raymore/council_chamber_art_gallery.php" target="_self">Council Chamber Art Gallery</a></li> 719 <li class="menuLI level2 menuHidden li-270"><a class="menuA level2 menuHidden" href="explore/the_arts_in_raymore/raymore_concert_series.php" target="_self">Raymore Concert Series</a></li> 720 </ul> 721 </li> 722 <li class="menuLI level1 menuHidden li-384"><a class="menuA level1 menuHidden" href="calendar/index.php" target="_self">Community Events</a></li> 723 </ul> 724 </li> 725 <li class="menuLI level0 menuDisplay li-217 children"><a class="menuA level0 menuDisplay" href="how_do_i_/index.php" target="_self">How Do I...</a> 726 <ul class="menuUL level1 menuHidden ul-237"> 727 <li class="menuLI level1 menuHidden li-237"><a class="menuA level1 menuHidden" href="government/contact_city_staff.php" target="_self">Contact City Staff</a></li> 728 <li class="menuLI level1 menuHidden li-385"><a class="menuA level1 menuHidden" href="government/city_departments/public_works/operations_maintenance/index.php" target="_self">Adopt a Street</a></li> 729 <li class="menuLI level1 menuHidden li-386"><a class="menuA level1 menuHidden" href="government/city_departments/human_resources/jobs.php" target="_self">Find a City Job</a></li> 730 <li class="menuLI level1 menuHidden li-238"><a class="menuA level1 menuHidden" href="business/doing_business_in_raymore/index.php" target="_self">Obtain a Permit</a></li> 731 <li class="menuLI level1 menuHidden li-239"><a class="menuA level1 menuHidden" href="https://raymoremo.municipalonlinepayments.com/raymoremo" target="_new">Pay a Utility Bill, Permit Fee or Court Fine</a></li> 732 <li class="menuLI level1 menuHidden li-387"><a class="menuA level1 menuHidden" href="https://cms.revize.com/revize/apps/revize_psr/public/index.php?client_department_id=916" target="_new">Report a Concern</a></li> 733 <li class="menuLI level1 menuHidden li-388"><a class="menuA level1 menuHidden" href="government/city_departments/city_clerk/open_records_requests.php" target="_self">Request Open Records</a></li> 734 <li class="menuLI level1 menuHidden li-389"><a class="menuA level1 menuHidden" href="government/city_departments/police/police_records_request.php" target="_self">Request Police Records</a></li> 735 <li class="menuLI level1 menuHidden li-390"><a class="menuA level1 menuHidden" href="government/city_departments/police/emergency_notification_system.php" target="_self">Sign up for Emergency Alerts</a></li> 736 </ul> 737 </li> 738</ul> 739 740 741<!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 741-742
741 742<script async src="https://www.googletagmanager.com/gtag/js?id=
742G-3EXQWKXV50
vendor: 12 bytes, line 742
742"></script>
743<script>
vendor: 128 bytes, lines 744-748
744window.dataLayer = window.dataLayer || []; 745function gtag(){dataLayer.push(arguments);} 746gtag('js', new Date()); 747 748gtag('config', '
748G-3EXQWKXV50
vendor: 4 bytes, line 748
748');
749</script>
749 750 </div><!-- /.rz-topnav-element --> 751 </div><!-- /.rz-element --> 752 753 </div><!-- /.rz-element-wrapper --> 754 755 </div><!-- /.offcanvas-body --> 756</div><!-- /.offcanvas-lg --> 757 758 759 760 761 762<div class="rz-element-wrapper rz-button-wrapper has-edit-buttons move-to-offcanvas header-buttons" 763 764 > 765 766 <div class="center-top"> 767 <div class="rz-btns-container"> 768
768<script> 769 RZ.module = 'generic'; 770 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/buttons-editform.jsp"; 771 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Buttons</span>'; 772 RZ.caption = ''; 773 RZ.set = 'pageid=70ca0fb7-a6a2-4a56-bf1d-55da2881e9d3'; 774 RZ.options = ''; 775 if (typeof RZaction != 'undefined') RZaction('editform'); 776 </script>
776 777 </div> 778 </div> 779 <div class="rz-element rz-button-wrap d-flex flex-wrap" 780 style="gap:16px;"> 781 782<div class="d-flex align-items-stretch" data-aos-duration="600"> 783 <a href="https://raymoremo.municipalonlinepayments.com/raymoremo" target="_blank" 784 class="rz-btn-element d-flex align-items-center justify-content-center btn btn-outline-warning no-rz-text-reveal-btn " 785 style="--bs-btn-color:#ffffff;--bs-btn-hover-color:#ffffff;--bs-btn-border-color:#F89C24;--bs-btn-border-hover-color:#F89C24;gap:8px;padding:8px 20px 8px 20px;"> 786 787 788 789 790 <i class="fa-solid fa-credit-card rz-btn-icon flex-shrink-0" aria-hidden="true"></i> 791 792 793 794 795 796 <span class="overflow-hidden d-inline-block" 797 > 798 <span data-text="Pay Online" class="rz-btn-text" 799 > 800 Pay Online 801 </span> 802 </span> 803 804 805 806 807 808 </a> 809</div> 810 811 </div> 812</div> 813 814 815 816 817 <div class="header-element header-search-toggle d-none d-lg-flex align-items-stretch gap-0"> 818 <div class="vr vr-s"></div> 819 <button type="button" class="btn btn-link px-3 search-toggle d-flex align-items-center" data-bs-toggle="modal" data-bs-target="#searchModal"> 820 <i class="bi bi-search" for="site-search-input"></i><span class="sr-only">Search</span> 821 </button> 822 <div class="vr vr-e"></div> 823 </div><!--/#header-element--> 824</div> 825 826 827 828</div><!-- /.rz-row-block --> 829 830 831 832 833 </div><!-- /.rz-section-block --> 834</div><!-- /.rz-section-block-wrap --> 835 836 837 </div><!-- /.site-header --> 838</header><!-- /.site-header-wrap --> 839<div class="rz-site-wrap"> 840 <main id="rz-content-wrap"> 841 842 843 844 845<!-- --><div class="rz-element-wrapper rz-slider-wrapper has-edit-buttons position-relative overflow-hidden" style=" --rz-slider-bg:#000000; "> 846 847 <div class="center-center"> 848 <div class="rz-btns-container"> 849
849<script language="JavaScript" type="text/JavaScript"> 850 RZ.module = 'generic'; 851 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/slider-editform.jsp"; 852 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Slider</span>'; 853 RZ.caption = ''; 854 RZ.set = 'pageid=slider-51'; 855 RZ.options = ''; 856 if (typeof RZaction != 'undefined') RZaction('editform'); 857 </script>
857 858 </div> 859 </div> 860 861 862 <div 863 864 data-controls-position="bottom" 865 class="rz-freeform-slider rz-slider tiny-carousel-wrap" 866 867 style=" 868 869 870 871 872 873 874 875 876 877 " 878 > 879 880 881 <div class="rz-slider-bg-overlay" ></div> 882 883 884 885 <div class="tiny-slider" 886 style="height:100%;" 887 data-tiny-items="1" 888 data-tiny-mode="gallery" 889 data-tiny-items-md="1" 890 data-tiny-items-sm="1" 891 data-tiny-gap="0" 892 data-tiny-controls="true" 893 data-tiny-nav="true" 894 data-tiny-autoplay-buttons="true" 895 data-tiny-autoplay="true"> 896 897 <div class="tiny-item" style="height:100%;"> 898 <div class="tns-lazy-img tns-bg-slide" 899 data-style="background:url('website_assets/inner.jpg?t=202605300521450') center center / cover no-repeat;"></div> 900 </div> 901 902 </div><!--/.tiny-slider--> 903 904 </div><!-- /.slider --> 905 <div class="rz-slider-caption-wrap d-flex flex-column overflow-hidden justify-content-center align-items-start"> 906 <div class="rz-slider-caption container d-flex flex-column align-items-start"> 907 </div><!-- /.rz-slider-caption --> 908 </div><!-- /.rz-slider-caption-wrap --> 909</div><!-- /.slider-wrap --> 910 911 912 <div id="freeform-content-wrapper" class="position-relative z-3"> 913 <div class="container-fluid px-0 d-flex flex-column flex-lg-row flex-lg-nowrap"> 914 <div class="col freeform-left-col-fill"></div> 915 916 <div class="col-post-wrap"> 917 <div class="col-post h-100"> 918 <div id="post" class="h-100"> 919 <div class="rz-section-block container page-title-wrapper mb-3 d-flex flex-column title-pos-standard breadcrumb-pos-above"> 920 <nav aria-label="breadcrumb" class="breadcrumb"> 921 <ul><li><a href="./">Home</a> </li><li>News</li></ul></nav> 922 <h1 class="page-title page-title-standard"> 923 924 925News 926 </h1> 927 </div> 928 <div class="post-content h-100"> 929 <!-- main content --> 930 931 932 933 934 935<div class="rz-section-block-wrap position-relative"> 936 937 938 939 <div class="rz-section-block container"> 940 941 942 943 944 945<div class="rz-row-block d-grid"> 946<div class="rz-column-block"> 947 948 949 950<div class="rz-element-wrapper rz-news-card-wrapper has-edit-buttons" data-infinite="false" data-cards-per-page="9" data-rz-search-module="news"> 951 <div class="center-top"> 952 <div class="rz-btns-container"> 953
953<script> 954 RZ.module = 'news'; 955 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/news-editlist.jsp?width=370&height=450&pageid=a07a4369-8ee3-4050-a79e-6faf22b336a1"; 956 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Articles</span>'; 957 RZ.set = 'pageid=a07a4369-8ee3-4050-a79e-6faf22b336a1'; 958 if (typeof RZaction !== 'undefined') RZaction('editlist'); 959 </script>
959 960
960<script> 961 RZ.module = 'generic_lists'; 962 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/categories-editlist.jsp?type=category-news_list"; 963 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Categories</span>'; 964 RZ.set = ''; 965 if (typeof RZaction !== 'undefined') RZaction('editlist'); 966 </script>
966 967 </div> 968 </div> 969 970 971 972 <div class="row row-cols-1 row-cols-md-2 row-cols-lg-3 rz-news-card-list mt-0" 973 style="--bs-gutter-y:16px;--bs-gutter-x:16px;"> 974<slot 975 data-type="dot-feed" 976 data-content-template="/revize/plugins/zbuilder/v1/website/_assets_/templates/news_list/base.html" 977 data-content-feed="_includes_/published/news_list.json" 978 data-content-options='{"opt_start_cutoff":"show_all","news_list_card_style":"stacked","category_filter":"24|406","sort_order":"seq_no asc, date asc","news_list_link_to":"modal","news_button_text":"Read More "}'> 979 </slot> 980 981 </div><!-- /.row --> 982 983</div><!-- /.rz-element-wrapper -->
984<script src="/revize/plugins/zbuilder/v1/website/builder/modules/assets/news_list.js"></script>
984 985 986 987 988</div> 989 990 991 992</div><!-- /.rz-row-block --> 993 994 995 996 997 </div><!-- /.rz-section-block --> 998</div><!-- /.rz-section-block-wrap --> 999 1000 1001 </div><!-- /.post-content --> 1002 </div><!-- /#post --> 1003 </div><!-- /.col-post --> 1004 </div><!-- /.col-post-wrap --> 1005 <div class="col freeform-right-col-fill"></div> 1006 </div><!-- /.row --> 1007 </div><!-- /.freeform-content-wrapper --> 1008 </main><!-- /#rz-content-wrap --> 1009 1010 1011 1012 1013<footer class="site-footer-wrap"> 1014 <div class="site-footer"> 1015 1016 1017 1018 1019<div class="rz-section-block-wrap position-relative" style="background-color:#1A3668;--rz-section-padding-sm:48px 0;--rz-section-padding-md:48px 0;--rz-section-padding-lg:48px 0;"> 1020 1021 1022 1023 <div class="rz-section-block container"> 1024 1025 1026 1027 1028 1029<div class="rz-row-block d-grid opt_row_columns_5" style="grid-template-columns:1fr 200px 200px 200px;"> 1030<div class="rz-column-block"> 1031 <div class="rz-element-wrapper rz-rte-block-wrapper footer-logo-section d-flex"> 1032 1033 <a href="./" class="d-flex align-items-center text-decoration-none footer-logo"> 1034 <img loading="lazy" src="website_assets/logo.png?t=202607081250130" alt="Raymore, MO" class="footer-logo"> 1035 </a> 1036 1037 </div><!-- /.rz-element-wrapper --> 1038 1039 1040</div><div class="rz-column-block"> 1041 1042 1043 1044 1045<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons" 1046 > 1047 <div class="center-top"> 1048 <div class="rz-btns-container"> 1049
1049<script language="JavaScript" type="text/JavaScript"> 1050 RZ.module = 'generic'; 1051 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1052 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1053 RZ.caption = ''; 1054 RZ.set = 'pageid=416ee3c5-308f-48a3-8476-cc405c0536ae'; 1055 RZ.options = ''; 1056 if (typeof RZaction != 'undefined') RZaction('editform'); 1057 </script>
1057 1058 </div> 1059 </div> 1060 1061 1062 <div class="rz-module-header d-flex align-items-center gap-2"> 1063 1064 1065 <span class="rz-module-header-text">Helpful Links</span> 1066 1067 1068 </div> 1069 1070 1071 <div class="rz-element rz-link-list-wrap"> 1072 <div class="list-group list-group-flush" > 1073 1074 <a href="residents/city_services/index.php" target="_self" 1075 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1076 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1077 1078 <span style="color:#ffffff;font-size:14px;">City Services </span> 1079 1080 </a> 1081 1082 <a href="government/contact_city_staff.php" target="_self" 1083 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1084 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1085 1086 <span style="color:#ffffff;font-size:14px;">Contact The Staff</span> 1087 1088 </
1088a> 1089 1090 <a href="business/doing_business_in_raymore/index.php" target="_self" 1091 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1092 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1093 1094 <span style="color:#ffffff;font-size:14px;">Obtain a Permit</span> 1095 1096 </a> 1097 1098 <a href="http://cms.revize.com/revize/apps/revize_psr/public/index.php?client_department_id=916" target="_blank" 1099 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1100 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1101 1102 <span style="color:#ffffff;font-size:14px;">Public Service Request App</span> 1103 1104 </a> 1105 1106 <a href="business/economic_development/index.php" target="_self" 1107 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1108 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1109 1110 <span style="color:#ffffff;font-size:14px;">Economic Development</span> 1111 1112 </a> 1113 1114 </div><!-- /.list-group --> 1115 </div><!-- /.rz-element --> 1116</div><!-- /.rz-element-wrapper --> 1117 1118 1119 1120 1121</div><div class="rz-column-block"> 1122 1123 1124 1125 1126<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons" 1127 > 1128 <div class="center-top"> 1129 <div class="rz-btns-container"> 1130
1130<script language="JavaScript" type="text/JavaScript"> 1131 RZ.module = 'generic'; 1132 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1133 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1134 RZ.caption = ''; 1135 RZ.set = 'pageid=f92166e9-f3ff-43a8-86f5-2b26e001962f'; 1136 RZ.options = ''; 1137 if (typeof RZaction != 'undefined') RZaction('editform'); 1138 </script>
1138 1139 </div> 1140 </div> 1141 1142 1143 <div class="rz-module-header d-flex align-items-center gap-2"> 1144 1145 1146 <span class="rz-module-header-text">Helpful Links</span> 1147 1148 1149 </div> 1150 1151 1152 <div class="rz-element rz-link-list-wrap"> 1153 <div class="list-group list-group-flush" > 1154 1155 <a href="government/city_departments/public_works/index.php" target="_self" 1156 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1157 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1158 1159 <span style="color:#ffffff;font-size:14px;">Public Works </span> 1160 1161 </a> 1162 1163 <a href="government/city_departments/index.php" target="_self" 1164 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1165 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1166 1167 <span style="color:#ffffff;font-size:14px;">City Departments</span> 1168 1169 </a> 1170 1171 <a href="government/city_departments/human_resources/jobs.php" target="_self" 1172 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1173 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1174 1175 <span style="color:#ffffff;font-size:14px;">Find City Jobs</span> 1176 1177 </a> 1178 1179 <a href="calendar/index.php" target="_self" 1180 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1181 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1182 1183 <span style="color:#ffffff;font-size:14px;">Community Events</span> 1184 1185 </a> 1186 1187 <a href="government/city_departments/public_works/operations_maintenance/index.php" target="_self" 1188 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1189 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:6px;padding-bottom:6px;"> 1190 1191 <span style="color:#ffffff;font-size:14px;">Adopt a Street </span> 1192 1193 </a> 1194 1195 </div><!-- /.list-group --> 1196 </div><!-- /.rz-element --> 1197</div><!-- /.rz-element-wrapper --> 1198 1199 1200 1201 1202</div><div class="rz-column-block"> 1203 1204 1205 1206 1207<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons has-underline" 1208 style="margin:0px 0px 20px 0px;"> 1209 <div class="center-top"> 1210 <div class="rz-btns-container"> 1211
1211<script language="JavaScript" type="text/JavaScript"> 1212 RZ.module = 'generic'; 1213 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1214 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1215 RZ.caption = ''; 1216 RZ.set = 'pageid=52690802-cb09-40cf-8ba8-b12964cf1d80'; 1217 RZ.options = ''; 1218 if (typeof RZaction != 'undefined') RZaction('editform'); 1219 </script>
1219 1220 </div> 1221 </div> 1222 1223 1224 <div class="rz-module-header d-flex align-items-center gap-2"> 1225 1226 1227 <span class="rz-module-header-text">Address</span> 1228 1229 1230 </div> 1231 1232 1233 <div class="rz-element rz-link-list-wrap"> 1234 <div class="list-group list-group-flush" > 1235 1236 <a href="https://maps.app.goo.gl/at7UYqfCWSRdZqe49" target="_blank" 1237 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1238 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:2px;padding-bottom:2px;"> 1239 1240 <span style="color:#ffffff;font-size:14px;">100 Municipal Circle, Raymore, MO 64083</span> 1241 1242 </a> 1243 1244 <a href="#" target="_self" 1245 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1246 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:2px;padding-bottom:2px;"> 1247 1248 <span style="color:#ffffff;font-size:14px;">M - F | 8:00AM - 5:00PM</span> 1249 1250 </a> 1251 1252 </div><!-- /.list-group --> 1253 </div><!-- /.rz-element --> 1254</div><!-- /.rz-element-wrapper --> 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264<div class="rz-element-wrapper rz-link-list-wrapper has-edit-buttons has-underline" 1265 > 1266 <div class="center-top"> 1267 <div class="rz-btns-container"> 1268
1268<script language="JavaScript" type="text/JavaScript"> 1269 RZ.module = 'generic'; 1270 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/link_list-editform.jsp"; 1271 RZ.img = '<span class="rzBtn rzBtn-sm">Edit Links</span>'; 1272 RZ.caption = ''; 1273 RZ.set = 'pageid=713a3d53-38a2-499b-a6fc-e79e669c80cb'; 1274 RZ.options = ''; 1275 if (typeof RZaction != 'undefined') RZaction('editform'); 1276 </script>
1276 1277 </div> 1278 </div> 1279 1280 1281 <div class="rz-module-header d-flex align-items-center gap-2"> 1282 1283 1284 <span class="rz-module-header-text">Contact</span> 1285 1286 1287 </div> 1288 1289 1290 <div class="rz-element rz-link-list-wrap"> 1291 <div class="list-group list-group-flush" > 1292 1293 <a href="#" target="_self" 1294 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1295 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:2px;padding-bottom:2px;"> 1296 1297 <span style="color:#ffffff;font-size:14px;">816.331.0488</span> 1298 1299 </a> 1300 1301 <a href="mailto:[email protected]" target="_blank" 1302 class="list-group-item list-group-item-action bg-transparent d-flex align-items-center" 1303 style="--bs-list-group-border-color:#00000000;gap:16px;color:#ffffff;padding-top:2px;padding-bottom:2px;"> 1304 1305 <span style="color:#ffffff;font-size:14px;">[email protected]</span> 1306 1307 </a> 1308 1309 </div><!-- /.list-group --> 1310 </div><!-- /.rz-element --> 1311</div><!-- /.rz-element-wrapper --> 1312 1313 1314 1315 1316</div> 1317 1318 1319 1320</div><!-- /.rz-row-block --> 1321 1322 1323 1324 1325<div class="rz-row-block d-grid"> 1326<div class="rz-column-block"> 1327 1328 1329<div class="rz-element-wrapper rz-single-image-wrapper has-edit-buttons d-none" 1330 > 1331 <div class="center-center"> 1332 <div class="rz-btns-container"> 1333
1333<script language="JavaScript" type="text/JavaScript"> 1334 RZ.module = 'generic'; 1335 RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/image-editform.jsp"; 1336 RZ.img = '<span class="rzBtn rzBtn-xs">Edit Image</span>'; 1337 RZ.caption = ''; 1338 RZ.set = 'pageid=9b2e37c2-b245-4a7e-b8eb-1c412684d0a5'; 1339 RZ.options = ''; 1340 if (typeof RZaction != 'undefined') RZaction('editform'); 1341 </script>
1341 1342 </div> 1343 </div> 1344 1345 <div class="rz-element rz-single-image-wrap"> 1346 1347 <div class="rz-single-image position-relative"> 1348 1349 1350 <img loading="lazy" 1351 src="website_assets/texture.png?t=202605291338090" 1352 alt="texture" 1353 style="width:100%;" 1354 > 1355 1356 </div><!-- /.rz-single-image --> 1357 1358 </div><!-- /.rz-single-image-wrap --> 1359</div><!-- /.rz-element-wrapper --> 1360 1361 1362 1363 1364 1365</div> 1366 1367 1368 1369</div><!-- /.rz-row-block --> 1370 1371 1372 1373 1374 </div><!-- /.rz-section-block --> 1375</div><!-- /.rz-section-block-wrap --> 1376 1377 1378 </div><!-- /.site-footer --> 1379</footer><!-- /.site-footer-wrap --> 1380<div class="offcanvas-lg offcanvas-bottom" 1381 tabindex="-1" 1382 id="offcanvasHeaderItems"> 1383 <div class="offcanvas-header"> 1384 <button type="button" 1385 class="btn-close" 1386 data-bs-dismiss="offcanvas" 1387 aria-label="Close" 1388 data-bs-target="#offcanvasHeaderItems"></button> 1389 </div> 1390 <div class="offcanvas-body offcanvasHeaderItems-offcanvas-body pt-0"></div> 1391</div><!-- #offcanvasHeaderItems --> 1392 1393 1394<div class="modal modal-lg fade" id="searchModal" tabindex="-1" role="dialog" style="--bs-modal-width:640px;"> 1395 <div class="modal-dialog modal-dialog-centered" role="Site Search"> 1396 <div class="modal-content px-0"> 1397 <div class="modal-header border-0 pb-0 px-lg-3 pt-4"> 1398 <h2 class="h5">Search Raymore, MO</h2> 1399 <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> 1400 </div> 1401 <div class="modal-body p-0"> 1402 <form class="form-inline overflow-hidden" method="GET" action="search.php" role="search" aria-label="sitewide"> 1403 <div class="d-flex relative bg-white p-2 px-3"> 1404 <div class="position-relative w-100"> 1405 <div class="form-floating w-100"> 1406 <input id="autocompleteme" autocomplete="off" class="form-control form-control-lg m-0 w-100" name="q" type="search" placeholder="Search..."> 1407 <label for="autocompleteme" class="bg-transparent">Search...</label> 1408 </div> 1409 <div id="autocomplete-spinner" class="spinner-border text-success position-absolute" role="status" 1410 style="top: 50%; right: 4rem; width: 1rem; height: 1rem; margin-top: -9px; display: none; z-index: 10;--bs-spinner-border-width:0.15em" > 1411 <span class="visually-hidden">Loading...</span> 1412 </div> 1413 </div> 1414 1415 <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> 1416 <span><svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" class="insta-search-icon"> 1417 <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> 1418 </svg><span class="sr-only">Search</span></span> 1419 </button> 1420 </div> 1421 <div class="no-instant-results p-5 text-center w-100" style="display:none"> 1422 <i class="bi bi-x-octagon fs-5 p-3 lh-1 bg-danger-subtle rounded-pill mb-3 d-inline-flex text-danger"></i> 1423 <div class="fs-5 fw-bold">No pages found with that exact name</div> 1424 <p class="mx-lg-5 px-lg-5">Explore other search options below, clear your search, or hit <kbd>Enter</kbd> to finish</p> 1425 <button type="button" class="clear-search btn border-0 btn-sm btn-light">Clear search</button> 1426 </div> 1427 <div id="searchResults" class="bg-white" style="display:none"><h6 class="fw-bold m-0" style="padding:.5rem 1.25rem">Relative pages</h6></div> 1428 <div class="search-help w-100" style="display:none"> 1429 <p class="text-md-center text-muted small m-0 p-2 py-md-3 bg-light d-none d-lg-block border-top"> 1430 Hit <kbd>Enter</kbd> to search. <kbd><i class="bi bi-arrow-up-short"></i></kbd> <kbd><i class="bi bi-arrow-down-short"></i></kbd> to navigate <kbd>ESC</kbd> to close or select a page above. 1431 </p> 1432 </div><!-- /.search-help --> 1433 </form> 1434 <div class="all-search-buttons-wrap w-100 lh-1 position-relative" style="display:none"> 1435 <div class="all-search-buttons py-3 p-3 d-md-flex flex-column flex-md-row gap-2 border-top"> 1436 <div class="searchPopover p-3 bg-white d-none d-xl-block popover"> 1437 <div class="searchPopover-arrow"></div><span class="searchPopover-text">Try searching... </span> 1438 </div> 1439 <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> 1440 <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> 1441 </div><!-- /.search-buttons --> 1442 </div><!-- /.all-search-buttons-wrap --> 1443 <div class="popular-pages-search p-3 has-edit-buttons"> 1444 <div class="rz-btns-container center-top"> 1445
1445<script language="JavaScript" type="text/JavaScript"> 1446 RZ.module = 'links'; 1447 RZ.nexturl = "/revize/plugins/menus/webspace_menu-editlist.jsp?pageid=0&" 1448 + "linksfilter=linkplacement=search-nav&" 1449 + "linkoptions=url,file&" 1450 + "toplevel=0&" 1451 + "bottomlevel=0&" 1452 + "linknewsection=*all*&" 1453 RZ.img = '<span class="rzBtn rzBtn-xs">Edit</span>'; 1454 RZ.caption = ''; 1455 RZ.set = "links.linkplacement=search-nav"; 1456 RZ.options = ''; 1457 if (typeof RZaction != 'undefined') RZaction('editlist'); 1458 </script>
1458 1459 </div><!-- /.rz-btns-container --> 1460 <h6>Popular pages</h6> 1461 <div class="popular-results d-flex flex-wrap gap-2"> 1462 1463 <a href="index.php" target="_self" class="btn btn-sm btn-success highlighted">Home <i class="fa-solid fa-star ms-1"></i></a> 1464 1465 <a href="news/index.php" target="_self" class="btn btn-sm btn-light">News</a> 1466 1467 </div> 1468 </div> 1469 </div><!-- /.modal-body --> 1470 </div><!-- /.modal-content --> 1471 </div><!-- /.modal-dialog --> 1472</div><!-- /.modal -->
1473<script> 1474document.addEventListener('DOMContentLoaded', function () { 1475 const $ = jQuery; 1476 1477 const $input = $('#autocompleteme'); 1478 const $spinner = $('#autocomplete-spinner'); 1479 const $results = $('#searchResults'); 1480 const $clearBtn = $('.clear-search'); 1481 const $noResults = $('.no-instant-results'); 1482 const $searchButtonsWrap = $('.all-search-buttons-wrap'); 1483 const $searchPopoverText = $('.searchPopover-text'); 1484 const $searchHelp = $('.search-help'); 1485 const $popularPages = $('.popular-pages-search'); 1486 const modal = document.getElementById('searchModal'); 1487 1488 $.widget("custom.noAutoCloseAutocomplete", $.ui.autocomplete, { 1489 _close: function () {}, 1490 _renderItem: function (ul, item) { 1491 return $("<li>") 1492 .append("<div>" + item.label + "</div>") 1493 .appendTo(ul); 1494 } 1495 }); 1496 1497 const allPages = []; 1498 1499 async function preloadSitemap() { 1500 if (allPages.length) { return; } 1501 1502 fetch('_assets_/sitemap.xml').then(async function(res) { 1503 if (!res.ok) { return; } 1504 1505 var xmlString = await res.text(); 1506 1507 var xmlParser = new DOMParser(); 1508 var resDoc = xmlParser.parseFromString(xmlString, "application/xml"); 1509 1510 resDoc.querySelectorAll("url").forEach(function(el) { 1511 1512 var lab = el.querySelector("title").textContent; 1513 var val = el.querySelector("loc").textContent; 1514 var link = el.querySelector("loc").textContent; 1515 1516 allPages.push({label: lab, value: val, link: link}); 1517 }); 1518 }); 1519 } 1520 1521 function updateSearchUI(val) { 1522 if (val.length > 0) { 1523 $('.all-search-buttons .btn .search-query-text').text(val); 1524 if (!$searchButtonsWrap.is(':visible')) { 1525 $searchButtonsWrap.stop(true, true).slideDown(300); 1526 } 1527 $('.all-site-search-btn').attr('href', 'search.php?q=' + encodeURIComponent(val)); 1528 $('.all-doc-search-btn').attr('href', 'search.php?q=' + encodeURIComponent('filetype:doc OR filetype:pdf OR filetype:docx ' + val)); 1529 $popularPages.addClass('border-top'); 1530 } else { 1531 $searchButtonsWrap.stop(true, true).slideUp(300); 1532 $searchHelp.hide(300); 1533 $noResults.hide(300); 1534 $popularPages.removeClass('border-top'); 1535 $searchPopoverText.text("Or try searching..."); 1536 $results.removeClass('open').hide(300); 1537 } 1538 } 1539 1540 function initAutocomplete() { 1541 $input.noAutoCloseAutocomplete({ 1542 appendTo: "#searchResults", 1543 minLength: 1, 1544 delay: 300, 1545 html: false, 1546 source: function (request, response) { 1547 const term = $.trim(request.term).toLowerCase(); 1548 const words = term.split(/\s+/).filter(Boolean); 1549 1550 $noResults.hide(300); 1551 $spinner.show(); 1552 1553 const matches = allPages.filter(item => { 1554 const value = item.value.toLowerCase(); 1555 return words.every(w => value.includes(w)); 1556 }); 1557 1558 // No highlighting — return label exactly as-is 1559 const cleaned = matches.map(item => ({ 1560 label: item.label, 1561 value: item.value, 1562 link: item.link 1563 })); 1564 1565 setTimeout(() => { 1566 $spinner.fadeOut(1000); 1567 1568 if (!term || cleaned.length === 0) { 1569 $input.noAutoCloseAutocomplete('close'); 1570 $('#searchResults ul').empty(); 1571 $noResults.show(300); 1572 $searchHelp.hide(300); 1573 $results.removeClass('open').hide(300); 1574 $searchPopoverText.text("Or try searching..."); 1575 } else { 1576 $noResults.hide(300); 1577 $searchHelp.show(300); 1578 $results.addClass('open').show(300); 1579 $searchPopoverText.text("If none of the results above are helpful, you can try searching..."); 1580 } 1581 1582 response(cleaned); 1583 }, 300); 1584 }, 1585 select: function (event, ui) { 1586 window.location.href = ui.item.link; 1587 }, 1588 open: function () {}, 1589 close: function () { 1590 $results.removeClass('open').hide(300); 1591 $searchHelp.hide(300); 1592 $searchPopoverText.text("Or try searching..."); 1593 } 1594 }); 1595 } 1596 1597 initAutocomplete(); 1598 1599 modal.addEventListener('shown.bs.modal', function () { 1600 preloadSitemap(); 1601 1602 $input.val(''); 1603 $input.trigger('input'); 1604 $input.noAutoCloseAutocomplete('close'); 1605 $input.trigger('focus'); 1606 }); 1607 1608 $clearBtn.on('click', function (e) { 1609 e.preventDefault(); 1610 $input.val(''); 1611 $input.trigger('input'); 1612 $input.noAutoCloseAutocomplete('close'); 1613 $noResults.hide(300);
1614 $searchHelp.hide(300); 1615 $results.removeClass('open').hide(300); 1616 if ($input.data("ui-autocomplete")) { 1617 $input.data("ui-autocomplete").term = null; 1618 } 1619 $input.trigger('focus'); 1620 }); 1621 1622 $input.on('input', function () { 1623 updateSearchUI($input.val()); 1624 }); 1625}); 1626</script>
1626 1627 1628 1629 1630 1631 <div class="rz-element-wrapper rz-ada-floaty-btn-element rz-ada-btn-element d-none d-lg-flex"> 1632 <button 1633 type="button" 1634 class="lh-1 d-flex align-items-center justify-content-center" 1635 aria-label="Open accessibility options" 1636 title="Accessibility features"> 1637 <i class="bi bi-universal-access" aria-hidden="true"></i> 1638 <span class="visually-hidden">Accessibility features</span> 1639 </button> 1640 </div><!-- /.rz-element-wrapper --> 1641 1642 1643 <!-- Share Button --> 1644 <div class="rz-element-wrapper rz-share-floaty-btn-element d-none d-lg-flex"> 1645 <button 1646 type="button" 1647 class="lh-1 d-flex align-items-center justify-content-center" 1648 data-bs-toggle="modal" 1649 data-bs-target="#shareModal" 1650 aria-label="Share this page" 1651 title="Share this page"> 1652 <i class="bi bi-share-fill" aria-hidden="true"></i> 1653 <span class="visually-hidden">Share this page</span> 1654 </button> 1655 </div><!-- /.rz-element-wrapper --> 1656 1657 1658 1659 1660 1661 1662 1663
1664<script> 1665RZ.module = 'generic'; 1666RZ.nexturl = "/revize/plugins/zbuilder/v1/website/editforms/floating_alert-editform.jsp"; 1667RZ.img = '<i class="bi bi-exclamation-circle fs-4"></i>'; 1668RZ.caption = ''; 1669RZ.set = 'pageid=9901469b-1554-49a9-bbff-601a121dcf04'; 1670RZ.active = 'html'; 1671if (typeof RZaction != 'undefined') { 1672 var tag = RZaction('editform'); 1673 RZBarAddButton(null, {content: tag, tooltip: "Edit Floating Alert", class: "rz-bar-btn-alert"}); 1674} 1675</script>
1675 1676 1677 1678 1679 1680 1681 1682 <div class="modal fade" 1683 id="event-modal" 1684 tabindex="-1" 1685 role="dialog" 1686 aria-labelledby="modal-event-title" 1687 aria-hidden="true"> 1688 <div id="event-modal-dialog" 1689 class="modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable" 1690 role="document" 1691 style="--bs-modal-width:1000px"> 1692 <div class="modal-content"> 1693 1694 <div class="modal-header align-items-center"> 1695 <div> 1696 <h2 class="h4 modal-subtitle m-0 fs-4 fw-bold">Event Details</h2> 1697 </div> 1698 <button type="button" 1699 class="btn-close mt-0" 1700 data-bs-dismiss="modal" 1701 aria-label="Close"></button> 1702 </div> 1703 1704 <div class="modal-body p-0" 1705 id="modal-event-body"> 1706 <div class="center-center"><div class="rz-btns-container"></div></div> 1707 <div class="row row-cols-lg-2 g-0 mx-0"> 1708 <div class="event-modal-header" 1709 style="min-height:200px"></div><!-- /.event-modal-header for image --> 1710 <div class="event-details d-flex flex-column has-edit-buttons"> 1711 <div class="d-flex align-items-start justify-content-between bg-light p-4"> 1712 <div class="w-100"> 1713 <div class="d-flex align-items-center gap-3"> 1714 <div class="event-border-color" 1715 style="margin-top:3px;width:12px;height:26px;border-radius:100px;align-self:start;"></div> 1716 <div class="w-100"> 1717 <div class="d-flex justify-content-between align-items-center"> 1718 <h3 class="fs-4 fw-bold" id="modal-event-title">City Council Meeting </h3> 1719 <a href="calendar" 1720 class="flex-shrink-0 btn btn-light bg-white border-0 btn-sm" 1721 data-bs-toggle="tooltip" 1722 data-bs-placement="left" 1723 data-bs-title="view Calendar" 1724 data-bs-offset="0,20"> 1725 <i class="bi bi-box-arrow-up-right"></i> 1726 <span class="sr-only">View Calendar</span> 1727 </a> 1728 </div> 1729 1730 <p class="text-muted row row-cols-1 g-2 my-0 p-0 fw-normal lh-sm small"> 1731 <span class="modal-event-date w-max-content"><i class="bi bi-calendar4-event me-2"></i></span> 1732 <span class="modal-event-time"><i class="bi bi-clock me-2"></i></span> 1733 <span class="modal-location w-100"><i class="bi bi-geo-alt me-2"></i></span> 1734 </p> 1735 </div> 1736 </div> 1737 </div> 1738 <button type="button" 1739 class="btn-close bg-white d-none" 1740 data-bs-dismiss="modal" 1741 aria-label="Close"></button> 1742 </div><!-- /.d-flex --> 1743 1744 <div class="d-flex flex-column p-4 my-auto row-gap-4"> 1745 <div class="modal-event-description small"> 1746 <h4 class="h6 fw-bold">Description</h4> 1747 <div id="modal-event-subtitle"></div> 1748 <div id="modal-event-description"> 1749 </div> 1750 </div> 1751 <div style="width: 100%" id="modal-event-location" class="ratio ratio-16x9"></div> 1752 </div><!-- /.d-flex --> 1753 1754 <div class="modal-action-buttons d-flex gap-2 mt-auto mb-4 px-4"> 1755 1756 <a href="#" 1757 class="btn btn-primary border-0" id="modal-event-readmore">Read More</a> 1758 </div><!-- /.modal-action-buttons --> 1759 1760 </div><!-- /.event-details --> 1761 </div><!-- /.row --> 1762 </div><!-- /.modal-body --> 1763 </div><!-- /.modal-content --> 1764 </div> 1765 </div> 1766 1767 <style> 1768 #modal-event-duration{display:none} 1769 .rz-business-inner-map{border:1px solid var(--bs-border-color)!important;border-radius:var(--bs-border-radius)} 1770 </style> 1771<div class="left-bottom position-fixed mb-2 ms-2" id="eNotifyBtn"> 1772 <button type="button" class="btn bg-success-subtle border-0 p-3 fs-4 lh-1 rounded" data-bs-toggle="modal" data-bs-target="#eNotifyModal"> 1773 <span class="position-absolute top-0 start-100 translate-middle badge rounded-circle bg-danger p-2"><span class="visually-hidden">E notify</span></span> 1774 <i class="bi bi-bell text-success-emphasis"></i> 1775 </button> 1776</div> 1777<div class="modal fade e-notify-popup" style="--bs-modal-width:560px;z-index:1100" id="eNotifyModal" tabindex="-1" aria-hidden="true"> 1778 <div class="modal-dialog modal-dialog-centered"> 1779 <div class="modal-content"> 1780 <div class="modal-body p-lg-4"> 1781 <button type="button" class="btn-close top-0 end-0 position-absolute m-3 z-5" data-bs-dismiss="modal" aria-label="Close"></button> 1782 <div class="d-flex"> 1783 <i class="d-flex lh-1 fs-3 rounded-circle bg-success-subtle p-4 border-info text-success-emphasis bi bi-mailbox-flag"></i> 1784 </div> 1785 <div class="d-flex"></div> 1786 <p class="my-3"><span class="fw-bold d-block fs-5">Email notification</span>
1786 Subscribe to receive updates whenever this page changes.</p> 1787 <form action="./enotify/index.php" method="get"> 1788 <label class="form-label w-100 text-start" for="eNotifyEmail">Email</label> 1789 <div class="input-group mb-0"> 1790 <input type="email" class="form-control" placeholder="Your email" aria-label="Recipient’s email" name="email" aria-describedby="button-addon" id="eNotifyEmail"> 1791 <input type="hidden" name="successMessage" value="3"> 1792 <button class="btn btn-success" type="submit" id="button-addon">Subscribe</button> 1793 </div> 1794 <div class="form-text" id="basic-addon4">You may unsubscribe at anytime</div> 1795<div class="d-none"> 1796 <div class="text-center position-relative"><span class="mb-white rounded lh-1 p-3 rounded d-inline-block z-2 position-relative bg-white">or</span><div class="position-absolute top-50 start-0 border-top z-1 w-100"></div> 1797 </div> 1798 <label class="form-label w-100 text-start" for="eNotifyPhone">Phone number</label> 1799 <div class="input-group mb-0"> 1800 <input type="tel" class="form-control" placeholder="123-123-45679" aria-label="Recipient’s phone number" aria-describedby="button-addon" id="eNotifyPhone"> 1801 <button class="btn btn-success" type="button" id="button-addon-2">Subscribe</button> 1802 </div> 1803 <div class="form-text">Messaging rates may apply</div> 1804</div> 1805 </form> 1806 </div> 1807 <div class="modal-footer px-lg-4"> 1808 <button type="button" class="btn btn-dark" data-bs-dismiss="modal" id="canceleNotifyModal">Close</button> 1809 </div> 1810 </div> 1811 </div> 1812</div>
1813<script> 1814document.addEventListener('submit', function (e) { 1815 const form = e.target; 1816 if (!form.matches('#eNotifyModal form')) return; 1817 1818 e.preventDefault(); 1819 1820 const email = form.querySelector('[name="email"]').value.trim(); 1821 if (!email) return; 1822 1823 window.location.href = './enotify/index.php?email=' + encodeURIComponent(email) + '&successMessage=3#post'; 1824}); 1825</script>
1825 1826<div id="share-modal-section"> 1827 <div class="modal fade" id="shareModal" tabindex="-1" role="dialog" aria-labelledby="shareModal"> 1828 <div class="modal-dialog modal-dialog-centered" role="document"> 1829 <div class="modal-content"> 1830 <div class="modal-header border-0 bg-transparent pb-0 px-lg-4 pt-4"> 1831 <div class="w-100 text-center"> 1832 <span class="d-block h5 mb-1 w-100">Share this page</span> 1833 <p class="mb-1">On your favorite social media platform</p> 1834 </div> 1835 <button type="button" class="btn-close position-absolute end-0 top-0 m-3" data-bs-dismiss="modal" aria-label="Close"></button> 1836 </div> 1837 <div class="modal-body p-lg-4"> 1838 <div class="share-btns row m-0 row-cols-md-3 gap-2"> 1839 <a href="#" class="btn btn-primary btn-facebook" target="_blank"> 1840 <i class="fa-brands fs-5 fa-square-facebook"></i> Facebook 1841 </a> 1842 1843 <a href="#" class="btn btn-primary btn-twitter" target="_blank"> 1844 <i class="fa-brands fs-5 fa-x-twitter"></i> x(twitter) 1845 </a> 1846 1847 <a href="#" class="btn btn-primary btn-linkedin" target="_blank"> 1848 <i class="fa-brands fs-5 fa-linkedin"></i> Linkedin 1849 </a> 1850 1851 <a href="#" class="btn btn-primary btn-reddit" target="_blank"> 1852 <i class="fa-brands fs-5 fa-square-reddit"></i> reddit 1853 </a> 1854 <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> 1855 1856 <a href="" class="btn btn-outline-dark w-100 border emailpage"><i class="fa-regular fs-5 fa-envelope"></i> Email Page Link</a> 1857 1858 <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> 1859 1860 </div><!-- /.share-btns --> 1861 1862
1862<script> 1863 $(document).ready(function () { 1864 // Build social share URLs from current page 1865 var pageUrl = window.location.href; 1866 var encodedUrl = encodeURIComponent(pageUrl); 1867 1868 $('.btn-facebook').attr( 1869 'href', 1870 'https://www.facebook.com/sharer/sharer.php?u=' + encodedUrl 1871 ); 1872 1873 $('.btn-twitter').attr( 1874 'href', 1875 'https://twitter.com/intent/tweet?url=' + encodedUrl 1876 ); 1877 1878 $('.btn-linkedin').attr( 1879 'href', 1880 'https://www.linkedin.com/sharing/share-offsite/?url=' + encodedUrl 1881 ); 1882 1883 $('.btn-reddit').attr( 1884 'href', 1885 'https://www.reddit.com/submit?url=' + encodedUrl 1886 ); 1887 1888 // Copy to clipboard 1889 $('.share-copy-link').on('click', function (e) { 1890 e.preventDefault(); 1891 1892 var urlToCopy = $(this).attr('href') || $(this).data('url') || window.location.href; 1893 1894 if (navigator.clipboard && navigator.clipboard.writeText) { 1895 navigator.clipboard 1896 .writeText(urlToCopy) 1897 .then(function () { 1898 new bootstrap.Toast(document.getElementById('coppiedToast')).show(); 1899 }) 1900 .catch(function () { 1901 fallbackCopy(urlToCopy); 1902 }); 1903 } else { 1904 fallbackCopy(urlToCopy); 1905 } 1906 }); 1907 1908 function fallbackCopy(text) { 1909 var $tempInput = $('<input style="position:absolute;left:-9999px;">'); 1910 $('body').append($tempInput); 1911 $tempInput.val(text).select(); 1912 document.execCommand('copy'); 1913 $tempInput.remove(); 1914 new bootstrap.Toast(document.getElementById('coppiedToast')).show(); 1915 } 1916 1917 // Email page link 1918 $('.emailpage').on('click', function (e) { 1919 e.preventDefault(); 1920 1921 var pageUrl = window.location.href; 1922 var subject = encodeURIComponent('Check out this page'); 1923 var body = encodeURIComponent('Hey,\n\nI thought you might find this interesting:\n' + pageUrl); 1924 window.location.href = 'mailto:?subject=' + subject + '&body=' + body; 1925 }); 1926 }); 1927 </script>
1927 1928 1929 <div class="toast-container position-fixed top-0 start-50 translate-middle-x"> 1930 <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"> 1931 <div class="d-flex"> 1932 <div class="toast-body"> 1933 URL copied to clipboard! 1934 </div> 1935 <button type="button" class="btn-close btn-close-white me-2 m-auto" data-bs-dismiss="toast" aria-label="Close"></button> 1936 </div> 1937 </div> 1938 </div> 1939 1940 </div><!-- /.modal-body --> 1941 </div><!-- /.modal-content --> 1942 </div><!-- /.modal-dialog --> 1943 </div><!-- /.modal --> 1944</div><!-- /#modal-section --><link href="https://cdn.jsdelivr.net/gh/lipis/[email protected]/css/flag-icons.min.css" rel="stylesheet" type="text/css" /> 1945<div class="modal fade" id="translateModal" tabindex="-1" aria-hidden="true"> 1946 <div class="modal-dialog modal-sm modal-dialog-centered modal-dialog-scrollable"> 1947 <div class="modal-content"> 1948 <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"> 1949 <input type="search" placeholder="Search languages..." autocomplete="off" class="form-control" id="translatesearch-input"> 1950 <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"> 1951 <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> 1952 </button>
1953 </form> 1954 <div class="modal-body" style="max-height:300px"> 1955 <div class="lang-no-results text-center d-none text-muted small">No matching languages.</div> 1956 <div class="translation-links row row-cols-lg-1"> 1957 <div> 1958 <button class="btn btn-link text-body p-2 text-start w-100 English" data-lang="English" translate="no"> 1959 <span class="fi fi-us me-2"></span><strong>English</strong> 1960 </button> 1961 </div> 1962 <div> 1963 <button class="btn btn-link text-body p-2 text-start w-100 Afrikaans" data-lang="Afrikaans"> 1964 <span class="fi fi-za me-2"></span>Afrikaans 1965 </button> 1966 </div> 1967 <div> 1968 <button class="btn btn-link text-body p-2 text-start w-100 Albanian" data-lang="Albanian"> 1969 <span class="fi fi-al me-2"></span>Albanian 1970 </button> 1971 </div> 1972 <div> 1973 <button class="btn btn-link text-body p-2 text-start w-100 Arabic" data-lang="Arabic"> 1974 <span class="fi fi-sa me-2"></span>Arabic 1975 </button> 1976 </div> 1977 <div> 1978 <button class="btn btn-link text-body p-2 text-start w-100 Armenian" data-lang="Armenian"> 1979 <span class="fi fi-am me-2"></span>Armenian 1980 </button> 1981 </div> 1982 <div> 1983 <button class="btn btn-link text-body p-2 text-start w-100 Azerbaijani" data-lang="Azerbaijani"> 1984 <span class="fi fi-az me-2"></span>Azerbaijani 1985 </button> 1986 </div> 1987 <div> 1988 <button class="btn btn-link text-body p-2 text-start w-100 Basque" data-lang="Basque"> 1989 <span class="fi fi-es me-2"></span>Basque 1990 </button> 1991 </div> 1992 <div> 1993 <button class="btn btn-link text-body p-2 text-start w-100 Belarusian" data-lang="Belarusian"> 1994 <span class="fi fi-by me-2"></span>Belarusian 1995 </button> 1996 </div> 1997 <div> 1998 <button class="btn btn-link text-body p-2 text-start w-100 Bengali" data-lang="Bengali"> 1999 <span class="fi fi-bd me-2"></span>Bengali 2000 </button> 2001 </div> 2002 <div> 2003 <button class="btn btn-link text-body p-2 text-start w-100 Bosnian" data-lang="Bosnian"> 2004 <span class="fi fi-ba me-2"></span>Bosnian 2005 </button> 2006 </div> 2007 <div> 2008 <button class="btn btn-link text-body p-2 text-start w-100 Bulgarian" data-lang="Bulgarian"> 2009 <span class="fi fi-bg me-2"></span>Bulgarian 2010 </button> 2011 </div> 2012 <div> 2013 <button class="btn btn-link text-body p-2 text-start w-100 Catalan" data-lang="Catalan"> 2014 <span class="fi fi-ad me-2"></span>Catalan 2015 </button> 2016 </div> 2017 <div> 2018 <button class="btn btn-link text-body p-2 text-start w-100 Cebuano" data-lang="Cebuano"> 2019 <span class="fi fi-ph me-2"></span>Cebuano 2020 </button> 2021 </div> 2022 <div> 2023 <button class="btn btn-link text-body p-2 text-start w-100 Chinese" data-lang="Chinese (Simplified)"> 2024 <span class="fi fi-cn me-2"></span>Chinese (Simplified) 2025 </button> 2026 </div> 2027 <div> 2028 <button class="btn btn-link text-body p-2 text-start w-100 Chinese" data-lang="Chinese (Traditional)"> 2029 <span class="fi fi-tw me-2"></span>Chinese (Traditional) 2030 </button> 2031 </div> 2032 <div> 2033 <button class="btn btn-link text-body p-2 text-start w-100 Croatian" data-lang="Croatian"> 2034 <span class="fi fi-hr me-2"></span>Croatian 2035 </button> 2036 </div> 2037 <div> 2038 <button class="btn btn-link text-body p-2 text-start w-100 Czech" data-lang="Czech"> 2039 <span class="fi fi-cz me-2"></span>Czech 2040 </button> 2041 </div> 2042 <div> 2043 <button class="btn btn-link text-body p-2 text-start w-100 Danish" data-lang="Danish"> 2044 <span class="fi fi-dk me-2"></span>Danish 2045 </button> 2046 </div> 2047 <div> 2048 <button class="btn btn-link text-body p-2 text-start w-100 Dutch" data-lang="Dutch"> 2049 <span class="fi fi-nl me-2"></span>Dutch 2050 </button> 2051 </div> 2052 <div> 2053 <button class="btn btn-link text-body p-2 text-start w-100 Esperanto" data-lang="Esperanto"> 2054 <span class="fi fi-un me-2"></span>Esperanto 2055 </button> 2056 </div> 2057 <div> 2058 <button class="btn btn-link text-body p-2 text-start w-100
2058Estonian" data-lang="Estonian"> 2059 <span class="fi fi-ee me-2"></span>Estonian 2060 </button> 2061 </div> 2062 <div> 2063 <button class="btn btn-link text-body p-2 text-start w-100 Filipino" data-lang="Filipino"> 2064 <span class="fi fi-ph me-2"></span>Filipino 2065 </button> 2066 </div> 2067 <div> 2068 <button class="btn btn-link text-body p-2 text-start w-100 Finnish" data-lang="Finnish"> 2069 <span class="fi fi-fi me-2"></span>Finnish 2070 </button> 2071 </div> 2072 <div> 2073 <button class="btn btn-link text-body p-2 text-start w-100 French" data-lang="French"> 2074 <span class="fi fi-fr me-2"></span>French 2075 </button> 2076 </div> 2077 <div> 2078 <button class="btn btn-link text-body p-2 text-start w-100 Galician" data-lang="Galician"> 2079 <span class="fi fi-es me-2"></span>Galician 2080 </button> 2081 </div> 2082 <div> 2083 <button class="btn btn-link text-body p-2 text-start w-100 Georgian" data-lang="Georgian"> 2084 <span class="fi fi-ge me-2"></span>Georgian 2085 </button> 2086 </div> 2087 <div> 2088 <button class="btn btn-link text-body p-2 text-start w-100 German" data-lang="German"> 2089 <span class="fi fi-de me-2"></span>German 2090 </button> 2091 </div> 2092 <div> 2093 <button class="btn btn-link text-body p-2 text-start w-100 Greek" data-lang="Greek"> 2094 <span class="fi fi-gr me-2"></span>Greek 2095 </button> 2096 </div> 2097 <div> 2098 <button class="btn btn-link text-body p-2 text-start w-100 Gujarati" data-lang="Gujarati"> 2099 <span class="fi fi-in me-2"></span>Gujarati 2100 </button> 2101 </div> 2102 <div> 2103 <button class="btn btn-link text-body p-2 text-start w-100 Haitian" data-lang="Haitian Creole"> 2104 <span class="fi fi-ht me-2"></span>Haitian Creole 2105 </button> 2106 </div> 2107 <div> 2108 <button class="btn btn-link text-body p-2 text-start w-100 Hausa" data-lang="Hausa"> 2109 <span class="fi fi-ng me-2"></span>Hausa 2110 </button> 2111 </div> 2112 <div> 2113 <button class="btn btn-link text-body p-2 text-start w-100 Hebrew" data-lang="Hebrew"> 2114 <span class="fi fi-il me-2"></span>Hebrew 2115 </button> 2116 </div> 2117 <div> 2118 <button class="btn btn-link text-body p-2 text-start w-100 Hindi" data-lang="Hindi"> 2119 <span class="fi fi-in me-2"></span>Hindi 2120 </button> 2121 </div> 2122 <div> 2123 <button class="btn btn-link text-body p-2 text-start w-100 Hmong" data-lang="Hmong"> 2124 <span class="fi fi-cn me-2"></span>Hmong 2125 </button> 2126 </div> 2127 <div> 2128 <button class="btn btn-link text-body p-2 text-start w-100 Hungarian" data-lang="Hungarian"> 2129 <span class="fi fi-hu me-2"></span>Hungarian 2130 </button> 2131 </div> 2132 <div> 2133 <button class="btn btn-link text-body p-2 text-start w-100 Icelandic" data-lang="Icelandic"> 2134 <span class="fi fi-is me-2"></span>Icelandic 2135 </button> 2136 </div> 2137 <div> 2138 <button class="btn btn-link text-body p-2 text-start w-100 Igbo" data-lang="Igbo"> 2139 <span class="fi fi-ng me-2"></span>Igbo 2140 </button> 2141 </div> 2142 <div> 2143 <button class="btn btn-link text-body p-2 text-start w-100 Indonesian" data-lang="Indonesian"> 2144 <span class="fi fi-id me-2"></span>Indonesian 2145 </button> 2146 </div> 2147 <div> 2148 <button class="btn btn-link text-body p-2 text-start w-100 Irish" data-lang="Irish"> 2149 <span class="fi fi-ie me-2"></span>Irish 2150 </button> 2151 </div> 2152 <div> 2153 <button class="btn btn-link text-body p-2 text-start w-100 Italian" data-lang="Italian"> 2154 <span class="fi fi-it me-2"></span>Italian 2155 </button> 2156 </div> 2157 <div> 2158 <button class="btn btn-link text-body p-2 text-start w-100 Japanese" data-lang="Japanese"> 2159 <span class="fi fi-jp me-2"></span>Japanese 2160 </button> 2161 </div> 2162 <div> 2163 <button class="btn btn-link text-body p-2 text-start w-100 Javanese" data-lang="Javanese"> 2164 <span class="fi fi-id me-2"></span>Javanese 2165 </button> 2166 </div> 2167 <div> 2168 <button class="btn btn-link text-body p-2 text-start w-100 K
2168annada" data-lang="Kannada"> 2169 <span class="fi fi-in me-2"></span>Kannada 2170 </button> 2171 </div> 2172 <div> 2173 <button class="btn btn-link text-body p-2 text-start w-100 Khmer" data-lang="Khmer"> 2174 <span class="fi fi-kh me-2"></span>Khmer 2175 </button> 2176 </div> 2177 <div> 2178 <button class="btn btn-link text-body p-2 text-start w-100 Korean" data-lang="Korean"> 2179 <span class="fi fi-kr me-2"></span>Korean 2180 </button> 2181 </div> 2182 <div> 2183 <button class="btn btn-link text-body p-2 text-start w-100 Lao" data-lang="Lao"> 2184 <span class="fi fi-la me-2"></span>Lao 2185 </button> 2186 </div> 2187 <div> 2188 <button class="btn btn-link text-body p-2 text-start w-100 Latin" data-lang="Latin"> 2189 <span class="fi fi-va me-2"></span>Latin 2190 </button> 2191 </div> 2192 <div> 2193 <button class="btn btn-link text-body p-2 text-start w-100 Latvian" data-lang="Latvian"> 2194 <span class="fi fi-lv me-2"></span>Latvian 2195 </button> 2196 </div> 2197 <div> 2198 <button class="btn btn-link text-body p-2 text-start w-100 Lithuanian" data-lang="Lithuanian"> 2199 <span class="fi fi-lt me-2"></span>Lithuanian 2200 </button> 2201 </div> 2202 <div> 2203 <button class="btn btn-link text-body p-2 text-start w-100 Macedonian" data-lang="Macedonian"> 2204 <span class="fi fi-mk me-2"></span>Macedonian 2205 </button> 2206 </div> 2207 <div> 2208 <button class="btn btn-link text-body p-2 text-start w-100 Malay" data-lang="Malay"> 2209 <span class="fi fi-my me-2"></span>Malay 2210 </button> 2211 </div> 2212 <div> 2213 <button class="btn btn-link text-body p-2 text-start w-100 Maltese" data-lang="Maltese"> 2214 <span class="fi fi-mt me-2"></span>Maltese 2215 </button> 2216 </div> 2217 <div> 2218 <button class="btn btn-link text-body p-2 text-start w-100 Maori" data-lang="Maori"> 2219 <span class="fi fi-nz me-2"></span>Maori 2220 </button> 2221 </div> 2222 <div> 2223 <button class="btn btn-link text-body p-2 text-start w-100 Marathi" data-lang="Marathi"> 2224 <span class="fi fi-in me-2"></span>Marathi 2225 </button> 2226 </div> 2227 <div> 2228 <button class="btn btn-link text-body p-2 text-start w-100 Mongolian" data-lang="Mongolian"> 2229 <span class="fi fi-mn me-2"></span>Mongolian 2230 </button> 2231 </div> 2232 <div> 2233 <button class="btn btn-link text-body p-2 text-start w-100 Nepali" data-lang="Nepali"> 2234 <span class="fi fi-np me-2"></span>Nepali 2235 </button> 2236 </div> 2237 <div> 2238 <button class="btn btn-link text-body p-2 text-start w-100 Norwegian" data-lang="Norwegian"> 2239 <span class="fi fi-no me-2"></span>Norwegian 2240 </button> 2241 </div> 2242 <div> 2243 <button class="btn btn-link text-body p-2 text-start w-100 Persian" data-lang="Persian"> 2244 <span class="fi fi-ir me-2"></span>Persian 2245 </button> 2246 </div> 2247 <div> 2248 <button class="btn btn-link text-body p-2 text-start w-100 Polish" data-lang="Polish"> 2249 <span class="fi fi-pl me-2"></span>Polish 2250 </button> 2251 </div> 2252 <div> 2253 <button class="btn btn-link text-body p-2 text-start w-100 Portuguese" data-lang="Portuguese"> 2254 <span class="fi fi-pt me-2"></span>Portuguese 2255 </button> 2256 </div> 2257 <div> 2258 <button class="btn btn-link text-body p-2 text-start w-100 Punjabi" data-lang="Punjabi"> 2259 <span class="fi fi-in me-2"></span>Punjabi 2260 </button> 2261 </div> 2262 <div> 2263 <button class="btn btn-link text-body p-2 text-start w-100 Romanian" data-lang="Romanian"> 2264 <span class="fi fi-ro me-2"></span>Romanian 2265 </button> 2266 </div> 2267 <div> 2268 <button class="btn btn-link text-body p-2 text-start w-100 Russian" data-lang="Russian"> 2269 <span class="fi fi-ru me-2"></span>Russian 2270 </button> 2271 </div> 2272 <div> 2273 <button class="btn btn-link text-body p-2 text-start w-100 Serbian" data-lang="Serbian"> 2274 <span class="fi fi-rs me-2"></span>Serbian 2275 </button> 2276 </div> 2277 <div> 2278 <button class="btn btn-link text-body p-2 text-start w-100 Slovak" data-lang="Slovak"> 2279 <span class="fi fi-sk me-2"></span>Slovak 2280 </button> 2281 </div> 2282 <div> 2283 <button class="btn btn-link text-body p-2 text-start w-100 Slovenian" data-lang="Slovenian"> 2284 <span class="fi fi-si me-2"></span>Slovenian 2285 </button> 2286 </div> 2287 <div> 2288 <button class="btn btn-link text-body p-2 text-start w-100 Somali" data-lang="Somali"> 2289 <span class="fi fi-so me-2"></span>Somali 2290 </button> 2291 </div> 2292 <div> 2293 <button class="btn btn-link text-body p-2 text-start w-100 Spanish" data-lang="Spanish"> 2294 <span class="fi fi-es me-2"></span>Spanish 2295 </button> 2296 </div> 2297 <div> 2298 <button class="btn btn-link text-body p-2 text-start w-100 Swahili" data-lang="Swahili"> 2299 <span class="fi fi-ke me-2"></span>Swahili 2300 </button> 2301 </div> 2302 <div> 2303 <button class="btn btn-link text-body p-2 text-start w-100 Swedish" data-lang="Swedish"> 2304 <span class="fi fi-se me-2"></span>Swedish 2305 </button> 2306 </div> 2307 <div> 2308 <button class="btn btn-link text-body p-2 text-start w-100 Tamil" data-lang="Tamil"> 2309 <span class="fi fi-in me-2"></span>Tamil 2310 </button> 2311 </div> 2312 <div> 2313 <button class="btn btn-link text-body p-2 text-start w-100 Telugu" data-lang="Telugu"> 2314 <span class="fi fi-in me-2"></span>Telugu 2315 </button> 2316 </div> 2317 <div> 2318 <button class="btn btn-link text-body p-2 text-start w-100 Thai" data-lang="Thai"> 2319 <span class="fi fi-th me-2"></span>Thai 2320 </button> 2321 </div> 2322 <div> 2323 <button class="btn btn-link text-body p-2 text-start w-100 Turkish" data-lang="Turkish"> 2324 <span class="fi fi-tr me-2"></span>Turkish 2325 </button> 2326 </div> 2327 <div> 2328 <button class="btn btn-link text-body p-2 text-start w-100 Ukrainian" data-lang="Ukrainian"> 2329 <span class="fi fi-ua me-2"></span>Ukrainian 2330 </button> 2331 </div> 2332 <div> 2333 <button class="btn btn-link text-body p-2 text-start w-100 Urdu" data-lang="Urdu"> 2334 <span class="fi fi-pk me-2"></span>Urdu 2335 </button> 2336 </div> 2337 <div> 2338 <button class="btn btn-link text-body p-2 text-start w-100 Vietnamese" data-lang="Vietnamese"> 2339 <span class="fi fi-vn me-2"></span>Vietnamese 2340 </button> 2341 </div> 2342 <div> 2343 <button class="btn btn-link text-body p-2 text-start w-100 Welsh" data-lang="Welsh"> 2344 <span class="fi fi-gb me-2"></span>Welsh 2345 </button> 2346 </div> 2347 <div> 2348 <button class="btn btn-link text-body p-2 text-start w-100 Yoruba" data-lang="Yoruba"> 2349 <span class="fi fi-ng me-2"></span>Yoruba 2350 </button> 2351 </div> 2352 <div> 2353 <button class="btn btn-link text-body p-2 text-start w-100 Zulu" data-lang="Zulu"> 2354 <span class="fi fi-za me-2"></span>Zulu 2355 </button> 2356 </div> 2357 </div> 2358 </div> 2359 <div class="modal-footer p-2"> 2360 <div class="lang-search-status text-center small text-muted" aria-l
2360ive="polite" aria-atomic="true"></div> 2361 <button type="button" class="btn btn-sm btn-primary ms-auto" data-bs-dismiss="modal">Close</button> 2362 <button class="btn btn-link text-body p-2 text-start translate-reset" translate="no"> 2363 <i class="fa-solid fa-power-off" aria-hidden="true"></i> 2364 <span class="visually-hidden">Reset Translation</span> 2365 </button> 2366 </div> 2367 </div> 2368 </div> 2369</div> 2370<div id="google-translate" class="d-none"></div>
2371<script> 2372function googleTranslateElementInit() { 2373 new google.translate.TranslateElement( 2374 { pageLanguage: 'en', autoDisplay: false, layout: google.translate.TranslateElement.InlineLayout.SIMPLE }, 2375 'google-translate' 2376 ); 2377} 2378</script>
vendor: 2 bytes, line 2378
2378
2379<script> 2380var translateURL = "//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"; 2381$.getScript(translateURL); 2382 2383function clickLanguage(langText, maxTries, intervalMs) { 2384 langText = (langText || '').trim(); 2385 maxTries = maxTries || 30; 2386 intervalMs = intervalMs || 200; 2387 var tries = 0; 2388 var timer = setInterval(function () { 2389 var $frame = $("iframe.skiptranslate"); 2390 if ($frame.length) { 2391 var doc = $frame.contents(); 2392 var $target = doc.find('span.text').filter(function () { 2393 return $(this).text().trim() === langText; 2394 }).closest('a'); 2395 if (!$target.length) { 2396 $target = doc.find('span.text').filter(function () { 2397 return $(this).text().trim() === 'English'; 2398 }).closest('a'); 2399 } 2400 if ($target.length) { 2401 $target.get(0).click(); 2402 clearInterval(timer); 2403 return; 2404 } 2405 } 2406 tries++; 2407 if (tries >= maxTries) clearInterval(timer); 2408 }, intervalMs); 2409} 2410 2411function getCookie(cname) { 2412 let name = cname + "="; 2413 let ca = document.cookie.split(';'); 2414 for(let i = 0; i < ca.length; i++) { 2415 let c = ca[i]; 2416 while (c.charAt(0) == ' ') c = c.substring(1); 2417 if (c.indexOf(name) == 0) return c.substring(name.length, c.length); 2418 } 2419 return ""; 2420} 2421 2422function sanitizeFlag(code) { 2423 var v = (code || "").toLowerCase().trim(); 2424 if (!v || v === "undefined" || v === "null") return ""; 2425 if (!/^[a-z]{2}$/.test(v)) return ""; 2426 return v; 2427} 2428 2429function applyActiveFromCookie() { 2430 var code = sanitizeFlag(getCookie('lang')) || sanitizeFlag(getCookie('code')) || 'us'; 2431 var $btn = $('.translation-links button').filter(function(){ 2432 var dataCode = ($(this).data('code') || '').toString().toLowerCase(); 2433 if (dataCode && dataCode === code) return true; 2434 var cls = ($(this).find('span[class*="fi-"]').attr('class') || ''); 2435 var m = cls.match(/\bfi-([a-z]{2})\b/i); 2436 return m && m[1].toLowerCase() === code; 2437 }).first(); 2438 if (!$btn.length && code === 'us') $btn = $('.translation-links button[data-lang="English"]').first(); 2439 $('.translation-links button').removeClass('active'); 2440 if ($btn.length) $btn.addClass('active'); 2441} 2442 2443(function initSelectedFlag(){ 2444 var initialCode = sanitizeFlag(getCookie('lang')) || sanitizeFlag(getCookie('code')) || "us"; 2445 $('.selected-flag').attr('class', 'fi fi-' + initialCode + ' selected-flag'); 2446 $('.c-code').text(initialCode); 2447 applyActiveFromCookie(); 2448})(); 2449 2450$(".translation-links button").on("click", function () { 2451 var lang = $(this).data("lang"); 2452 $('.translation-links button').removeClass('active'); 2453 $(this).addClass('active'); 2454 clickLanguage(lang); 2455 var cCode = $(this).data('code'); 2456 if (!cCode) { 2457 var cls = $(this).find('span[class*="fi-"]').attr('class') || ''; 2458 var m = cls.match(/\bfi-([a-z]{2})\b/i); 2459 if (m) cCode = m[1].toLowerCase(); 2460 } 2461 if (!cCode) cCode = 'us'; 2462 $('.selected-flag').attr('class', 'fi fi-' + cCode + ' selected-flag'); 2463 $('.c-code').text(cCode); 2464 document.cookie = 'lang=' + cCode + '; path=/'; 2465 document.cookie = 'code=' + cCode + '; path=/'; 2466 return false; 2467}); 2468 2469var $translateReset = $(".translate-reset");
2470$translateReset.on("keydown click", function (e) { 2471 if (e.keyCode === 13 || e.type === "click") { 2472 clickLanguage('English'); 2473 $('.translation-links button').removeClass('active'); 2474 $('.translation-links button[data-lang="English"]').addClass('active'); 2475 $('.selected-flag').attr('class','fi fi-us selected-flag'); 2476 $('.c-code').text('us'); 2477 document.cookie = 'lang=us; path=/'; 2478 document.cookie = 'code=us; path=/'; 2479 } 2480}); 2481 2482(function($){ 2483 var $form = $('.translate-search'); 2484 var $input = $form.find('input[type="search"]'); 2485 var $list = $('.translation-links'); 2486 var $btns = $list.find('div'); 2487 var $empty = $('.lang-no-results'); 2488 var $status = $('.lang-search-status'); 2489 $form.on('submit', function(e){ e.preventDefault(); }); 2490 function norm(s){ 2491 return (s||'').toString().toLowerCase().normalize('NFD').replace(/[\u0300-\u036f]/g,''); 2492 } 2493 $btns.each(function(){ 2494 var $b = $(this); 2495 var txt = $b.text().trim(); 2496 var lang = ($b.data('lang')||'')+''; 2497 $b.attr('data-search', norm(txt + ' ' + lang)); 2498 }); 2499 function updateStatus(visible, total){ 2500 if ($status.length) $status.text(visible + ' of ' + total + ' languages'); 2501 if ($empty.length) $empty.toggleClass('d-none', visible > 0); 2502 } 2503 var total = $btns.length; 2504 updateStatus(total, total); 2505 function filter(){ 2506 var q = norm($input.val()); 2507 if (!q){ 2508 $btns.removeClass('d-none'); 2509 updateStatus(total, total); 2510 return; 2511 } 2512 var visible = 0; 2513 $btns.each(function(){ 2514 var $b = $(this); 2515 var hay = $b.attr('data-search') || ''; 2516 var match = hay.indexOf(q) !== -1; 2517 $b.toggleClass('d-none', !match); 2518 if (match) visible++; 2519 }); 2520 $btns.filter('.d-none').attr('tabindex', -1); 2521 $btns.not('.d-none'); 2522 updateStatus(visible, total); 2523 } 2524 $input.on('input keyup', filter); 2525})(jQuery); 2526// ADA, Fix Google Translate Inputs 2527function fixGoogleTranslateInputs() { 2528 const inputs = [ 2529 { id: "goog-gt-votingInputSrcLang", label: "Source Language Input" }, 2530 { id: "goog-gt-votingInputTrgLang", label: "Target Language Input" }, 2531 { id: "goog-gt-votingInputSrcText", label: "Source Text Input" }, 2532 { id: "goog-gt-votingInputTrgText", label: "Target Text Input" }, 2533 { id: "goog-gt-votingInputVote", label: "Vote Input" }, 2534 ]; 2535 2536 let allLabelsSet = true; 2537 inputs.forEach((item) => { 2538 const input = document.getElementById(item.id); 2539 if (input) { 2540 input.setAttribute("aria-label", item.label); 2541 } else { 2542 allLabelsSet = false; 2543 } 2544 }); 2545 2546 if (allLabelsSet) { 2547 googleObserver.disconnect(); 2548 } 2549 } 2550 const googleObserver = new MutationObserver((mutationsList, observer) => { 2551 for (let mutation of mutationsList) { 2552 if (mutation.type === "childList") { 2553 fixGoogleTranslateInputs(); 2554 } 2555 } 2556 }); 2557 googleObserver.observe(document.body, { childList: true, subtree: true }); 2558 fixGoogleTranslateInputs(); 2559</script>
vendor: 2 bytes, line 2559
2559
2560<script> 2561// === prevent translation on certain elements === 2562var NO_TRANSLATE_SELECTORS = [ 2563 '.material-icons', 2564 '.main-logo', 2565 '.nav-label', 2566 '.mini-calendar', 2567 '.rz-address-wrapper', 2568 '[data-no-translate]', 2569 'a[href^="mailto:"]' 2570]; 2571 2572function applyNoTranslate() { 2573 try { 2574 NO_TRANSLATE_SELECTORS.forEach(function (sel) { 2575 var $els = $(sel); 2576 if ($els.length) { 2577 $els 2578 .addClass('notranslate') 2579 .attr('translate', 'no') 2580 .attr('lang', $els.attr('lang') || 'en'); 2581 } 2582 }); 2583 } catch (e){ 2584 2585 } 2586} 2587 2588$(applyNoTranslate); 2589var noTranslateObserver = new MutationObserver(function () { 2590 applyNoTranslate(); 2591}); 2592noTranslateObserver.observe(document.documentElement, { childList: true, subtree: true }); 2593</script>
2593 2594<div class="offcanvas offcanvas-end offcanvas-business-item" tabindex="-1" id="catalogueDetails" aria-modal="true"> 2595 <div class="offcanvas-body p-0"> 2596 <div class="ratio ratio-16x9 mb-4 featured-image-wrap z-0" style="background-image: url('');"></div> 2597 <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> 2598 <h4 class="p-2 px-md-4 catalogue-title">Catalogue title</h4> 2599 <ul class="nav nav-underline justify-content-start border-bottom m-0 px-4" id="businessTabs" role="tablist"> 2600 <li class="nav-item m-0 " role="presentation"> 2601 <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> 2602 </li> 2603 <li class="nav-item m-0" role="presentation"> 2604 <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> 2605 </li> 2606 <li class="nav-item m-0 d-none" role="presentation"> 2607 <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> 2608 </li> 2609 </ul> 2610 <div id="business-details"> 2611 <div class="tab-content" id="businessTabContent"> 2612 <div class="tab-pane p-4 fade active show" id="overview-tab-pane" role="tabpanel" tabindex="0"> 2613 <div class="row row-cols-3 row-cols-md-3 py-lg-3 px-2 catalogue-helpful-links"> 2614 <p class="d-flex flex-column text-center m-0"> 2615 <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> 2616 </p> 2617 <p class="d-flex flex-column text-center m-0 catalogue-map-link"> 2618 <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> 2619 </p> 2620 <!-- <p class="d-flex flex-column text-center m-0"> 2621 <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> 2622 </p> --> 2623 <p class="d-flex flex-column text-center m-0"> 2624 <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> 2625 </p> 2626 </div><!-- /.d-flex --> 2627 <hr class="mt-0 mb-4"> 2628 <div class="row row-cols-1 row-cols-md-3 catalogue-contacts gap-md-3"> 2629 </div><!-- /.row --> 2630 <table class="table catalogue-hours"> 2631 <thead> 2632 <tr> 2633 <th scope="col" style="width:160px" class="ps-0 small text-muted">Days</th> 2634 <th scope="col" class="small text-muted">Hours</th> 2635 </tr> 2636 </thead> 2637 2638 <tbody class="table-group-divider"> 2639 <tr> 2640 <th scope="row" class="ps-0 text-nowrap">Sunday</th> 2641 <td></td> 2642 </tr> 2643 <tr> 2644 <th scope="row" class="ps-0 text-nowrap">Monday</th> 2645 <td></td> 2646 </tr> 2647 <tr> 2648 <th scope="row" class="ps-0 text-nowrap">Tuesday</th> 2649 <td></td> 2650 </tr> 2651 <tr> 2652 <th scope="row" class="ps-0 text-nowrap">Wednesday</th> 2653 <td></td> 2654 </tr> 2655 <tr> 2656 <th scope="row" class="ps-0 text-nowrap">Thursday</th> 2657 <td></td> 2658 </tr> 2659 <tr> 2660 <th scope="row" class="ps-0 text-nowrap">Friday</th> 2661 <td></td> 2662 </tr> 2663 <tr> 2664 <th scope="row" class="ps-0 text-nowrap">Saturday</th> 2665 <td></td> 2666 </tr> 2667 </tbody> 2668 </table> 2669 </div><!-- /.tab-pane --> 2670 <div class="tab-pane p-4 fade" id="about-tab-pane" role="tabpanel" tabindex="0"> 2671 </div><!-- /.tab-pane --> 2672 <div class="tab-pane p-4 fade" id="photos-tab-pane" role="tabpanel" tabindex="0"> 2673 <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> 2674 <div class="rz-gallery-wrap"> 2675
2676 <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;"> 2677 2678 <!-- <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2679 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2680 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2681 <i class="bi bi-arrows-angle-expand lh-1"></i> 2682 </span> 2683 </div> 2684 2685 <div data-src="_assets_/images/no-image-slider.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2686 <img src="_assets_/images/no-image-slider.jpg" class="w-100" alt=""> 2687 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2688 <i class="bi bi-arrows-angle-expand lh-1"></i> 2689 </span> 2690 </div> 2691 2692 <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2693 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2694 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2695 <i class="bi bi-arrows-angle-expand lh-1"></i> 2696 </span> 2697 </div> 2698 2699 <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2700 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2701 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2702 <i class="bi bi-arrows-angle-expand lh-1"></i> 2703 </span> 2704 </div> 2705 2706 <div data-src="_assets_/images/no-image-slider-2.jpg" class="rz-gallery-image" data-lg-size="3000-2000" style="position: absolute;"> 2707 <img src="_assets_/images/no-image-slider-2.jpg" class="w-100" alt=""> 2708 <span class="rz-zoom cursor-pointer z-index-1 bg-white fs-3 lh-1 p-4 rounded-circle"> 2709 <i class="bi bi-arrows-angle-expand lh-1"></i> 2710 </span> 2711 </div> --> 2712 2713 </div><!-- #lightgallery --> 2714 </div><!-- /.rz-gallery-wrap --> 2715 </div><!-- /.tab-pane --> 2716 </div><!-- /.tab-content --> 2717 </div><!-- /#business-details --> 2718 </div><!-- /.offcanvas-body --> 2719</div> 2720 2721
2722<script> 2723 2724var catalogueDetailsMap = { modal: null }; 2725var catalogueJSONData = null; 2726 2727if (typeof indexByIdOrRid !== 'function') { 2728 function indexByIdOrRid(data){ 2729 if (!data) return {}; 2730 if (!Array.isArray(data)) return data; 2731 return data.reduce((m, item) => { 2732 if (!item) return m; 2733 const key = item.rid ?? item.id; 2734 if (key != null) m[String(key)] = item; 2735 return m; 2736 }, {}); 2737 } 2738} 2739 2740function openCatalogueDetails(rid) { 2741 if (!catalogueDetailsMap.modal || !catalogueJSONData) return; 2742 2743 rid = String(rid); 2744 var cRecord = catalogueJSONData[rid]; 2745 if (!cRecord) return; 2746 2747 var m = catalogueDetailsMap; 2748 2749 var parsedOptions = cRecord.options; 2750 if (typeof parsedOptions === 'string') { 2751 try { parsedOptions = JSON.parse(parsedOptions); } catch(e){ parsedOptions = {}; } 2752 } 2753 parsedOptions = parsedOptions || {}; 2754 2755 var imgURL = (cRecord.image || '').trim(); 2756 if (imgURL && !imgURL.endsWith('/')) { 2757 m.img && m.img.classList.remove('d-none'); 2758 if (m.img) { 2759 m.img.style.backgroundImage = "url('" + imgURL + "')"; 2760 } 2761 } else { 2762 if (m.img) { 2763 m.img.style.backgroundImage = ''; 2764 m.img.classList.add('d-none'); 2765 } 2766 } 2767 2768 // Title 2769 if (m.title) { 2770 var rawTitle = cRecord.title || cRecord.name || ""; 2771 m.title.textContent = decodeHtmlEntities(rawTitle); 2772 } 2773 2774 if (m.helpful) { 2775 var links = m.helpful.querySelectorAll("a"); 2776 if (links.length) { 2777 var el = links[0]; 2778 var webUrl = (parsedOptions.website_url || "").trim(); 2779 var webText = (parsedOptions.website_text || "Visit Website").trim(); 2780 if (webUrl && webUrl !== "#") { 2781 el.href = webUrl; 2782 el.target = "_blank"; 2783 var span = el.querySelector("span"); 2784 if (span) span.innerText = webText; 2785 el.parentElement && el.parentElement.classList.remove("d-none"); 2786 } else { 2787 el.href = ""; 2788 el.parentElement && el.parentElement.classList.add("d-none"); 2789 } 2790 } 2791 } 2792 2793 if (m.maplink) { 2794 var mapAs = m.maplink.querySelectorAll("a"); 2795 if (mapAs.length) { 2796 var mapEl = mapAs[0]; 2797 var addr = (parsedOptions.val_address || "").trim(); 2798 if (addr) { 2799 var encoded = encodeURIComponent(addr).replace(/%20/g, "+"); 2800 mapEl.href = "https://www.google.com/maps/search/?api=1&query=" + encoded; 2801 mapEl.target = "_blank"; 2802 mapEl.parentElement && mapEl.parentElement.classList.remove('d-none'); 2803 } else { 2804 mapEl.href = ""; 2805 mapEl.parentElement && mapEl.parentElement.classList.add('d-none'); 2806 } 2807 } 2808 } 2809 2810 if (m.contacts) { 2811 m.contacts.innerHTML = ""; 2812 if (Array.isArray(parsedOptions.contacts)) {
2813 parsedOptions.contacts.forEach(function(contact) { 2814 var newAddress = document.createElement("address"); 2815 newAddress.innerHTML = '<strong class="small text-muted">' + (contact.val_header||'') + '</strong><br>'; 2816 2817 var inner = contact.val_text || ''; 2818 if (contact.val_href) { 2819 try { 2820 var href = contact.val_href; 2821 var isSelf = href.startsWith('tel:') || href.startsWith('mailto:') || href.startsWith(location.origin); 2822 inner = '<a href="'+href+'" target="'+(isSelf?'_self':'_blank')+'">'+ inner +'</a>'; 2823 } catch(e) { /* ignore bad href */ } 2824 } 2825 newAddress.innerHTML += inner; 2826 m.contacts.append(newAddress); 2827 }); 2828 } 2829 } 2830 2831 if (m.hours) { 2832 const table = m.hours; 2833 const dayKeys = [ 2834 'val_sunday','val_monday','val_tuesday','val_wednesday', 2835 'val_thursday','val_friday','val_saturday' 2836 ]; 2837 2838 const tds = Array.from(table.querySelectorAll('tbody td')); 2839 let hasAny = false; 2840 2841 tds.forEach((td, i) => { 2842 const val = parsedOptions.hours && parsedOptions.hours[dayKeys[i]]; 2843 const v = (val || '').trim(); 2844 td.textContent = v; 2845 if (v) hasAny = true; 2846 }); 2847 2848 table.classList.toggle('d-none', !hasAny); 2849 } 2850 2851 if (m.detail) { 2852 const pane = m.detail; 2853 const tabPane = pane.closest('.tab-pane'); 2854 const tabLink = tabPane ? document.querySelector(`[data-bs-target="#${tabPane.id}"]`) : null; 2855 2856 pane.innerHTML = "Loading..."; 2857 2858 fetch('catalogue/' + encodeURIComponent(rid) + '.php?display=json') 2859 .then(res => res.json()) 2860 .then(data => { 2861 const html = (data && data.details) ? data.details.trim() : ""; 2862 2863 pane.innerHTML = html || ""; 2864 2865 const isEmpty = !html; 2866 if (tabPane) tabPane.classList.toggle('d-none', isEmpty); 2867 if (tabLink) tabLink.classList.toggle('d-none', isEmpty); 2868 }) 2869 .catch(() => { 2870 pane.innerHTML = ""; 2871 if (tabPane) tabPane.classList.add('d-none'); 2872 if (tabLink) tabLink.classList.add('d-none'); 2873 }); 2874 } 2875 2876 // Gallery #TODO) 2877 if (m.gallery) m.gallery.innerHTML = ""; 2878 2879 try { 2880 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 2881 } catch(e) { 2882 console.error('Offcanvas show failed:', e); 2883 } 2884 2885 if (window.pushOcState) pushOcState('catalogueDetails', rid); 2886} 2887 2888document.addEventListener('DOMContentLoaded', function() { 2889 var modal = document.querySelector("#catalogueDetails"); 2890 if (!modal) return; 2891 2892 catalogueDetailsMap = { 2893 modal: modal, 2894 img: modal.querySelector(".featured-image-wrap"), 2895 title: modal.querySelector(".offcanvas-body .catalogue-title"), 2896 helpful: modal.querySelector(".catalogue-helpful-links"), 2897 maplink: modal.querySelector(".catalogue-map-link"), 2898 contacts: modal.querySelector(".catalogue-contacts"), 2899 hours: modal.querySelector(".catalogue-hours"), 2900 detail: modal.querySelector("#about-tab-pane"), 2901 gallery: modal.querySelector("#businessDetailslightgallery"), 2902 }; 2903 2904 fetch('_includes_/published/catalogue.json') 2905 .then(res => res.json()) 2906 .then(data => { catalogueJSONData = indexByIdOrRid(data); }) 2907 .then(() => { if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('catalogueDetails'); }) 2908 .catch((e) => { console.error('catalogue.json load failed', e); catalogueJSONData = {}; }); 2909}); 2910</script>
2910<div class="offcanvas offcanvas-bottom offcanvas-news-item mx-auto rounded-0 bg-body" tabindex="-1" id="newsDetails" style="--bs-offcanvas-height:95vh;"> 2911<div class="progress rounded-0" role="progressbar" aria-label="Scroll Progress" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100" style="height: 8px"> 2912 <div class="progress-bar bg-secondary"></div></div> 2913 2914 <div class="offcanvas-header border-bottom fw-bold"> 2915 Article Details 2916 <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button> 2917 </div> 2918 <div class="offcanvas-body pt-0"> 2919 <div class="container p-0"> 2920 <div class="col-lg-9 mx-auto"> 2921 2922 <div class="sticky-top"> 2923 <div class="d-flex small bg-body flex-wrap align-items-center py-3"> 2924 <div class="d-flex me-3"> 2925 <div class="d-flex post-info-wrap"> 2926 <p class="post-published m-0"> 2927 <span class="opacity-75">Published:</span> 2928 <time></time> <i class="bi bi-dot d-inline-block"></i> 2929 <span id="eta"></span> 2930 </p><!-- /.post-published --> 2931 </div><!-- /.post-info-wrap --> 2932 </div><!-- /.d-flex --> 2933 2934 <div class="post-btns-wrap ms-auto"> 2935 <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"> 2936 <i class="bi bi-share align-middle" aria-hidden="true"></i> 2937 <span class="visually-hidden">Share</span> 2938 </button> 2939 </div><!-- /.post-btns-wrap --> 2940 2941 </div><!-- /.d-flex --> 2942 </div><!-- /.sticky-top --> 2943 2944 <div class="featured-image-wrapper"></div> 2945 2946 <div class="p-lg-2 px-md-5"> 2947 <h3 class="mb-3 h3">Article Title</h3> 2948 <nav aria-label="breadcrumb" class="breadcrumb mb-3"> 2949 <ul> 2950 <li class="breadcrumb-item"><a href="./news">Articles</a> 2951 <li class="breadcrumb-item active text-truncate" aria-current="page"></li> 2952 </ul> 2953 </nav> 2954 <div id="news-full-details" class="article-full-details"></div><!-- /#post-details --> 2955 </div><!-- /.p-lg-2 --> 2956 </div><!-- /.col-lg-9 --> 2957 </div><!-- /.container --> 2958 </div><!-- /.offcanvas-body --> 2959</div><!-- /.offcanvas --> 2960
2961<script> 2962var newsDetailsMap = { modal: null }; 2963var newsJSONData = null; 2964 2965if (typeof indexByIdOrRid !== 'function') { 2966 function indexByIdOrRid(data){ 2967 if (!data) return {}; 2968 if (!Array.isArray(data)) return data; 2969 return data.reduce((m, item) => { 2970 if (!item) return m; 2971 const key = item.rid ?? item.id; 2972 if (key != null) m[String(key)] = item; 2973 return m; 2974 }, {}); 2975 } 2976} 2977 2978function hasImg(url) { 2979 if (!url) return false; 2980 var s = String(url).trim(); 2981 if (!s) return false; 2982 if (/^(null|undefined|none|n\/a)$/i.test(s)) return false; 2983 return true; 2984} 2985 2986/* global helper: decode ✨ & etc */ 2987window.decodeHtmlEntities = window.decodeHtmlEntities || function (str) { 2988 if (str == null) return ''; 2989 const ta = document.createElement('textarea'); 2990 ta.innerHTML = String(str); 2991 return ta.value; 2992}; 2993 2994function setFeaturedImage(url) { 2995 var m = newsDetailsMap; 2996 var modal = m.modal; 2997 if (!modal) return; 2998 2999 var wrap = modal.querySelector(".featured-image-wrapper"); 3000 if (!wrap) return; 3001 3002 if (hasImg(url)) { 3003 wrap.className = "featured-image-wrapper ratio ratio-16x9 mb-4 featured-image-wrap rounded"; 3004 wrap.style.backgroundImage = "url('" + url + "')"; 3005 m.img = wrap; 3006 } else { 3007 wrap.className = "featured-image-wrapper"; 3008 wrap.style.backgroundImage = ""; 3009 m.img = null; 3010 } 3011} 3012 3013function openNewsDetails(rid) {
3014 if (!newsDetailsMap.modal || !newsJSONData) return; 3015 3016 rid = String(rid); 3017 var cRecord = newsJSONData[rid]; 3018 if (!cRecord) return; 3019 3020 var m = newsDetailsMap; 3021 3022 setFeaturedImage(cRecord.image); 3023 3024 const titleDecoded = decodeHtmlEntities(cRecord.title || ""); 3025 3026 m.title.textContent = titleDecoded; 3027 m.date.textContent = cRecord.date || cRecord.posted || ""; 3028 m.breadcrumb.textContent = titleDecoded; 3029 3030 m.detail.innerHTML = "Loading..."; 3031 fetch('articles/' + encodeURIComponent(rid) + '.php?display=json') 3032 .then(res => res.json()) 3033 .then(newsData => { m.detail.innerHTML = newsData.details || ""; }) 3034 .catch(() => { m.detail.innerHTML = ""; }); 3035 3036 try { 3037 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 3038 } catch(e) { 3039 console.error('Offcanvas show failed:', e); 3040 } 3041 3042 if (window.pushOcState) pushOcState('newsDetails', rid); 3043} 3044 3045document.addEventListener('DOMContentLoaded', function() { 3046 var modal = document.querySelector("#newsDetails"); 3047 if (!modal) return; 3048 3049 newsDetailsMap = { 3050 modal: modal, 3051 img: modal.querySelector(".featured-image-wrapper"), 3052 title: modal.querySelector("h3.h3"), 3053 date: modal.querySelector(".post-published>time"), 3054 breadcrumb: modal.querySelector(".breadcrumb-item.active"), 3055 detail: modal.querySelector("#news-full-details") 3056 }; 3057 3058 // Scroll progress bar 3059 var scrollTarget = modal.querySelector('.offcanvas-body'); 3060 var progressBar = modal.querySelector('.progress-bar'); 3061 var progressOuter = modal.querySelector('.progress[role="progressbar"]'); 3062 3063 function updateScrollProgress() { 3064 if (!scrollTarget || !progressBar) return; 3065 3066 var maxScroll = scrollTarget.scrollHeight - scrollTarget.clientHeight; 3067 var current = scrollTarget.scrollTop || 0; 3068 3069 var pct = 0; 3070 if (maxScroll > 0) { 3071 pct = (current / maxScroll) * 100; 3072 } 3073 pct = Math.min(Math.max(pct, 0), 100); 3074 3075 progressBar.style.width = pct + '%'; 3076 if (progressOuter) { 3077 progressOuter.setAttribute('aria-valuenow', Math.round(pct)); 3078 } 3079 } 3080 3081 if (scrollTarget && progressBar) { 3082 scrollTarget.addEventListener('scroll', updateScrollProgress, { passive: true }); 3083 3084 modal.addEventListener('show.bs.offcanvas', function () { 3085 if (!scrollTarget) return; 3086 scrollTarget.scrollTop = 0; 3087 updateScrollProgress(); 3088 }); 3089 3090 updateScrollProgress(); 3091 } 3092 3093 fetch('_includes_/published/news_list.json') 3094 .then(res => res.json()) 3095 .then(data => { newsJSONData = indexByIdOrRid(data); }) 3096 .then(() => { if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('newsDetails'); }) 3097 .catch((e) => { console.error('news_list.json load failed', e); newsJSONData = {}; }); 3098}); 3099</script>
3099<div class="offcanvas offcanvas-end offcanvas-job-item" 3100 tabindex="-1" 3101 id="jobDetails"> 3102 <div class="offcanvas-header bg-light p-4 px-lg-5"> 3103 <h3 class="offcanvas-title fs-4">Job post</h3> 3104 <button type="button" 3105 class="btn-close" 3106 data-bs-dismiss="offcanvas" 3107 aria-label="Close"></button> 3108 </div> 3109 <div class="offcanvas-body p-0"> 3110 3111 <div class="p-4 p-lg-5"> 3112 <div class="d-flex align-items-center justify-content-between"> 3113 <div> 3114 <p class="h3 m-0 fs-3 d-flex flex-column"> 3115 <small class="fs-6 text-muted fw-bold">Position</small> 3116 </p> 3117 <h4 class="job-position">Job Position</h4> 3118 </div> 3119 <span class="btn btn-link btn-lg ms-auto d-none" 3120 id="saveItemBtn" 3121 tabindex="0"> 3122 <i class="bi bi-heart text-danger ms-auto cursor-pointer"></i> 3123 </span> 3124 <span class="btn btn-link btn-lg p-0" 3125 data-bs-toggle="modal" 3126 data-bs-target="#shareModal" 3127 tabindex="0"> 3128 <i class="bi bi-share text-body"></i> 3129 </span> 3130 </div> 3131 </div><!-- /.p-4 --> 3132 3133 <div class="job-details"> 3134 <div class="bg-light p-4 p-lg-5"> 3135 <div class="row row-cols-1 row-cols-sm-2 g-2 attribute-callouts"></div> 3136 3137 <a href="#" 3138 class="btn btn-primary mt-lg-4 apply-link"> 3139 Apply Now<i class="bi bi-box-arrow-up-right ms-2"></i> 3140 </a> 3141 </div><!-- /.bg-light --> 3142 3143 <div class="bg-white p-4 p-lg-5"> 3144 <!-- <p class="small bg-success-subtle text-success-emphasis p-1 px-2 mb-2 rounded-pill d-inline-flex"> 3145 <small><i class="bi bi-exclamation-circle"></i> Urgent Hire</small> 3146 </p> --> 3147 <p class="fs-4"></p> 3148 <div class="job-full-details"></div> 3149 </div><!-- /.bg-white --> 3150 </div><!-- /#job-details --> 3151 </div><!-- /.offcanvas-body --> 3152</div><!-- /.offcanvas --> 3153 3154<div class="toast align-items-center text-bg-success border-0 position-fixed bottom-0 end-0 m-4" 3155 id="savedItem" 3156 role="alert" 3157 aria-live="assertive" 3158 aria-atomic="true"> 3159 <div class="d-flex"> 3160 <div class="toast-body"> 3161 Added to your favorites! 3162 <a href="" class="text-light">See all here</a> 3163 </div> 3164 <button type="button" 3165 class="btn-close btn-close-white me-2 m-auto" 3166 data-bs-dismiss="toast" 3167 aria-label="Close"></button> 3168 </div> 3169</div><!-- /.toast --> 3170
3171<script> 3172var jobDetailsMap = { modal: null }; 3173var jobJSONData = null; 3174 3175if (typeof indexByIdOrRid !== 'function') { 3176 function indexByIdOrRid(data){ 3177 if (!data) return {}; 3178 if (!Array.isArray(data)) return data; 3179 return data.reduce((m, item) => { 3180 if (!item) return m; 3181 const key = item.rid ?? item.id; 3182 if (key != null) m[String(key)] = item; 3183 return m; 3184 }, {}); 3185 } 3186} 3187 3188function openJobDetails(rid) { 3189 if (!jobDetailsMap.modal || !jobJSONData) return; 3190 3191 rid = String(rid); 3192 var cRecord = jobJSONData[rid]; 3193 if (!cRecord) return; 3194 3195 var m = jobDetailsMap; 3196 var parsedOptions = cRecord.options || {}; 3197 3198 if (m.titleB) m.titleB.textContent = decodeHtmlEntities(cRecord.title || ""); 3199 3200 if (m.callouts) { 3201 m.callouts.innerHTML = ""; 3202 if (Array.isArray(parsedOptions.attributes)) { 3203 parsedOptions.attributes.forEach(function(attr) { 3204 var header = attr.val_header || ""; 3205 var text = attr.val_text || ""; 3206 var icon = parseIconClass(attr.val_icon) || { class: "bi bi-info-circle", ligature: "" }; 3207 var wrap = document.createElement("div"); 3208 wrap.innerHTML = ` 3209 <p class="d-flex gap-3 align-items-center my-2 my-lg-3"> 3210 <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> 3211 <span><strong class="small text-muted lh-1">${header}</strong><br>${text}</span> 3212 </p>`; 3213 m.callouts.append(wrap.firstElementChild); 3214 }); 3215 } 3216 3217 var posted = cRecord.posted || ""; 3218 if (posted) { 3219 var pWrap = document.createElement('div'); 3220 pWrap.innerHTML = ` 3221 <p class="d-flex gap-3 align-items-center"> 3222 <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> 3223 <span><strong class="small text-muted lh-1">Posted</strong><br>${posted}</span> 3224 </p>`; 3225 m.callouts.append(pWrap.firstElementChild); 3226 } 3227 } 3228 3229 if (m.apply) { 3230 var btnURL = (parsedOptions.website_url || "").trim(); 3231 var btnText = (parsedOptions.website_text || "Learn More").trim(); 3232 3233 if (btnURL && btnURL !== "#") { 3234 m.apply.classList.remove("d-none"); 3235 m.apply.setAttribute("href", btnURL); 3236 m.apply.setAttribute("target", "_blank"); 3237 m.apply.innerHTML = btnText + '<i class="bi bi-box-arrow-up-right ms-2"></i>'; 3238 } else { 3239 m.apply.classList.add("d-none"); 3240 m.apply.setAttribute("href", "#"); 3241 } 3242 } 3243 3244 if (m.detail) { 3245 const pane = m.detail; 3246 const tabPane = pane.closest('.tab-pane'); 3247 const tabLink = tabPane ? document.querySelector(`[data-bs-target="#${tabPane.id}"]`) : null; 3248 3249 pane.innerHTML = "Loading..."; 3250 3251 fetch('jobs/' + encodeURIComponent(rid) + '.php?display=json') 3252 .then(res => res.json()) 3253 .then(data => { 3254 const html = (data && data.details) ? data.details.trim() : ""; 3255 3256 pane.innerHTML = html || ""; 3257 3258 const isEmpty = !html; 3259 if (tabPane) tabPane.classList.toggle('d-none', isEmpty); 3260 if (tabLink) tabLink.classList.toggle('d-none', isEmpty); 3261 }) 3262 .catch(() => { 3263 pane.innerHTML = ""; 3264 if (tabPane) tabPane.classList.add('d-none'); 3265 if (tabLink) tabLink.classList.add('d-none'); 3266 }); 3267 } 3268 3269 try { 3270 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 3271 } catch(e) { 3272 console.error('Offcanvas show failed:', e); 3273 } 3274 3275 if (window.pushOcState) pushOcState('jobDetails', rid); 3276} 3277 3278document.addEventListener('DOMContentLoaded', function() { 3279 var modal = document.querySelector("#jobDetails"); 3280 if (!modal) return; 3281 3282 jobDetailsMap = { 3283 modal: modal, 3284 titleB: modal.querySelector(".job-position"), 3285 callouts: modal.querySelector(".attribute-callouts"), 3286 detail: modal.querySelector(".job-full-details"), 3287 apply: modal.querySelector(".apply-link") 3288 }; 3289 3290 fetch('_includes_/published/job_list.json') 3291 .then(res => res.json()) 3292 .then(data => { jobJSONData = indexByIdOrRid(data); }) 3293 .then(() => { if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('jobDetails'); }) 3294 .catch((e) => { console.error('job_list.json load failed', e); jobJSONData = {}; }); 3295}); 3296 3297</script>
3297 3298<div class="offcanvas offcanvas-end offcanvas-bid-item" 3299 tabindex="-1" 3300 id="bidDetails"> 3301 <div class="offcanvas-header bg-light p-4 px-lg-5"> 3302 <h3 class="offcanvas-title fs-4">Bid details</h3> 3303 <button type="button" 3304 class="btn-close" 3305 data-bs-dismiss="offcanvas" 3306 aria-label="Close"></button> 3307 </div> 3308 <div class="offcanvas-body p-0"> 3309 3310 <div class="p-4 p-lg-5"> 3311 <div class="d-flex align-items-center justify-content-between"> 3312 <div> 3313 <p class="mb-2"> 3314 <span class="small">Status:</span> <span class="badge bid-status d-none d-inline-flex"></span> 3315 </p> 3316 <h4 class="bid-title">Bid Title</h4> 3317 </div> 3318 <span class="btn btn-link btn-lg p-0" 3319 data-bs-toggle="modal" 3320 data-bs-target="#shareModal" 3321 tabindex="0"> 3322 <i class="bi bi-share text-body"></i> 3323 </span> 3324 </div> 3325 </div> 3326 3327 <div class="bid-details"> 3328 <div class="bg-light p-4 p-lg-5"> 3329 <div class="row row-cols-1 row-cols-sm-2 g-2 start-end-dates"> 3330 <p class="d-flex gap-3 align-items-center my-2 my-lg-3 bid-start-wrap"> 3331 <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> 3332 <span> 3333 <strong class="small text-muted lh-1">Start date</strong><br> 3334 Start: <span class="bid-start-date"></span> 3335 </span> 3336 </p> 3337 3338 <p class="d-flex gap-3 align-items-center my-2 my-lg-3 bid-end-wrap"> 3339 <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> 3340 <span> 3341 <strong class="small text-muted lh-1">End date</strong><br> 3342 End: <span class="bid-end-date"></span> 3343 </span> 3344 </p> 3345 </div> 3346 <a href="#" 3347 class="btn btn-primary mt-3 mt-lg-4 apply-link"> 3348 Apply Now<i class="bi bi-box-arrow-up-right ms-2"></i> 3349 </a> 3350 </div> 3351 3352 <div class="bg-white p-4 p-lg-5"> 3353 <p class="fs-4"></p> 3354 <div class="bid-full-details"></div> 3355 </div> 3356 </div> 3357 </div> 3358</div> 3359
3360<script> 3361var bidDetailsMap = { modal: null }; 3362var bidJSONData = null; 3363 3364if (typeof indexByIdOrRid !== 'function') { 3365 function indexByIdOrRid(data){ 3366 if (!data) return {}; 3367 if (!Array.isArray(data)) return data; 3368 return data.reduce((m, item) => { 3369 if (!item) return m; 3370 const key = item.rid ?? item.id; 3371 if (key != null) m[String(key)] = item; 3372 return m; 3373 }, {}); 3374 } 3375} 3376 3377function fmtDate(iso) { 3378 if (!iso) return ""; 3379 var s = String(iso).trim(); 3380 if (!s) return ""; 3381 var d = new Date(s.slice(0, 10) + "T00:00:00"); 3382 if (Number.isNaN(d.getTime())) return s; 3383 return d.toLocaleDateString(undefined, { year: "numeric", month: "short", day: "numeric" }); 3384} 3385 3386function statusClass(status) { 3387 var s = String(status || "").trim().toLowerCase(); 3388 if (s === "open") return "text-bg-success"; 3389 if (s === "closed") return "text-bg-danger"; 3390 if (s === "awarded") return "text-bg-primary"; 3391 if (s === "canceled" || s === "cancelled") return "text-bg-dark"; 3392 if (s === "pending") return "text-bg-secondary"; 3393 return "text-bg-secondary"; 3394} 3395 3396function openBidDetails(rid) { 3397 if (!bidDetailsMap.modal || !bidJSONData) return false; 3398 3399 rid = String(rid); 3400 var cRecord = bidJSONData[rid]; 3401 if (!cRecord) return false; 3402 3403 var m = bidDetailsMap; 3404 var parsedOptions = cRecord.options || {}; 3405 3406 if (m.titleB) m.titleB.textContent = cRecord.title || ""; 3407 3408 // STATUS 3409 if (m.statusEl) { 3410 var status = (parsedOptions.val_status || "").trim(); 3411 if (status) { 3412 m.statusEl.className = "small px-2 py-1 rounded-1 bid-status " + statusClass(status); 3413 m.statusEl.textContent = status; 3414 m.statusEl.classList.remove("d-none"); 3415 } else { 3416 m.statusEl.classList.add("d-none"); 3417 m.statusEl.textContent = ""; 3418 } 3419 } 3420 3421 // DATES (Start/End) 3422 var sd = fmtDate(parsedOptions.start_date || parsedOptions.startDate); 3423 var ed = fmtDate(parsedOptions.end_date || parsedOptions.endDate); 3424 3425 if (m.startWrap && m.startEl) { 3426 if (sd) { 3427 m.startEl.textContent = sd; 3428 m.startWrap.classList.remove("d-none"); 3429 } else { 3430 m.startEl.textContent = ""; 3431 m.startWrap.classList.add("d-none"); 3432 } 3433 } 3434 3435 if (m.endWrap && m.endEl) { 3436 if (ed) { 3437 m.endEl.textContent = ed; 3438 m.endWrap.classList.remove("d-none"); 3439 } else { 3440 m.endEl.textContent = ""; 3441 m.endWrap.classList.add("d-none"); 3442 } 3443 } 3444 3445 if (m.apply) { 3446 var btnURL = (parsedOptions.website_url || "").trim(); 3447 var btnText = (parsedOptions.website_text || "Learn More").trim(); 3448 3449 if (btnURL && btnURL !== "#") { 3450 m.apply.classList.remove("d-none"); 3451 m.apply.setAttribute("href", btnURL); 3452 m.apply.setAttribute("target", "_blank"); 3453 m.apply.innerHTML = btnText + '<i class="bi bi-box-arrow-up-right ms-2"></i>'; 3454 } else { 3455 m.apply.classList.add("d-none"); 3456 m.apply.setAttribute("href", "#"); 3457 } 3458 } 3459 3460 if (m.detail) { 3461 var pane = m.detail; 3462 pane.innerHTML = "Loading..."; 3463 3464 fetch('bids/' + encodeURIComponent(rid) + '.php?display=json') 3465 .then(function(res){ return res.json(); }) 3466 .then(function(data){ 3467 var html = (data && data.details) ? String(data.details).trim() : ""; 3468 pane.innerHTML = html || ""; 3469 }) 3470 .catch(function(){ 3471 pane.innerHTML = ""; 3472 }); 3473 } 3474 3475 try { 3476 bootstrap.Offcanvas.getOrCreateInstance(m.modal).show(); 3477 } catch(e) { 3478 console.error('Offcanvas show failed:', e); 3479 } 3480 3481 if (window.pushOcState) pushOcState('bidDetails', rid); 3482 3483 return false; 3484} 3485 3486document.addEventListener('DOMContentLoaded', function() { 3487 var modal = document.querySelector("#bidDetails"); 3488 if (!modal) return; 3489 3490 bidDetailsMap = { 3491 modal: modal, 3492 titleB: modal.querySelector(".bid-title"), 3493 statusEl: modal.querySelector(".bid-status"), 3494 startWrap: modal.querySelector(".bid-start-wrap"), 3495 endWrap: modal.querySelector(".bid-end-wrap"), 3496 startEl: modal.querySelector(".bid-start-date"), 3497 endEl: modal.querySelector(".bid-end-date"), 3498 detail: modal.querySelector(".bid-full-details"), 3499 apply: modal.querySelector(".apply-link") 3500 }; 3501 3502 fetch('_includes_/published/bids_list.json') 3503 .then(function(res){ return res.json(); }) 3504 .then(function(data){ bidJSONData = indexByIdOrRid(data); }) 3505 .then(function(){ if (typeof tryDeepLinkNow === 'function') tryDeepLinkNow('bidDetails'); }) 3506 .catch(function(e){
3507 console.error('bids_list.json load failed', e); 3508 bidJSONData = {}; 3509 }); 3510}); 3511</script>
3511 3512 <div class="rz-brand-footer bg-black small text-white py-3 py-lg-2"> 3513 <div class="container-fluid small"> 3514 <div class="d-lg-flex align-items-center"> 3515 <div class="col w-100 d-flex flex-lg-row flex-column gap-2 mb-lg-0 mb-3 p-0"> 3516 <span class="footer-copyright">© 2026 Raymore, MO</span> 3517 <a class="text-white f-accessibility_statement" href="accessibility_statement/index.php">Accessibility Statement</a> 3518 <a class="text-white f-privacy_policy" href="privacy_policy/index.php">Privacy Policy</a> 3519 <a class="text-white f-terms_and_conditions" href="terms_and_conditions/index.php">Terms and Conditions</a> 3520 <a class="text-white f-cookie_policy" href="cookie_policy/index.php">Cookie Policy</a> 3521 </div><!-- /.col --> 3522 <div class="text-lg-end align-items-center d-xl-flex gap-1 justify-content-start justify-content-lg-end f-powered-by"> 3523 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=raymoremo&filename=/news/index.php" class="btn btn-primary btn-primary-rz btn-sm rounded-1">Staff Login</a> 3524 </div> 3525 </div><!-- /.d-lg-flex --> 3526 </div><!-- /.container-fluid --> 3527 </div> 3528
3528<script src="/revize/plugins/revize_calendar/index.v2.js"></script>
3528 3529
3529<script src="/revize/plugins/zbuilder/v1/website/_assets_/js/scripts.js"></script>
vendor: 81 bytes, lines 3529-3531
3529 3530 <script src="https://www.google.com/recaptcha/api.js" async defer></script> 3531
3531<script src="/revize/plugins/page_builder/formwizard.form_validation_include.js"></script>
3531 3532
3532<script> 3533$(document).ready(function(){ 3534 const interval = setInterval(function(){ 3535 $('.cal-event-location').each(function () { 3536 if($(this).text().trim() === ""){ 3537 $(this).hide(); 3538 clearInterval(interval); 3539 } 3540 //console.log('checking'); 3541 }); 3542 }, 500); 3543}); 3544 // quick links 2 items per column 3545$('.homepage-quick-links .tiny-carousel-wrap').each(function () { 3546 let wrap = $(this); 3547 3548 let dataSource = wrap.find('.tiny-carousel'); 3549 if (!dataSource.length) return; 3550 3551 const config = { 3552 items: parseInt(dataSource.attr('data-tiny-items')) || 4, 3553 mdItems: parseInt(dataSource.attr('data-tiny-items-md')) || 3, 3554 smItems: parseInt(dataSource.attr('data-tiny-items-sm')) || 2, 3555 gap: parseInt(dataSource.attr('data-tiny-gap')) || 16 3556 }; 3557 3558 let rawItems = []; 3559 wrap.find('.rz-qlink-wrap').each(function () { 3560 let item = $(this); 3561 item.removeClass('tns-item tns-slide-active').removeAttr('id aria-hidden tabindex style'); 3562 rawItems.push(item); 3563 }); 3564 wrap.empty(); 3565
3566 let newSliderContainer = $('<div class="tiny-carousel d-flex"></div>'); 3567 wrap.append(newSliderContainer); 3568 3569 for (let i = 0; i < rawItems.length; i += 2) { 3570 3571 let group = $('<div class="tiny-item-wrap"><div class="tiny-item-box"></div></div>'); 3572 3573 let innerBox = group.find('.tiny-item-box'); 3574 3575 innerBox.append(rawItems[i]); 3576 if (rawItems[i + 1]) { 3577 innerBox.append(rawItems[i + 1]); 3578 } 3579 newSliderContainer.append(group); 3580} 3581 3582 tns({ 3583 container: newSliderContainer[0], 3584 items: config.items, 3585 mode: 'carousel', 3586 autoplay: true, 3587 autoplayText: ["<i class='bi bi-play-fill'></i>", "<i class='bi bi-pause-fill'></i>"], 3588 controls: true, 3589 controlsText: ['<i class="bi bi-chevron-left" aria-hidden="true"></i>', '<i class="bi bi-chevron-right" aria-hidden="true"></i>'], 3590 nav: true, 3591 gutter: config.gap, 3592 loop: true, 3593 rewind: false, 3594 mouseDrag: true, 3595 preventScrollOnTouch: 'force', 3596 responsive: { 3597 0: { items: config.smItems }, 3598 768: { items: config.mdItems }, 3599 1024: { items: config.items } 3600 } 3601 }); 3602}); 3603$('.all-counter').detach().appendTo('.counter-wrapper'); 3604$('.dropdown-toggle').click(function () { 3605 $(this).parent().toggleClass('active'); 3606 $(this).next().toggleClass('active'); 3607}) 3608//tiles 3609$('[data-tile-layout="stacked"]').each(function () { 3610 $('.rz-tile-title',this).clone().appendTo(this); 3611}) 3612//department 3613if($('#dept-qlink').length > 0){ 3614 $('#dept-qlink').detach().prependTo('#freeform-content-wrapper'); 3615} 3616$(window).on("load resize", function () { 3617 $(".tns-controls").each(function () { 3618 if ($(this).is(":visible")) { 3619 $(this) 3620 .closest(".rz-row-block") 3621 .addClass("scrollable"); 3622 } else { 3623 $(this) 3624 .closest(".rz-row-block") 3625 .removeClass("scrollable"); 3626 } 3627 }); 3628 }); 3629if($('#department').length > 0){ 3630 $('#freeform').addClass('department') 3631 $('.page-title-wrapper').detach().appendTo('.rz-slider-caption'); 3632} 3633 3634setTimeout(function(){ 3635 $('div#homepage-news .tns-controls').detach().appendTo('.homepage-news-controls'); 3636},1000) 3637</script>
3637 3638</div><!-- /.rz-site-wrap --> 3639</body> 3640</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.