Connect with us

California

Offshore wind or tribal rights? Biden’s California dilemma.

Published

on

Offshore wind or tribal rights? Biden’s California dilemma.


MORRO BAY, California — This picturesque bay located four hours south of San Francisco is at the center of an election year conflict for the Biden administration that could threaten its offshore wind ambitions on the West Coast.

Several offshore wind developers want to build the state’s first farms off the coast here, projects that are needed for California — and the White House — to reach decarbonization goals.

But this summer, the administration is also likely to designate the Chumash Heritage National Marine Sanctuary in coastal waters that surround Morro Bay — a plan that the offshore wind industry says blocks their access to the grid.

Equinor, Golden State Wind and Invenergy California Offshore — companies with offshore wind farms planned off the bay — hope to carve out guaranteed paths for their power lines to reach shore, when the NOAA finalizes the sanctuary in coming months. Proponents of the sanctuary, meanwhile, don’t want to reduce its size and are pushing for a requirement that wind developers seek permits for power lines through protected waters.

Advertisement

“The ocean should not be the sacrificial lamb for our unquenchable thirst for energy,” said Violet Sage Walker, chair of the Northern Chumash Tribal Council, the Indigenous tribe that proposed the marine sanctuary to NOAA.

The conflict underscores how the administration’s ambitions for low-carbon energy deployment can clash with its priorities for environmental protection and tribal relations. It’s a tension that is playing out with other energy projects, and threatens to hamper progress toward the president’s climate goals at a time he’s counting on environmentalists to back him strongly in the 2024 election campaign. The Morro Bay fight also shows how federal agencies tasked with conservation are facing new disputes with emerging energy industries like offshore wind as states try to decarbonize.

At the heart of the transmission fight is what will run underneath Morro Bay and surrounding waters — companies are eyeing power lines buried in the seafloor to connect wind projects to the California grid. NOAA released a draft management plan for the sanctuary last year that would carve out a corridor on the north side for power lines to reach the retired Morro Bay Power Plant.

But that would mean cutting roughly 2,000 square miles from the original protected area, including Morro Bay and Morro Rock, a towering stone island in the bay that has cultural significance for the Chumash, who date their presence in the region back at least 10,000 years. If approved this year, the Chumash sanctuary would be the first ever nominated by Native Americans. The Biden administration has promised to improve the U.S. government’s relationship to Indian nations.

Advertisement

But offshore wind developers are pushing back on the NOAA plan, despite the transmission carve-out. The proposal blocks unfettered access to a grid connection that’s long been assumed as the optimal point for offshore wind: the soon-to-retire Diablo Canyon nuclear power plant.

Diablo may be needed because offshore wind needs to connect to grid locations capable of taking in large amounts of power and flinging it into the larger electricity system, according to industry analysts. Transmission infrastructure at the existing Morro Bay power plant is not equipped for that, they say.

While NOAA said in its draft plan that wind developers could seek permits, renewing them every five years, to lay transmission through the sanctuary to reach Diablo, critics say it is an untested solution that does not provide enough certainty to secure financial investments for projects.

“It is critical that leaseholders can connect their projects,” said Erin Lieberman, executive vice president for environmental compliance and strategy at Invenergy, which wants to develop the Even Keel Wind project in federal waters off the coast of Morro Bay.

“Limiting this transmission access would threaten the project’s viability,” Lieberman said in an email, echoing other offshore wind developers in California who have appealed to NOAA for a Diablo connection.

Advertisement

Biden vs. Trump

The Chumash sanctuary conflict comes at a challenging moment for President Joe Biden’s offshore wind ambitions.

Inflationary costs in the wake of the global pandemic have made offshore wind farms more expensive to build and slowed down deployment in the U.S. A scarcity of builders and manufacturers is also driving up costs, as the U.S. supply chain for offshore wind is virtually nonexistent. The industry is no longer expected to meet the Biden administration’s goal of reaching 30 gigawatts of offshore wind by the end of the decade.

The administration held its first Pacific wind sale in late 2022 and is aiming to hold an auction off the coast of Oregon this year. The auctions are part of a flurry of activity at the Interior Department to entrench the nation’s offshore wind industry in new markets like California and the Gulf of Mexico, ahead of a presidential election that could upend the industry’s outlook.

