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