1 2 3 4 5 6 7 8 9 10<!doctype html> 11<!-- Engine: Aestiva HTML/OS Version 4.89 Developer Edition --> 12<html lang="en"> 13 14 15 16 17 18 19 20 <head> 21 <META http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 22 <META NAME="author" content="Blackfoot Valley Dispatch" /> 23 <META NAME="description" CONTENT="Blackfoot Valley Dispatch login page" /> 24 <META NAME="keywords" CONTENT="Blackfoot Valley Dispatch,login,log in,sign in,username,login id,password" /> 25 <META NAME="robots" CONTENT="index,follow" /> 26 <META HTTP-EQUIV="cache-control" CONTENT="private, no-store, no-cache, must-revalidate" /> 27 28 <META NAME="revisit-after" CONTENT="30 days" /> 29 30 31 <title>Blackfoot Valley Dispatch Login Page</title> 32 33 <meta name="viewport" content="width=device-width, initial-scale=1"> 34 <link rel="stylesheet" type="text/css" media="screen" href="/app/website_specifics/pdf_click_menu_small.css" /> 35 <link rel="stylesheet" type="text/css" media="screen" href="/ASSET/1537x26334/XPATH/cms/website_specifics/css_themes/monarch/monarch.css" /> 36 37 <link HREF="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&display=swap" rel="stylesheet" /> 38 39
39<script> 40 // Create a link element for the Font Awesome stylesheet with fallback 41 const font_awesome_link = document.createElement('link'); 42 font_awesome_link.rel = 'stylesheet'; 43 font_awesome_link.type = 'text/css'; 44 font_awesome_link.href = 'https://repo.charityweather.com/files/font_awesome/font-awesome-6.5.1-pro-ll-kit/css/all-ll-min.css'; 45 46 // If loading fails, switch to fallback URL 47 font_awesome_link.onerror = () => { 48 font_awesome_link.href = 'https://repo.lionslight.com/files/font_awesome/font-awesome-6.5.1-pro-ll-kit/css/all-ll-min.css'; 49 }; 50 51 // Prepend the stylesheet to the head for faster priority loading 52 document.head.prepend(font_awesome_link); 53 54 // Optional: Listen for the stylesheet's load event to handle FOUC 55 font_awesome_link.onload = () => { 56 document.documentElement.classList.add('fa-loaded'); 57 }; 58 </script>
58 59 60 61<!-- Desktop/canonical vs. mobile/alternate URLs --> 62<link rel="canonical" HREF="https://www.blackfootvalleydispatch.com/login"> 63 64<link rel="stylesheet" type="text/css" media="screen" href="/app/website_specifics/form_style_monarch.css" /> 65
65<script src="/app/website_specifics/jquery-2-2-2.min.js"></script>
vendor: 1 bytes, line 65
65
66<script> 67function init() { 68document.getElementsByTagName('input')[4].focus(); 69} 70window.onload = init; 71</script>
71 72 73
73<script src="/app/js/postscribe/postscribe.min.js"></script>
73 74 75 76 77 78 <!-- AD FILLER NETWORK HEADER SCRIPTS (hashtag_head.js) --> 79 80 81 82 83 <!--AD PREFERENCES NEEDED BY JAVASCRIPTS--> 84 85
85<script>const PREFS_LOCAL_AD_SHUFFLER = "normal", PREFS_LOCAL_AD_SHUFFLE_TIMER = 30000, setting_ad_clicks_impressions = "enabled", PREFS_LOCAL_AD_IDLE_LOAD_TIMES = 50, console_logging = "off", privacy_version = "30962", terms_version = "37424", ccsetting = "off", ccrejectbtn = "lg", ccprivacycheckbox = "off";</script>
vendor: 1 bytes, line 85
85
86<script>const ads = JSON.parse('[{"ad_type": "horiz_lg","ad_code": "%3Cimg%20src%3D%22%2FIMG%2Fr%5FyAH9U72R4%5F6Z7r%2DhA%5FBxEHGdVHH%2FXPATH%2Fhome%2Fcms%5Fdata%2Fdfault%2Fweb%5Fads%2Fhoriz%2F2767%2Dwebsite%5Fsponsorship%5Fad%5F728x90%2EjpgXEXT1271x45255%2Ejpeg%22%20width%3D%22728%22%20height%3D%2290%22%20alt%3D%22%22%3E","ad_id": "w%5F59FzN79O2Rz5DU835PJaCB%5FdPgI%5FFTZ6ONYRYQR"}]');</script>
86 87
88<script src="/ASSET/1533x23189/XPATH/cms/website_specifics/monarch_ad_shuffler.js"></script>
88 89
90<script>$(function() { 91 var submitIcon = $('.searchbox-icon'); 92 var inputBox = $('.searchbox-input'); 93 var searchBox = $('.searchbox'); 94 var isOpen = false; 95 submitIcon.click(function () { 96 if (isOpen == false) { 97 searchBox.addClass('searchbox-open'); 98 inputBox.focus(); 99 isOpen = true; 100 } else { 101 searchBox.removeClass('searchbox-open'); 102 inputBox.focusout(); 103 isOpen = false; 104 } 105 }); 106 submitIcon.mouseup(function () { 107 return false; 108 }); 109 searchBox.mouseup(function () { 110 return false; 111 }); 112 $(document).mouseup(function () { 113 if (isOpen == true) { 114 $('.searchbox-icon').css('display', 'block'); 115 submitIcon.click(); 116 } 117 }); 118 119 120 runIf($('.menu').length,'jQuery.sticky','/app/website_specifics/sticky.js',function(){ 121 $(".menu").sticky({ topSpacing: 0, center:true, className:"stickynow" }); 122 }); 123 124 125 126}); 127function buttonUp() { 128 var inputVal = $('.searchbox-input').val(); 129 inputVal = $.trim(inputVal).length; 130 if (inputVal !== 0) { 131 $('.searchbox-icon').css('display', 'none'); 132 } else { 133 $('.searchbox-input').val(''); 134 $('.searchbox-icon').css('display', 'block'); 135 } 136} 137 138 139 140runIf=function(condition,name,url,callback){ 141 if(condition){ 142 runSafe(name,url,callback); 143 } 144} 145 146 147 148runSafe=function(name,url,callback){ 149 if(typeof window[name] != 'undefined'){ 150 callback(); 151 } else { 152 if(typeof runsafe != 'object'){runsafe={};} 153 if(runsafe[url] && runsafe[url].constructor === Array){var loadit=false;} else {runsafe[url]=[];var loadit=true;} 154 runsafe[url].push(callback); 155 // START001 UI stuff not necessary 156 // if (document.body){document.body.style.borderTop="10px solid red";} 157 // END001 UI stuff not necessary 158 if (loadit){ 159 var js = document.createElement('script'); 160 js.async = true; 161 js.src = url; 162 js.onload = js.onreadystatechange = (function(){return function(){ 163 while(runsafe[url].length){ 164 var f=runsafe[url].shift(); 165 f(); 166 } 167 delete runsafe[url]; 168 var count = 0; for (var k in runsafe) if (runsafe.hasOwnProperty(k)) count++; 169 if(count==0){ 170 // START002 UI stuff not necessary 171 if (document.body){document.body.style.borderTop="none";} 172 // END002 UI stuff not necessary 173 } 174 }})(); 175 var first = document.getElementsByTagName('script')[0]; 176 first.parentNode.insertBefore(js, first); 177 } 178 } 179} 180 181 182 183</script>
183 184 185<style> 186.preLoadImg { 187 display: none; 188} 189#undefined-sticky-wrapper:before { 190 height:50px; 191 background-color: #B6BD98; 192} 193</style> 194 195<!-- CSS for print_sub_alert --> 196<style> 197 198.print_sub_container { 199 width:auto; 200} 201.print_sub_container div { 202 width:auto; 203} 204.print_sub_container .print_sub_header { 205// background-color:#c7edfc; 206// padding: 12px 2px; 207 cursor: pointer; 208 font-weight: bold; 209} 210.print_sub_container .print_sub_content { 211 display: none; 212 padding : 5px; 213} 214</style> 215 216 217 218 219 220 221 222 </head> 223 <body> 224 225 226<img class="preLoadImg" src="/home/cms_data/dfault/images/home-menu-icon.png" width="1" height="1" alt="" /> 227<img class="preLoadImg" src="/home/cms_data/dfault/images/home-menu-active-icon.png" width="1" height="1" alt="" /> 228 229 230 231 232 <section class="top-bar"> 233 <div class="container"> 234 <div class="row"> 235 <div class="col-sm-2"> 236 <ul class="social"> 237 <li class="nav-item jvlmn"><a href="https://www.facebook.com/BlackfootValleyDispatch" target="n/a"><i class='fa-brands fa-facebook-f' aria-hidden='true'></i></a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/rss" target="n/a"><i class='fa fa-rss' aria-hidden='true'></i></a></li> 238 </ul> 239 </div> 240 <div class="col-sm-10 text-right"> 241 <div id="main_menu"> 242 <ul class="links"> 243 <li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/classifieds" >Classifieds</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/directory" >Directory</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/photos" >Photos</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/about" >About</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/contact" >Contact</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/advertise" >Advertise</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/register" >Register</a></li><li class="nav-item jvlmn"><a class="active" href="https://www.blackfootvalleydispatch.com/login" >Sign In</a></li> 244 </ul> 245 </div> 246 </div> 247 </div> 248 </div> 249 </section> 250 251 252 <!--/// Header ///--> 253 <header class="header home-4"> 254 <div class="container"> 255 <div class="row"> 256 <div class="col-sm-9"> 257 <figure class="logo"><a href="https://www.blackfootvalleydispatch.com/" aria-label="Home"><img src="/home/cms_data/dfault/images/masthead_990x100.png" alt="" class="logo"></a> 258 </figure> 259 </div> 260 <div class="col-sm-3 text-right xs-none"> 261 </div> 262 </div> 263 <div class="row"> 264 <div class="col-sm-12"> 265 <div class="date"> 266 <div class="grid_1 rightone"> 267 <p class="pub_date"> 268 The Blackfoot Valley's News Source Since 1980 269 </p> 270 </div> 271 </div> 272 </div> 273 </div> 274 </div> 275 </header> 276<!-- Dynamic script (11-21-2025) --> 277<style> 278#JvlNavbarContent { 279 width: 100% /* Prevents wrapping */ 280} 281#JvlNavbarContent .nav { 282 flex-wrap: nowrap; /* Prevents wrapping */ 283} 284#JvlNavbarContent .nav a { 285 white-space: nowrap; /* Prevents text wrapping */ 286} 287#JvlNavbarContent .nav > li { /* Hide all menu items initially */ 288 opacity: 0; 289 /* transition: opacity 0.2s ease; /* Animation when JS adds .show */ 290} 291#JvlNavbarContent .nav > li.show { /* Reveal all menu items */ 292 opacity: 1; 293} 294 295/* ADDED 12-4-2025: Apply opacity: 1 when screen width is 990px or less */ 296@media screen and (max-width: 990px) { 297 #JvlNavbarContent .nav > li { 298 opacity: 1; 299 } 300} 301 302</style>
303<script>const dynamicMenu = true;</script>
303 304 <section class="header home-4" style="top:0;position:sticky;padding-top:0;z-index:2022;"> 305 <div class="container"> 306 <div class="row"> 307 <div class="col-sm-12"> 308 <nav class="navbar navbar-expand-lg navbar-default"> 309 <div class="navbar-header"> 310 <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#JvlNavbarContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> 311 <i class="fa fa-bars" style="color:#fff;"></i> 312 </button> 313 </div> 314 315 <!-- Collect the nav links, forms, and other content for toggling --> 316 <div class="collapse navbar-collapse" id="JvlNavbarContent"> 317 <ul class="nav navbar-nav me-auto mb-2 mb-lg-0"><li class="nav-item jvlmnreg"><a class="nav-link" href="https://www.blackfootvalleydispatch.com/">Home</a></li><li class="nav-item jvlmnreg"><a class="nav-link" href="https://www.blackfootvalleydispatch.com/section/news">News</a></li><li class="nav-item jvlmnreg"><a class="nav-link" href="https://www.blackfootvalleydispatch.com/section/community">Community</a></li><li class="nav-item jvlmnreg"><a class="nav-link" href="https://www.blackfootvalleydispatch.com/section/outdoors">Outdoors</a></li> 318 <li class="dropdown nav-item jvlmnreg"> 319 <a href="https://www.blackfootvalleydispatch.com/section/viewpoints" class="nav-link dropdown-toggle" data-bs-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Viewpoints <span class="caret"></span></a> 320 <ul class="dropdown-menu"> 321 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/viewpoints" class="dropdown-item nav-link">All</a></li> 322 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/viewpoints/columns" class="dropdown-item nav-link">Columns</a></li> 323 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/viewpoints/opinion" class="dropdown-item nav-link">Opinion</a></li> 324 </ul></li><li class="nav-item jvlmnreg"><a class="nav-link" href="https://www.blackfootvalleydispatch.com/section/obits">Obits</a></li> 325 <li class="dropdown nav-item jvlmnreg"> 326 <a href="https://www.blackfootvalleydispatch.com/section/calendar" class="nav-link dropdown-toggle" data-bs-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Calendar <span class="caret"></span></a> 327 <ul class="dropdown-menu"> 328 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/calendar" class="dropdown-item nav-link">All</a></li> 329 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/calendar/church%5Fservices" class="dropdown-item nav-link">Church Services</a></li> 330 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/calendar/community%5Fevents%5Fcalendar" class="dropdown-item nav-link">Community Events Calendar</a></li> 331 <li class="nav-item jvlmnreg"><a href="https://www.blackfootvalleydispatch.com/section/calendar/meetings" class="dropdown-item nav-link">Meetings</a></li> 332 </ul></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/classifieds" >Classifieds</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/directory" >Directory</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/photos" >Photos</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/about" >About</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/contact" >Contact</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/advertise" >Advertise</a></li><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/register" >Register</a></li><li class="nav-item jvlmn"><a class="active" href="https://www.blackfootvalleydispatch.com/login" >Sign In</a></li> 333 </ul><ul class="nav navbar-nav ml-auto"><div class="navbar-nav ml-auto"> 334 <a href="javascript:;" class="search-toggler"> 335 <i class="fa fa-search"></i> 336 </a> 337 <div id="search-form"> 338 <form method="GET" class="searchbox" autocomplete="on" ACTION="/findit" NAME="findit"> 339 <input class="search" type="text" name="mysearch" placeholder="Search" required="" value="" title="search"> 340 <input class="submit-search" type="submit" value="Submit"> 341 </form> 342 </div> 343 </div></ul></div> 344 </nav>
345 </div> 346 </div> 347 </div> 348 </section>
349<script> 350/** 351 * Dynamic Navigation Menu with Responsive Overflow 352 * Automatically collapses menu items into a "More..." dropdown on narrow screens 353 */ 354 355(function() { 356 'use strict'; 357 358 // Configuration 359 const CONFIG = { 360 RESERVED_SPACE: 200, 361 BREAKPOINT: 990, 362 DEBOUNCE_DELAY: 0, 363 SELECTOR: { 364 MAIN_MENU: 'ul.nav.navbar-nav.me-auto', 365 DROPDOWN_TOGGLE: '[data-bs-toggle="dropdown"]' 366 }, 367 CLASS: { 368 NAV_ITEM: 'nav-item', 369 NAV_LINK: 'nav-link', 370 DROPDOWN: 'dropdown', 371 DROPDOWN_ITEM: 'dropdown-item', 372 DROPDOWN_MENU: 'dropdown-menu', 373 DROPEND: 'dropend', 374 HIDDEN: 'd-none', 375 PROTECTED: 'jvlmn', 376 REGULAR: 'jvlmnreg', 377 MORE_DROPDOWN: 'more-dropdown', 378 MORE_MENU: 'more-menu' 379 } 380 }; 381 382 // State management 383 let resizeTimer = null; 384 let mainMenu = null; 385 let moreDropdown = null; 386 let moreMenu = null; 387 let hasInitialized = false; // track if init() has run 388 389 /** 390 * Initialize the dynamic menu system 391 */ 392 function init() { 393 try { 394 if (hasInitialized) return; // safety check 395 hasInitialized = true; 396 // Check if dynamic menu is enabled 397 if (!shouldInitialize()) { 398 return; 399 } 400 401 mainMenu = document.querySelector(CONFIG.SELECTOR.MAIN_MENU); 402 403 if (!mainMenu) { 404 console.error('[DynamicMenu] Main menu not found. Selector:', CONFIG.SELECTOR.MAIN_MENU); 405 return; 406 } 407 408 mergeExistingMoreDropdowns(); 409 setupEventListeners(); 410 adjustMenu(); 411 showNavbar(); 412 } catch (error) { 413 console.error('[DynamicMenu] Initialization error:', error); 414 } 415 } 416 417 /** 418 * Show navbar sections on page load 419 */ 420 function showNavbar() { 421 const items = document.querySelectorAll('#JvlNavbarContent .navbar-nav > li'); 422 items.forEach((item, index) => { 423 item.classList.add('show'); 424 }); 425 } 426 427 /** 428 * Find and merge any pre-existing "More..." dropdowns 429 */ 430 function mergeExistingMoreDropdowns() { 431 const existingDropdowns = Array.from(mainMenu.querySelectorAll('li')) 432 .filter(li => li && li.textContent.trim().toLowerCase().startsWith('more...')); 433 434 // Create our consolidated More... dropdown 435 createMoreDropdown(); 436 437 // Merge items from existing dropdowns 438 existingDropdowns.forEach(dropdown => { 439 if (dropdown === moreDropdown) return; 440 441 const items = dropdown.querySelectorAll(`.${CONFIG.CLASS.DROPDOWN_MENU} > li`); 442 items.forEach(item => moreMenu.appendChild(item)); 443 dropdown.remove(); 444 }); 445 } 446 447 /** 448 * Create the More... dropdown element 449 */ 450 function createMoreDropdown() { 451 moreDropdown = document.createElement('li'); 452 moreDropdown.className = `${CONFIG.CLASS.NAV_ITEM} ${CONFIG.CLASS.DROPDOWN} ${CONFIG.CLASS.HIDDEN} ${CONFIG.CLASS.MORE_DROPDOWN}`; 453 moreDropdown.innerHTML = ` 454 <a class="${CONFIG.CLASS.NAV_LINK} dropdown-toggle" href="#" data-bs-toggle="dropdown" data-bs-auto-close="outside" aria-expanded="false"> 455 More... 456 </a> 457 <ul class="${CONFIG.CLASS.DROPDOWN_MENU} ${CONFIG.CLASS.MORE_MENU}"></ul> 458 `; 459 460 moreMenu = moreDropdown.querySelector(`.${CONFIG.CLASS.MORE_MENU}`); 461 mainMenu.appendChild(moreDropdown); 462 } 463 464 /** 465 * Setup nested dropdown handlers for items inside More... 466 */ 467 function setupNestedDropdowns() { 468 if (!moreMenu) return; 469 470 const nestedDropdowns = moreMenu.querySelectorAll(`.${CONFIG.CLASS.DROPDOWN}, .${CONFIG.CLASS.NAV_ITEM}.${CONFIG.CLASS.DROPDOWN}`); 471 472 nestedDropdowns.forEach(dropdown => { 473 const toggle = dropdown.querySelector(CONFIG.SELECTOR.DROPDOWN_TOGGLE); 474 if (!toggle) return; 475 476 // Style adjustments for nested dropdowns 477 if (toggle.classList.contains(CONFIG.CLASS.NAV_LINK)) {
478 toggle.classList.add(CONFIG.CLASS.DROPDOWN_ITEM); 479 } 480 481 const nestedMenu = dropdown.querySelector(`.${CONFIG.CLASS.DROPDOWN_MENU}`); 482 if (nestedMenu) { 483 dropdown.classList.add(CONFIG.CLASS.DROPEND); 484 485 // Style nested menu 486 if (!nestedMenu.hasAttribute('data-styled')) { 487 nestedMenu.style.padding = '0'; 488 nestedMenu.style.position = 'static'; 489 nestedMenu.setAttribute('data-styled', 'true'); 490 } 491 492 // Add classes and indentation to nested items 493 styleNestedItems(nestedMenu); 494 495 // Initialize Bootstrap dropdown 496 initializeBootstrapDropdown(toggle); 497 } 498 }); 499 } 500 501 /** 502 * Style nested menu items with proper classes and indentation 503 */ 504 function styleNestedItems(nestedMenu) { 505 const items = nestedMenu.querySelectorAll('li'); 506 items.forEach(item => { 507 item.classList.add(CONFIG.CLASS.NAV_ITEM, CONFIG.CLASS.REGULAR); 508 }); 509 510 const links = nestedMenu.querySelectorAll(`.${CONFIG.CLASS.DROPDOWN_ITEM}, li > a`); 511 links.forEach(link => { 512 if (!link.hasAttribute('data-indented')) { 513 link.style.setProperty('padding-left', '2rem', 'important'); 514 link.setAttribute('data-indented', 'true'); 515 link.classList.add(CONFIG.CLASS.NAV_LINK); 516 } 517 }); 518 } 519 520 /** 521 * Initialize Bootstrap dropdown instance 522 */ 523 function initializeBootstrapDropdown(toggle) { 524 if (!window.bootstrap?.Dropdown) return; 525 526 try { 527 const existingInstance = bootstrap.Dropdown.getInstance(toggle); 528 if (existingInstance) { 529 existingInstance.dispose(); 530 } 531 532 new bootstrap.Dropdown(toggle, { autoClose: true }); 533 } catch (error) { 534 console.error('[DynamicMenu] Error initializing Bootstrap dropdown:', error); 535 } 536 } 537 538 /** 539 * Restore item to its original state when moving out of More... 540 */ 541 function restoreItemState(item) { 542 if (!item.classList) return; 543 544 item.classList.remove(CONFIG.CLASS.DROPEND); 545 item.classList.add(CONFIG.CLASS.NAV_ITEM); 546 547 // Restore dropdown toggle classes 548 const toggle = item.querySelector(CONFIG.SELECTOR.DROPDOWN_TOGGLE); 549 if (toggle?.classList.contains(CONFIG.CLASS.DROPDOWN_ITEM)) { 550 toggle.classList.remove(CONFIG.CLASS.DROPDOWN_ITEM); 551 } 552 553 // Remove nested dropdown styling 554 const nestedMenu = item.querySelector(`.${CONFIG.CLASS.DROPDOWN_MENU}`); 555 if (nestedMenu?.hasAttribute('data-styled')) { 556 nestedMenu.removeAttribute('style'); 557 nestedMenu.removeAttribute('data-styled'); 558 559 const nestedItems = nestedMenu.querySelectorAll('[data-indented="true"]'); 560 nestedItems.forEach(link => { 561 link.style.paddingLeft = ''; 562 link.removeAttribute('data-indented'); 563 }); 564 } 565 } 566 567 /** 568 * Move all items from More... back to main menu 569 */ 570 function moveItemsBackToMainMenu() { 571 while (moreMenu.firstChild) { 572 const child = moreMenu.firstChild; 573 restoreItemState(child); 574 mainMenu.insertBefore(child, moreDropdown); 575 } 576 } 577 578 /** 579 * Prepare item for insertion into More... dropdown 580 */ 581 function prepareItemForMore(item) { 582 item.classList.add(CONFIG.CLASS.NAV_ITEM, CONFIG.CLASS.REGULAR); 583 584 const link = item.querySelector('a'); 585 if (link && !link.classList.contains(CONFIG.CLASS.NAV_LINK)) { 586 link.classList.add(CONFIG.CLASS.NAV_LINK); 587 } 588 } 589 590 /** 591 * Main adjustment logic - handles menu overflow 592 */ 593 function adjustMenu() { 594 if (!mainMenu || !moreDropdown || !moreMenu) return; 595 596 // Reset: move everything back 597 moveItemsBackToMainMenu();
598 moreDropdown.classList.add(CONFIG.CLASS.HIDDEN); 599 600 // Only apply overflow logic on desktop 601 if (window.innerWidth <= CONFIG.BREAKPOINT) return; 602 603 const containerWidth = mainMenu.parentElement.offsetWidth; 604 const items = Array.from(mainMenu.children).filter(li => li !== moreDropdown); 605 606 let usedWidth = 0; 607 let overflowIndex = -1; // BEFORE 11-19-2025: -1 608 609 // Find overflow point 610 for (let i = 0; i < items.length; i++) { 611 usedWidth += items[i].offsetWidth; 612 613 if (usedWidth > containerWidth - CONFIG.RESERVED_SPACE) { 614 overflowIndex = i; // BEFORE 11-19-2025: i - 1 615 break; 616 } 617 } 618 619 // Move overflowing items to More... 620 if (overflowIndex >= 0) { 621 for (let i = items.length - 1; i >= overflowIndex; i--) { 622 const item = items[i]; 623 624 // Skip protected items 625 if (item.classList.contains(CONFIG.CLASS.PROTECTED)) continue; 626 627 prepareItemForMore(item); 628 moreMenu.insertBefore(item, moreMenu.firstChild); 629 } 630 631 if (moreMenu.children.length > 0) { 632 moreDropdown.classList.remove(CONFIG.CLASS.HIDDEN); 633 setupNestedDropdowns(); 634 } 635 } 636 } 637 638 /** 639 * Debounced resize handler 640 */ 641 function handleResize() { 642 clearTimeout(resizeTimer); 643 resizeTimer = setTimeout(adjustMenu, CONFIG.DEBOUNCE_DELAY); 644 } 645 646 /** 647 * Setup event listeners 648 */ 649 function setupEventListeners() { 650 window.addEventListener('resize', handleResize); 651 } 652 653 /** 654 * Cleanup function for proper teardown 655 */ 656 function destroy() { 657 window.removeEventListener('resize', handleResize); 658 clearTimeout(resizeTimer); 659 } 660 661 /** 662 * Check if dynamic menu is enabled via global variable 663 */ 664 function shouldInitialize() { 665 return typeof dynamicMenu !== 'undefined' && dynamicMenu === true; 666 } 667 668 /** 669 // Initialize when DOM is ready 670 if (document.readyState === 'loading') { 671 document.addEventListener('DOMContentLoaded', init); 672 } else { 673 init(); 674 } 675 */ 676 677 /* ADDED 12-4-2025 */ 678 if (window.innerWidth > CONFIG.BREAKPOINT){ 679 init(); 680 } else { 681 showNavbar(); 682 } 683 684 // Listen for resize 685 window.addEventListener('resize', () => { 686 if (!hasInitialized && window.innerWidth > CONFIG.BREAKPOINT) { 687 init(); // run once when crossing above breakpoint 688 } 689 }); 690 691})(); 692</script>
692 693 694 <section class="head-info"> 695 <div class="container"> 696 <div class="row"> 697 <div class="col-8"> 698 699 </div> 700 <div class="col-4 text-right"> 701 702 <!--<a href="javascript:;" class="primary-btn">e-Edition</a>--> 703 </div> 704 </div> 705 </div> 706 </section><section class="main-dt"> 707 <div class="container"> 708 <div class="row"> 709 <div class="col-lg-9 col-md-8 lft"><h1 class="small_h1_font">Exclusive online access to Blackfoot Valley Dispatch</h1><div class="sub_forms_all" style="padding:0;"><form method='post' ACTION='https://www.blackfootvalleydispatch.com/cgi-bin/htmlos.cgi/00418.1.1270712352313240509' NAME='ovrly_login_loginpage' DATA-TAG='login' class='loginform'><input type=hidden name=last.public.page value='https://www.blackfootvalleydispatch.com/'> 710<input type=hidden name=this_login_var value='n'><div class="subs_mailing_add"> 711 <h3 class="h3bl">Sign In</h3> 712 <label for="username">Username</label> <input id="username" class="login_field frmflds" type="text" name="FORM_login.id" maxlength="100" VALUE=""> 713 <label for="password">Password</label> <input id="password" class="login_field frmflds" type="password" name="FORM_login.pass" value="" maxlength="100" /> 714 <div class="text-center subs_mailing_add"> 715 <input type="submit" name="mybutton" value="Sign In" class="cartbtnblack cartbtnblue"><br><br> 716 <span class="d-flex align-items-center justify-content-center"><input type=checkbox value='Y' name='remember.login' title="remember me checkbox" class="mr-1">Remember me on this computer.</span><br> 717 <a href='https://www.blackfootvalleydispatch.com/contact' style='text-decoration:none' DATA-TAG='contact'>Help</a> | 718 <a href='https://www.blackfootvalleydispatch.com/cgi-bin/htmlos.cgi/00418.1.1351495004313240509' style='text-decoration:none' DATA-TAG='login'>Forgot your password?</a> 719 </div> 720<br><br> 721<INPUT TYPE="HIDDEN" NAME="AESTIVACVNLIST" VALUE="remember.login"></form> 722</div></div> 723 </div> 724 <!--BEGIN SIDEBAR CONTENT AREA--> 725 <div class="col-lg-3 col-md-4 rht"><br><p> </p><div class='sidebar_split_ad'><div class='split_left'><a href='https://www.blackfootvalleydispatch.com/cgi-bin/htmlos.cgi/00418.1.1499601405313240509' DATA-TAG='home' aria-label='Subscribe'><img src="/home/cms_data/dfault/images/.TEMP/cover_graphic_staticTEMP140x280-4841.png" width="140" height="175" alt=""></a></div><div class='split_right'><p class='sidebar_split_ad_title'><strong>Subscribe & receive:</strong></p> 726 727<p> 728- Full online access<br> 729- Comment on articles<br> 730- Access the archives<br> 731- And much more<br> 732</p><a href='https://www.blackfootvalleydispatch.com/cgi-bin/htmlos.cgi/00418.1.1527552094013240509' DATA-TAG='subscribe' aria-label='Subscribe'><img src="/home/cms_data/dfault/images/.TEMP/subscribelogoTEMP150x100-7211.png" width="150" height="40" alt=""></a></div></div><p> </p></div> 733 <!--END SIDEBAR CONTENT AREA--> 734 </div> 735 </div> 736 <div class="row"> 737 738 </div> 739 </div> 740 </section> 741 <footer class="footer"> 742 <div class="container"> 743 <div class="row"> 744 <div class="col-sm-12"> 745 <hr class="top"> 746 </div> 747 </div> 748 <div class="row"> 749 <div class="col-sm-7 bdr-rft"> 750 <div class="row"> 751 <div class="col-sm-4"> 752 <h3>Sections</h3> 753 <ul><li><a href='https://www.blackfootvalleydispatch.com/section/news' aria-label="Section link" class="author-blue">News</a></li><li><a href='https://www.blackfootvalleydispatch.com/section/community' aria-label="Section link" class="author-blue">Community</a></li><li><a href='https://www.blackfootvalleydispatch.com/section/outdoors' aria-label="Section link" class="author-blue">Outdoors</a></li><li><a href='https://www.blackfootvalleydispatch.com/section/viewpoints' aria-label="Section link" class="author-blue">Viewpoints</a></li><li><a href='https://www.blackfootvalleydispatch.com/section/obits' aria-label="Section link" class="author-blue">Obits</a></li><li><a href='https://www.blackfootvalleydispatch.com/section/calendar' aria-label="Section link" class="author-blue">Calendar</a></li> 754 </ul> 755 </div> 756 <div class="col-sm-4"> 757 <h3>Newspaper</h3> 758 <ul> 759 <li><a href="https://www.blackfootvalleydispatch.com/contact" >Contact</a></li><li><a href="https://www.blackfootvalleydispatch.com/register" >Register</a></li><li><a href="https://www.blackfootvalleydispatch.com/about" >About</a></li><li><a href="https://www.blackfootvalleydispatch.com/photos" >Photos</a></li> 760 </ul> 761 </div> 762 <div class="col-sm-4"> 763 <h3>Website</h3> 764 <ul> 765 <li><a href="https://www.blackfootvalleydispatch.com/terms" >Terms of Use</a></li><li><a href="https://www.blackfootvalleydispatch.com/privacy" >Privacy Policy</a></li><li><a href="https://www.blackfootvalleydispatch.com/sitemap_index.xml" target="_blank">Sitemap</a></li><li><span></span></li><li><span>*By using this website, you agree to our <a href="https://www.blackfootvalleydispatch.com/privacy">Privacy Policy</a> and <a href="https://www.blackfootvalleydispatch.com/terms">Terms</a>.</span></li> 766 </ul> 767 </div> 768 </div>
769 </div> 770 <div class="col-sm-5 ext-space"> 771 <div class="row"> 772 <div class="col-sm-8"> 773 <h3>Connect With Us</h3> 774 <ul> 775 <li><span>P.O. Box 427</span></li><li><span>Lincoln, MT 59639</span></li><li><span>Ph: (406) 362-4131</span></li><li><span><li><span>© 2026 Blackfoot Valley Dispatch</span></li></span></li> </ul> 776 </div> 777 <div class="col-sm-4"> 778 <h3 class="mbpx-3">Follow Us</h3> 779 <ul class="social"><li class="nav-item jvlmn"><a href="https://www.facebook.com/BlackfootValleyDispatch" target="n/a"><i class='fa-brands fa-facebook-f' aria-hidden='true'></i></a></li></ul> 780 781 <h3 class="mbpx-3">RSS</h3> 782 <ul class="social"><li class="nav-item jvlmn"><a href="https://www.blackfootvalleydispatch.com/rss" target="n/a"><i class='fa fa-rss' aria-hidden='true'></i></a></li></ul> 783 </div> 784 </div> 785 </div> 786 </div> 787 <div class="row"> 788 <div class="col-sm-12"> 789 <hr> 790 </div> 791 </div> 792 <div class="row"> 793 <div class="col-sm-12"> 794 <p class="copy">Powered by <strong><a href="http://www.lionslight.com" target="_blank">ROAR Online Publication Software</a></strong> from Lions Light Corporation<br /> 795 © Copyright 2026</p> 796 </div> 797 </div> 798 </div> 799 800</footer> 801
802<script> 803 804 805$(".more_stories_toggle").click(function () { 806 this.style.margin = "0"; 807 $more_stories_toggle = $(this); 808 $more_stories_list = $more_stories_toggle.next(); //getting the next element 809 810// $more_stories_list.slideToggle("slow", function () { //open up the content needed - toggle the slide- if visible, slide up, if not slidedown. 811 812 $more_stories_toggle.text(function () { //execute this after slideToggle is done; change text of header based on visibility of content div 813 814 return $more_stories_list.is(":visible") ? "+ More Stories" : "- More Stories"; //change text based on condition 815 }); 816// }); 817}); 818 819 820 821$( ".print_sub_container" ).click(function() { 822 $( ".print_sub_content" ).slideToggle( 500, function() { 823 // Animation complete. 824 }); 825}); 826 827</script>
vendor: 1 bytes, line 827
827
828<script src="/ASSET/1614x19474/XPATH/cms/website_specifics/monarch.js"></script>
vendor: 1 bytes, line 828
828
829<script src="/ASSET/1014x23108/XPATH/cms/website_specifics/monarch_bootstrap.js"></script>
829 830 831 <!-- <br><small>live</small> (Desktop|paywallerror|error) --> 832
832<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"602c9d0c64cc46f48dc2d6c960f5d046","r":1,"spa":2}' crossorigin="anonymous"></script>
832 833</body> 834 835 836</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.