If Biden loses the November presidential race, Republican nominee Donald Trump is expected to slow the pace of offshore wind permitting and leasing.

“We have seen former President Trump speak out against wind explicitly. He’s not just yelling about renewables,” said Timothy Fox, an analyst with ClearView Energy Partners, who said the election will likely pressure the White House to decide on the Morro Bay issue before November.

Advertisement

“The [Biden] administration wants to provide some clarity. They want to try to finalize this soon,” he said of NOAA’s Chumash plan.

NOAA is reviewing more than 100,000 comments submitted about the proposed sanctuary. The agency’s management plan includes bringing in tribal advisers, part of the Biden administration’s commitment to tribes.

“As the first Indigenous-led sanctuary nomination, proposing the Chumash Heritage National Marine Sanctuary reflects the Biden-Harris Administration’s commitment to respecting indigenous knowledge and promoting co-stewardship while advancing our historic climate and conservation goals,” said Alyssa Roberts, spokesperson for the White House Council on Environmental Quality, in a statement. “Input from local area Tribes, Indigenous communities, and clean energy stakeholders has been crucial and will continue to inform the designation process that NOAA is leading.”

Why does Diablo matter?

Experts say industry concerns over transmission access to Diablo are legitimate. While a single offshore wind project might be able to find a cost-effective route to connect to the grid at the Morro Bay Power Plant, it’s far less likely that the retired plant — a relic of the U.S. power boom of the 1950s — could support three or more wind farms.

The substation can’t accept the amount of power offshore wind is promising unless there are upgrades, said Ranjit Deshmukh, an assistant professor in environmental studies at the University of California, Santa Barbara. The plant has a 230-kilovolt substation to transfer power into the electric grid, while a substation at Diablo has more than double that capacity.

Advertisement
Diablo Canyon Power Plant, units 1 and 2. | Pacific Gas and Electric

“The interconnection depends on how much offshore wind ends up being developed at Morro Bay,” Deshmukh explained in an email. “If all 3,100 [megawatt] capacity of planned wind farms … is built, then the 230 kV substation at Morro Bay will not be sufficient.”

Building a new substation twice the size at Morro Bay has been assessed by the California Public Utilities Commission (CPUC) and the California Independent System Operator as they plan for offshore wind. But state and local officials have also weighed other uses for the site, including an industry proposal to use it as a battery storage facility.

In contrast, the Diablo electrical plug-in likely has room for offshore wind power, and will have additional capacity if the nuclear plant is decommissioned as planned in 2030, Deshmukh said.

‘An additional threat’

Unlike New England states that helped drive the first offshore wind development in the U.S. via subsidies, California doesn’t offer direct support to help companies cover their costs. A new law, signed by California Gov. Gavin Newsom (D) last year, attempts to change that. It would direct the California Department of Water Resources to buy “clean” energy from large, difficult-to-develop projects and sell the electricity to state utilities.

Even so, questions are emerging about whether California lawmakers have oversold the scale of potential offshore wind growth.

Advertisement

Two years ago, the California Energy Commission set a goal of reaching up to 5 GW of offshore wind by 2030, with that power increasing incrementally until 25 million homes in the state are powered by offshore wind by 2045. Backed by Newsom, the target is the most aggressive in the country.

Last month, the CPUC — which regulates power providers covering about three-quarters of the state — inked a plan with a less ambitious target: 4.5 GW of offshore wind installed by 2035.

A spokesperson for the utilities commission said the two figures shouldn’t be compared apples to apples, however. The energy commission has set a goal for offshore wind statewide, while the utility commission is setting targets for its area of authority to procure needed power supply.

“It is important to note that offshore wind is a new technology in California, and as such, there will be challenges in advancing it, especially for the first/early projects,” said Terrie Prosper, director of strategic communications for the utilities commission.

One of those challenges is that offshore wind farms are more expensive to build in California than on the East Coast

Advertisement

California waters are too deep to support fixed-bottom turbine platforms. So farms will require the emerging technology of floating platforms, moored to the seafloor with cables. That approach is advancing globally, but it hasn’t yet become widespread and still has higher costs than traditional offshore arrays.

