Connect with us

California

Massive deluge tests California’s readiness and resolve

Published

on

Massive deluge tests California’s readiness and resolve


Charles Garcia got the call Saturday night. Officials were expecting a mandatory evacuation of residents along La Tuna Canyon Road due to a slow-moving, massive rainstorm forecast to slam into Southern California the next day. Could he ready the senior center in Sunland, a neighborhood in northern Los Angeles, to receive local residents?

Upward of 14 million residents are under a high risk of excessive rain across Southern California on Monday, as a widespread storm moved in from the Pacific Ocean over the weekend. It has pummeled much of the state with gale-force winds and heavy rain, causing falling trees, flooding, and downed power lines. More than 500,000 people had experienced power outages as of Monday morning. Two people died in Northern California from trees that fell.

Why We Wrote This

Southern California faces increasingly supercharged weather – prodding the state to ramp up preparedness efforts such as for evacuations and rescues.

The storm is taking its time, and that’s part of the problem as rain totals pile up on top of ground already saturated by an earlier storm. In areas of Los Angeles, the storm is expected to have dropped close to half a year’s worth of rain by the time it winds down on Tuesday.

Advertisement

But as storms grow more intense, the state has also been investing increasingly in preparedness efforts – like Mr. Garcia’s – to keep people safe.

Charles Garcia got the call Saturday night. Officials were expecting a mandatory evacuation of residents along La Tuna Canyon Road due to a slow-moving, massive rain storm forecast to slam into Southern California the next day. Could he ready the senior center in Sunland, a neighborhood in northern Los Angeles, to receive local residents?

The mountainous area was in danger of landslides because a fire just two years ago had left steep slopes vulnerable. By 6:30 a.m. Sunday, Mr. Garcia was at the senior center, setting up tables with tablecloths for meals and snacks and marking off a section for 125 cots. He well remembers California’s exceptionally wet winter last year, and says the storms “are definitely more frequent.”

Welcome to California, famed for its Mediterranean climate but now trying to adapt to more intense weather, be it drought, fire, or rain. Already at the start of last week, outreach workers were fanning out across the Los Angeles basin to warn homeless people of the approaching megastorm, directing them to four local shelters. The governor mobilized thousands of state transportation workers, hundreds of first-aid responders, swift-water rescue teams, and provided for millions of sandbags across the state. 

Advertisement

Why We Wrote This

Southern California faces increasingly supercharged weather – prodding the state to ramp up preparedness efforts such as for evacuations and rescues.

“California is ready with a record number of emergency assets on the ground to respond to the impacts of this storm,” said Gov. Gavin Newsom on Sunday, as he announced a state of emergency across eight counties in Southern California. In the past five years, California will have spent a total of $40.2 billion of its state budget to mitigate climate change and its impacts.


Francine Kiefer/The Christian Science Monitor

Los Angeles City Council member Monica Rodriguez (left) drops by to check readiness and talk with Charles Garcia, facility director of the Sunland Senior Citizen Center in California, which is set up to receive evacuees Feb. 4, 2024.

Advertisement

A storm’s widespread damage

Now comes the test of how the state’s rising efforts at preparedness are working – after more than 6 inches of precipitation in Los Angeles by Monday morning and significant rainfall elsewhere.

Upward of 14 million residents were under a high risk of excessive rain across Southern California, as a widespread storm moved in from the Pacific Ocean over the weekend. It has pummeled much of the state with gale-force winds and heavy rain, causing toppled trees, flooding, and downed power lines. More than 500,000 people had experienced power outages as of Monday morning. Two people died in Northern California from trees that fell.

Advertisement

The storm is taking its time, and that’s part of the problem as rain piles atop ground already saturated by an earlier storm. In areas of Los Angeles, the storm is expected to have dropped close to half a year’s worth of rain by the time it winds down on Tuesday.


SOURCE:

NOAA Weather Prediction Center

|

Advertisement

Jacob Turcotte/Staff

Flows of mud and debris damaged homes in the Hollywood Hills area and forced residents to flee. The National Weather Service in Los Angeles described conditions there and in the surrounding Santa Monica Mountains as an “extremely dangerous situation” and warned of “life-threatening landslides and additional flash flooding.” In the Sierra Nevada mountains, some parts have measured more than 2 feet of snow this week.

“Weather whiplash,” or swings between drought and rain, is not unusual for California, according to scientists. This is an El Niño weather year, when trade winds in the Pacific weaken and push warm water toward the West Coast, producing wetter-than-usual winters and flooding. But as climate change warms the oceans, that adds to the fuel for more intense storms.

Advertisement

Residents brace for storm impact

Back at the Sunland senior center on Sunday, Los Angeles City Council member Monica Rodriguez dropped by to check in on things. She started her day at 3:30 a.m., coordinating with first responders, police, and others to receive evacuees – including animals. A nearby coffee shop was preparing hot drinks for the center, and LA Animal Services was set to deliver small cages for house pets.


