1 2<!DOCTYPE HTML> 3<html lang="en"> 4 <head> 5 <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 6 <meta name="keywords"/> 7 <meta name="description"/> 8 9 10
11<script>CQURLInfo={"requestPath":"/content/news","extension":"html","selectors":[],"systemId":"842bdb46-528f-4536-b372-c46cab0cd50c","runModes":"prod,s7connect,crx3,production,nosamplecontent,publish,aem65,crx3tar"};</script>
11 12<link rel="stylesheet" href="/etc.clientlibs/foundation/clientlibs/main.min.ACSHASHc111e1c7ce3f8444493d965a44cf071c.css" type="text/css">
13<script src="/etc.clientlibs/clientlibs/granite/jquery.min.ACSHASH3e24d4d067ac58228b5004abb50344ef.js"></script>
vendor: 1 bytes, line 13
13
14<script src="/etc.clientlibs/clientlibs/granite/utils.min.ACSHASH899004cc02c33efc1f6694b1aee587fd.js"></script>
vendor: 1 bytes, line 14
14
15<script src="/etc.clientlibs/clientlibs/granite/jquery/granite.min.ACSHASH011c0fc0d0cf131bdff879743a353002.js"></script>
vendor: 1 bytes, line 15
15
16<script src="/etc.clientlibs/foundation/clientlibs/jquery.min.ACSHASHdd9b395c741ce2784096e26619e14910.js"></script>
vendor: 1 bytes, line 16
16
17<script src="/etc.clientlibs/foundation/clientlibs/shared.min.ACSHASHe9d9a3990d7779c2e8e3361187f3d36b.js"></script>
vendor: 1 bytes, line 17
17
18<script src="/etc.clientlibs/foundation/clientlibs/main.min.ACSHASHbe53d5d2acc50492007c4929cbe3ee9e.js"></script>
18 19 20 21 22 23 <link href="/etc/designs/news-empire.css" rel="stylesheet" type="text/css"/> 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
41<script src="/etc/clientlibs/news/vendor/bowser.min.ACSHASH66fb5ded26b5d86decaa5cc59ba79320.js"></script>
vendor: 1 bytes, line 41
41
42<script src="/etc/designs/news/clientlibs/js/pinxt-authentication.min.ACSHASHa18457627cec6544499fb4ee0d14fed6.js"></script>
vendor: 1 bytes, line 42
42
43<script src="/etc/designs/news/clientlibs/js.min.ACSHASH7b03e7fbfa607f63001bceceaa5ed9cb.js"></script>
vendor: 1 bytes, line 43
43
44<script src="/etc/clientlibs/news/vendor/js-cookie-2-2-0.min.ACSHASHfc56392a6db76319b4c5d235888ea38a.js"></script>
44 45 46 47 48</head> 49 <body> <!-- /* Redirect component does not wait for page load but immediately executes JS. 50 JS Includes that should go at end of page are placed at top of body. */ --> 51 52 53 54 55 56 57 58 59 60<div> 61 62 63 64 <div class="redirect" data-defaultPage="/splash" data-frompages="/content/news/nc/charlotte,/content/news/nc/triad,/content/news/nc/coastal,/content/news/nc/triangle-sandhills,/content/news/tx/austin,/content/news/tx/san-antonio,/content/news/fl/tampa,/content/news/fl/orlando,/content/news/ca/southern-california,/content/news/ca/la-west,/content/news/ca/orange-county,/content/news/ca/san-fernando-valley-ventura,/content/news/ky/bowling-green,/content/news/nys/buffalo,/content/news/nys/capital-region,/content/news/nys/central-ny,/content/news/oh/cincinnati,/content/news/oh/cleveland,/content/news/oh/columbus,/content/news/oh/dayton,/content/news/nys/hudson-valley,/content/news/ny/nyc,/content/news/nyc/all-boroughs,/content/news/nys/rochester,/content/news/nys/binghamton,/content/news/nys/watertown,/content/news/ky/lexington,/content/news/ky/louisville,/content/news/ky/northern-ky,/content/news/oh/toledo,/content/news/nyc/staten-island,/content/news/ma/worcester,/content/news/wi/milwaukee,/content/news/wi/madison,/content/news/wi/green-bay,/content/news/nc/mountain,/content/news/tx/dallas-fort-worth,/content/news/tx/south-texas-el-paso,/content/news/me/maine,/content/news/mo/kansas-city,/content/news/mo/st-louis,/content/news/hi/hawaii,/content/news/sc/south-carolina,/content/news/tx/texas,/content/news/ca/los-angeles,/content/news/us/noticias,/content/news/us/snplus,/content/news/fl/florida,/content/news/mi/michigan,/content/news/necn/new-england" data-topages="/content/news/nc/charlotte,/content/news/nc/triad,/content/news/nc/coastal,/content/news/nc/triangle-sandhills,/content/news/tx/austin,/content/news/tx/san-antonio,/content/news/fl/tampa,/content/news/fl/orlando,/content/news/ca/southern-california,/content/news/ca/la-west,/content/news/ca/orange-county,/content/news/ca/san-fernando-valley-ventura,/content/news/ky/bowling-green,/content/news/nys/buffalo,/content/news/nys/capital-region,/content/news/nys/central-ny,/content/news/oh/cincinnati,/content/news/oh/cleveland,/content/news/oh/columbus,/content/news/oh/dayton,/content/news/nys/hudson-valley,/content/news/ny/nyc,/content/news/nyc/all-boroughs,/content/news/nys/rochester,/content/news/nys/binghamton,/content/news/nys/watertown,/content/news/ky/lexington,/content/news/ky/louisville,/content/news/ky/northern-ky,/content/news/oh/toledo,/content/news/nyc/staten-island,/content/news/ma/worcester,/content/news/wi/milwaukee,/content/news/wi/madison,/content/news/wi/green-bay,/content/news/nc/mountain,/content/news/tx/dallas-fort-worth,/content/news/tx/south-texas-el-paso,/content/news/me/maine,/content/news/mo/kansas-city,/content/news/mo/st-louis,/content/news/hi/hawaii,/content/news/sc/south-carolina,/content/news/tx/texas,/content/news/ca/los-angeles,/content/news/us/noticias,/content/news/us/snplus,/content/news/fl/florida,/content/news/mi/michigan,/content/news/necn/new-england" data-ravenapi="https://content.raven.news"> 65 </div> 66 67
68<script type="text/javascript"> 69 // NEWS-8098 - Add WebSite schema for default home pages on spectrumnews1, spectrumlocalnews, spectrumnoticias 70 // (Googlebot is sometimes not being redirected to /splash, /us/snplus, or /us/noticias/, so this code ensures WebSite schema is always available on root page) 71 (function(){ 72 let siteInfo; 73 if (location.pathname === '/') { 74 if (location.hostname.includes('spectrumnews1.com')) { 75 siteInfo = {name: 'Spectrum News 1', url: 'https://spectrumnews1.com'} 76 } else if (location.hostname.includes('spectrumlocalnews.com')) { 77 siteInfo = {name: 'Spectrum News', url: 'https://spectrumlocalnews.com'} 78 } else if (location.hostname.includes('spectrumnoticias.com')) { 79 siteInfo = {name: 'Spectrum Noticias', url: 'https://spectrumnoticias.com'} 80 } 81 } 82 if (!siteInfo) return; 83 let structuredDataText = '{"@context": "https://schema.org", "name": "' + siteInfo.name +'", "alternateName": "' + siteInfo.name + '", "url": "' + siteInfo.url + '","@type": "WebSite"}'; 84 const script = document.createElement('script'); 85 script.setAttribute('type', 'application/ld+json'); 86 script.textContent = structuredDataText; 87 document.head.appendChild(script); 88 // Update document.title and add a meta tag for og:site_name 89 document.title = siteInfo.name; 90 const meta = document.createElement('meta'); 91 meta.setAttribute('property', 'og:site_name'); 92 meta.setAttribute('content', siteInfo.name); 93 document.head.appendChild(meta) 94 })(); 95 96 async function readyCallback() { 97 //ensures the default selection string doesn't 98 //dangle any periods at the end of the redirect URL 99 function cleanUrl(urlString) { 100 var newUrl = urlString.trim(); 101 var trailingSlash = /\/$/; 102 if (newUrl.match('/content/news')) { 103 newUrl = newUrl.replace('/content/news', ""); 104 } 105 if (newUrl.match(trailingSlash)) { 106 newUrl = newUrl.replace(trailingSlash, ""); 107 } 108 return newUrl; 109 } 110 111 const urlParams = window.location.search.substring(1); 112 const userAgent = navigator.userAgent; 113 var regionCookie; 114 if (userAgent.includes("Googlebot")) { 115 // Ensure when Google crawls the "/" page of multi-region domains, it doesn't go to a regional home page 116 regionCookie = false; 117 } else { 118 regionCookie = await News.region.getRegionCookieVal(); 119 } 120 121 var redirectNode = $('.redirect'); 122 var defaultPage = redirectNode.data('defaultpage'); 123 124 // NEWS-9435: A request that originated on necn.com is 301'd to spectrumnewsnecn.com 125 // with a ?necn=true marker. Those users must be regionalized into NECN regions ONLY 126 // (MA -> central-western-ma, ME -> maine, everything else -> new-england) and MUST NOT 127 // fall through to the shared SLN pagepairs (which would bounce them off-domain). 128 // A DIRECT visit to spectrumnewsnecn.com has no marker and gets the normal full 129 // Raven regionalization (any region, same as spectrumlocalnews.com). 130 var necnOnly = /(^|[?&])necn=true(&|$)/.test(window.location.search); 131 if (necnOnly) { 132 var necnRegions = ['/content/news/necn/new-england', '/content/news/necn/maine', '/content/news/necn/central-western-ma']; 133 // strip our internal marker from the params we forward on 134 var forwardParams = window.location.search.substring(1) 135 .split('&').filter(function (p) { return p && p !== 'necn=true'; }).join('&'); 136 var necnParams = forwardParams ? '?' + forwardParams : ''; 137 // On a fresh Raven resolution (first-time visitor) append redirect=true so the 138 // landed page renders the IP-regionalization confirmation modal, matching the 139 // normal regionalization path below. 140 var necnRedirectParam = ''; 141 if (localStorage.getItem('displayIPRegionalizationModal') === "true") { 142 necnRedirectParam = necnParams ? '&redirect=true' : '?redirect=true'; 143 } 144 if (regionCookie && necnRegions.indexOf(regionCookie) > -1) { 145 window.location.replace(cleanUrl(regionCookie) + necnParams + necnRedirectParam); 146 } else { 147 window.location.replace('/necn/new-england' + necnParams + necnRedirectParam); 148 } 149 return; 150 } 151 152 var returnFromDefault = Boolean(redirectNode.data('returnfromdefault')); 153 if (returnFromDefault) { 154 var selector = window.location.pathname.replace('/', '.') 155 defaultPage = defaultPage + selector 156 } 157 var fromPages = redirectNode.data('frompages'); 158 var toPages = redirectNode.data('topages'); 159 if (regionCookie && fromPages && toPages) { 160 var from = fromPages.split(','); 161 var to = toPages.split(','); 162 var matchedRegion = from.indexOf(regionCookie); 163 if (matchedRegion > -1) { 164 let cleanedUrl = cleanUrl(to[matchedRegion]);
165 let cleanedUrlParams = urlParams ? '?' + urlParams : ''; 166 let cleanedRedirectParams = ''; 167 if (localStorage.getItem('displayIPRegionalizationModal') === "true"){ 168 if(window.location.host.includes('spectrumnoticias.com')){ 169 cleanedRedirectParams = cleanedUrlParams ? '&redirect=true&es=true' : '?redirect=true&es=true'; 170 }else{ 171 cleanedRedirectParams = cleanedUrlParams ? '&redirect=true' : '?redirect=true'; 172 } 173 } 174 let url = cleanedUrl + cleanedUrlParams + cleanedRedirectParams; 175 176 window.location.replace(url); 177 } else { 178 let cleanedUrl = cleanUrl(defaultPage); 179 let cleanedUrlParams = urlParams ? '?' + urlParams : ''; 180 window.location.replace(cleanedUrl + cleanedUrlParams); 181 } 182 } else { 183 //If no region cookie is set (or regionCookie = false for Googlebot) go to the splash page, let user select region 184 // splash page will detect the redirect and handle accordingly. 185 let newLocationParams = urlParams ? '?' + urlParams : ''; 186 const newLocation = defaultPage + newLocationParams; 187 window.location.replace(newLocation); 188 } 189 190 } 191 192 if (document.readyState === "loading") { 193 // Loading hasn't finished yet 194 document.addEventListener("DOMContentLoaded", readyCallback); 195 } else { 196 // `DOMContentLoaded` has already fired 197 readyCallback(); 198 } 199</script>
199 200</div> 201<div></div> 202 203</body> 204</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.