California’s lack of an offshore wind subsidy, coupled with its high development costs, creates uncertainty for companies that is being exacerbated by Morro Bay’s situation, according to analysts.

“I wouldn’t characterize the sanctuary as the biggest threat [to California offshore wind development]. But it’s an additional threat,” he said. “This is one of several hurdles that can make project developers hesitant from making their final investment decision until there is clarity.”

A tribal push

The Northern Chumash band, an Indigenous people who are recognized by California — but not the federal government — as a tribe, have fought for the sanctuary for more than a decade.

The band argued in its sanctuary proposal that the waters off Morro Bay are ecologically important, because the coastline’s unique geography supports abundant marine life.

Advertisement

As the state’s central coast curves inward, it creates a gyre where the cold northern current mixes with the warmer southern current. That helps churn colder, deeper and nutrient rich waters near the ocean floor to the surface, a process that supports the marine food chain.

“The biological richness of it is intertwined with the sacred sites,” said PJ Webb, a legal adviser to the Northern Chumash Tribal Council who wrote the tribe’s proposal to NOAA. Webb previously worked as an adviser to the Monterey Bay National Marine Sanctuary superintendent for two decades.

She noted that the Northern Chumash support clean energy, but have concerns about environmental impacts of transmission cables in Morro Bay, where threatened southern sea otters live.

Morro Bay Power Plant
Morro Bay Power Plant. | Naotake Murayama/Flickr

Sage Walker said NOAA’s proposal to reduce the size of the sanctuary for transmission “was kind of a blow to the priorities of the administration,” considering the president’s stated commitment to tribes.

For Kenneth Kahn, council chair of the federally recognized Santa Ynez Band of Chumash Indians, there is a compromise to be made with wind developers by creating a clear permitting option through the sanctuary waters.

Although the Santa Ynez Band was not the original nominator for the marine sanctuary, it will be directly involved in its management if it is finalized, as it is the only federally recognized Chumash tribe.

Advertisement

Kahn said he understands the wind industry’s position that transmission permitting doesn’t seem clear in the NOAA documents, but doesn’t see that as an impossible hurdle.

“When there’s no absolute policy around it, they don’t see an avenue to get it done,” he said. “The other perspective is: Any developer is gonna take the path of least resistance.”

What is NOAA likely to do?

NOAA’s proposal is explicit that subsea electric transmission cables could be approved in a national marine sanctuary.

“NOAA’s experience at other sites indicates large cable construction projects may be successfully proposed and built within national marine sanctuaries,” the agency wrote in its draft environmental analysis.

There is precedence for the idea. For example, in the Olympic Coast National Marine Sanctuary off the coast of Washington state, fiber-optic submarine cables were installed under the seafloor in 1999 and 2000.

Advertisement

Along with saying that permits for transmission would likely need regular renewals, the agency suggested a unique framework for managing the sanctuary, including using several advisory boards that give the Santa Ynez, and potentially other tribal nations and bands, a seat at the management table.

But the absence of a detailed permitting process for offshore wind transmission was considered a sizable omission by developers and other proponents.

Fox, with ClearView, said NOAA appears willing to advance a transmission permitting process, but he noted that as a federal agency, NOAA isn’t ultimately trying to help the industry.

“There could be some flexibility. But NOAA’s primary responsibility is environmental protectionism,” he said. “It is not to facilitate offshore wind.”

Advocates who want both offshore wind and the sanctuary off the coast of Morro Bay are urging the agency to take a middle-of-the-road approach.

Advertisement

California Rep. Salud Carbajal, a Democrat who represents Morro Bay’s congressional district, has been advising the agency to use a sanctuary boundary without the transmission carve-out, while also making certain there’s a permitting process for power lines.

An aide in Carbajal’s office, who was granted anonymity due to the sensitivity of the negotiations, said the congressman has advocated this approach with both NOAA and the White House.

Another option that’s been proposed to NOAA is what developers have called a “phased approach.”

With that concept, transmission corridors could remain outside the sanctuary boundary until cables have been sited or even installed. When that occurs, sanctuary protections would become effective in waters containing the power lines.

We “are open to discussions about a future expansion of the Sanctuary once offshore wind transmission access has been assured,” said Lieberman, with Even Keel.