Francine Kiefer/The Christian Science Monitor

Marnye Langer, general manager of Hansen Dam Horse Park, greets a horse taking refuge at the large animal evacuation site in Lake View Terrace, California, Feb. 4, 2024.

Advertisement

Ms. Rodriguez had also been to the La Tuna Canyon area that morning to explain the weather conditions and build trust with the community about a likely evacuation. “This is an area that has historically experienced mass evacuations in the past, largely because of wildfire,” she says. But not everyone heeds the warnings. As of early afternoon on Monday, no one was at the senior center, though a handful of residents had reportedly gone to stay with family and friends. “There’s evacuation fatigue,” Ms. Rodriguez says.

It’s also an area with a lot of horses. By 11 a.m., a mandatory evacuation had been called, and horse trailers were pulling into the Hansen Dam Horse Park, just a few miles away from the senior center. When it comes to providing emergency shelter for large animals, this was not the first rodeo for Marnye Langer, general manager of the park. Because the site is also used for events and horse shows, it had just under 350 stalls ready and waiting.

This was a big help to Sheila McClure, who operates La Tuna Stables, which boards horses on La Tuna Canyon Road. She worked quickly to unload horses from a trailer and settle them into their stalls. “Better safe than sorry,” she said, as overhead clouds threatened. Last year, the fire department told her she was on the fringe of a mudslide area. But she couldn’t stop to talk. “I’ve got to go back and get more horses.”

Advertisement



Source link

California

California Farmers Struggle to Weather the Agriculture Crisis | KQED

Published

on

California Farmers Struggle to Weather the Agriculture Crisis | KQED


Failed to save article

Please try again

Advertisement

A farmer works the field in Kern County on the outskirts of Mettler, California, on April 8, 2025. (Frederic J. Brown/Getty Images)

Guests:

Dan Sumner, professor of Agricultural and Resource Economics, UC Davis

Don Cameron, vice president and general manager, Terranova Ranch; president, California State Board of Food and Agriculture

Stuart Woolf, president and CEO, Woolf Farming & Processing

Advertisement

Alexis Maxwell, senior equity analyst, Bloomberg Intelligence





Source link

Continue Reading

California

See How Meghan Markle and Prince Harry Celebrated Easter in California With Their Children

Published

on

See How Meghan Markle and Prince Harry Celebrated Easter in California With Their Children


While the royal family gathered in Windsor this morning to attend Easter Sunday services, the holiday looked quite different in Montecito, California for Prince Harry, Meghan Markle, and their two children, Prince Archie and Princess Lilibet.

On Instagram, Meghan shared videos from their day, including feeding their chickens, gathering eggs, watching Archie and Lilibet race on an Easter egg hunt with their dogs following, Lilibet, in a pink dress, holding a large stuffed bunny toy while wearing bunny ears, and Archie working on decorating eggs. “Happy Easter!” she wrote in the caption . Watch the clips here:

In With Love, Meghan, Meghan spoke about collecting eggs from her chickens. “What’s really cool is with whatever’s going on in life, to be able to do something like this,” Meghan tells the camera about collecting eggs from her chickens. “It’s just fun. It’s fun for kids and for adults. But, if a morning starts like this [snaps], you think about your day differently.”

Harry and Meghan’s Netflix docuseries, Harry & Meghan, offered a sweet glimpse into their Easter traditions in California. In the sixth episode, cameras capture the Duke and Duchess of Sussex, along with Meghan’s mom Doria, as they set up an Easter egg hunt for Archie in April 2021.

Advertisement
Screenshot/Netflix

Meghan, pregnant with Lilibet, on Easter 2021.

prince harry meghan markle easter egg hunt netflix
Screenshot/Netflix

Harry places an egg underneath a Peter Rabbit character.

prince harry meghan markle easter egg hunt netflix
Screenshot/Netflix

The Sussexes setting up an Easter egg hunt for Archie in their backyard.

On ShopMy last year, Meghan shared her Easter essentials, which included children’s clothing picks from J.Crew, Boden, and Petite Plume, among other brands, and Easter hosting items such as children’s toys and home goods. Earlier this week, she was spotted shopping for Easter gifts at a local Montecito shop. “She was there for a while, talking to the staff and making selections,” a source told People at the time.

In addition, last month, her brand As Ever launched a limited-edition “Bloom Box” in collaboration with High Camp Supply, a San Francisco-based luxury florist. The box was meant to ship in time for Easter.

Advertisement

Headshot of Emily Burack

Emily Burack (she/her) is the Deputy Digital Editor for Town & Country, where she covers entertainment, celebrities, the royals, and a wide range of other topics. Before joining T&C, she was the deputy managing editor at Hey Alma, a Jewish culture site. Follow her @emburack on Instagram, Twitter, and other social media platforms.



Source link

Continue Reading

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

Trending