Advertisement

Webb, the Northern Chumash adviser, said NOAA is likely torn over what to do. She thinks when NOAA carved out a proposed corridor to reach the Morro Bay power plant, it signaled its preference to keep some energy infrastructure outside of the sanctuary boundaries.

“There may be a desire not to set a precedent of having such disruptive stuff within the sanctuary,” she said.



Source link

Advertisement

California

California Politics 360 Full Episode | $13M placed in bets on CA governor’s race

Published

on

California Politics 360 Full Episode | M placed in bets on CA governor’s race


Ashley Zavala sits down with Sacramento Assembly Member Maggy Krell about what more she says should be done.

Advertisement

California Politics 360 Full Episode | $13M placed in bets on CA governor’s race

Ashley Zavala sits down with Sacramento Assembly Member Maggy Krell about what more she says should be done.

Advertisement

California Politics 360 Full Episode | $13M placed in bets on CA governor’s race

Advertisement

Ashley Zavala sits down with Sacramento Assembly Member Maggy Krell about what more she says should be done.

Updated: 8:25 AM PDT Apr 5, 2026

Editorial Standards

Advertisement

At least $13 million has been placed in bets on the California governor’s race. In a state that doesn’t allow online sports betting, why are people allowed to bet on politics? The two most popular betting and prediction sites – Kalshi & Polymarket – are facing a flurry of lawsuits. Last week, Washington filed a lawsuit against Kalshi. Last month, Arizona’s attorney general filed criminal charges against the company. This week, California Sen. Adam Schiff joined three other senators in proposing legislation to block insiders from betting. Gov. Newsom also made some moves on the state level, banning state employees or his appointees and their family members from making bets on these sites using state information. Ashley Zavala sits down with Sacramento Assembly Member Maggy Krell about what more she says should be done. This year, California voters will decide who they want to be their next governor. Every week leading to the June primary, we will hear from one of the top 10 candidates running for the state’s highest position. This week, Ashley Zavala sat down with Republican Steve Hilton to get his thoughts on the major issues impacting Californians. New changes went into effect this week, impacting who is eligible for CalFresh. Ashley Zavala sits down with the Executive Director of the County Welfare Directors Association, Carlos Marquez III. We take a closer look at the responsibilities for California’s Insurance Commissioner ahead of the June primary.KCRA 3 Political Director Ashley Zavala reports in-depth coverage of top California politics and policy issues. She is also the host of “California Politics 360.” Get informed each Sunday at 8:30 a.m. on KCRA 3.

At least $13 million has been placed in bets on the California governor’s race. In a state that doesn’t allow online sports betting, why are people allowed to bet on politics?

The two most popular betting and prediction sites – Kalshi & Polymarket – are facing a flurry of lawsuits. Last week, Washington filed a lawsuit against Kalshi. Last month, Arizona’s attorney general filed criminal charges against the company.

Advertisement

This week, California Sen. Adam Schiff joined three other senators in proposing legislation to block insiders from betting. Gov. Newsom also made some moves on the state level, banning state employees or his appointees and their family members from making bets on these sites using state information.

Ashley Zavala sits down with Sacramento Assembly Member Maggy Krell about what more she says should be done.

This year, California voters will decide who they want to be their next governor. Every week leading to the June primary, we will hear from one of the top 10 candidates running for the state’s highest position. This week, Ashley Zavala sat down with Republican Steve Hilton to get his thoughts on the major issues impacting Californians.

New changes went into effect this week, impacting who is eligible for CalFresh. Ashley Zavala sits down with the Executive Director of the County Welfare Directors Association, Carlos Marquez III.

Advertisement

We take a closer look at the responsibilities for California’s Insurance Commissioner ahead of the June primary.


KCRA 3 Political Director Ashley Zavala reports in-depth coverage of top California politics and policy issues. She is also the host of “California Politics 360.” Get informed each Sunday at 8:30 a.m. on KCRA 3.

Advertisement

`;
}

function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=” + Date.now();
}
}

function initializeWeatherBox(container) {
var containerId = container.getAttribute(“data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;

Advertisement

function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});

clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);

container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});

var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}

function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}

Advertisement

var location = { zip: window.DEFAULT_ZIPCODE };

try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}

var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;

if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}

function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;

Advertisement

var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);

if (weatherData.alerts_count > 0) {
weatherWatchHeader.className=”weather-watch-header has-alerts”;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, “https://www.kcra.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘mobile-weather’, “https://www.kcra.com/alerts”);”);
}
} else {
weatherWatchHeader.className=”weather-watch-header”;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}

function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;

var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}

var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className=”weather-grid–current-icon weather-current-icon icon icon-weather-” + weatherData.current.icon_name;
}

Advertisement

var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}

var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}

var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}

updateWeatherBackground(weatherData.current.icon_name);
}
}

function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage=”url(” + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}

Advertisement

function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;

if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html=””;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);

for (var i = 0; i 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex

`;
}

function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=” + Date.now();
}
}

Advertisement

function initializeWeatherBox(container) {
var containerId = container.getAttribute(“data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;

function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});

clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);

container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});

var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}

Advertisement

function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}

var location = { zip: window.DEFAULT_ZIPCODE };

try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}

var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;

if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}

Advertisement

function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;

var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);

if (weatherData.alerts_count > 0) {
weatherWatchHeader.className=”weather-watch-header has-alerts”;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, “https://www.kcra.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘sidelist-weather’, “https://www.kcra.com/alerts”);”);
}
} else {
weatherWatchHeader.className=”weather-watch-header”;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}

function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;

var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}

Advertisement

var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className=”weather-grid–current-icon weather-current-icon icon icon-weather-” + weatherData.current.icon_name;
}

var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}

var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}

var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}

updateWeatherBackground(weatherData.current.icon_name);
}
}

Advertisement

function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage=”url(” + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}

function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;

if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html=””;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);

for (var i = 0; i 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex

Loading more articles…

Advertisement



Source link

Continue Reading

California

Loved ones search for missing 15-year-old Southern California girl 

Published

on

Loved ones search for missing 15-year-old Southern California girl 


Loved ones are searching for a Southern California girl who has been missing for more than six months.

Keylin Reyes-Moreno, 15, was reported missing on Sept. 22, 2025, according to the National Center for Missing & Exploited Children (NCMEC).

Reyes-Moreno was last seen in the Pacoima area.

She is 5 feet 6 inches tall and weighs 120 pounds. She has brown hair and dark brown eyes.

Advertisement
Keylin Reyes-Moreno, 15, was last seen in Pacoima on Sept. 22, 2025. (National Center for Missing & Exploited Children)

She may have been heading to the Los Angeles area when she disappeared.

Her family did not mention any health or mental issues that would’ve contributed to her disappearance. They have not heard from her since and are very concerned for her well-being.

Anyone who may know Keylin Reyes-Moreno’s whereabouts or has information on the case is asked to call NCMEC at 1-800-843-5678 or the Los Angeles Police Department at 877-275-5273.



Source link

Advertisement
Continue Reading

California

Springs Fire in southern California reaches 45% containment as evacuations continue

Published

on

Springs Fire in southern California reaches 45% containment as evacuations continue


RIVERSIDE, Calif. — Crews were making progress Saturday battling a fast-growing and smoky wildfire in southern California that broke out Friday morning, prompting mandatory evacuations and warnings.

Now encompassing roughly 6.3 square miles (about 16 square kilometers) east of Moreno Valley in Riverside County, the Springs Fire was 45% percent contained on Saturday, according to a state website. It was 25% contained on Friday.

More than a dozen zones in the county remained under mandatory evacuation orders or evacuation warnings, while six have been dropped. It was not immediately known how many households were affected by the orders.

Firefighters were battling strong winds. The National Weather Service issued an advisory for 15 mph to 20 mph winds, with gusts up to 45 mph, into Saturday afternoon. An air quality alert has also been issued for harmful fine particle pollution levels due to wildfire smoke.

Hundreds of people have been battling the blaze using helicopters, engines and water tenders. It’s located in a populated unincorporated part of Riverside County, in a recreational area near the city of Moreno Valley, which has a population of roughly 200,000. The city is 10 miles southeast of Riverside and 64 miles east of Los Angeles.



Source link

Advertisement
Continue Reading

Trending