Connect with us

Iowa

Women’s bracket winners, losers and a difficult path for Iowa

Published

on

Women’s bracket winners, losers and a difficult path for Iowa


There won’t be a rematch of the national championship game in women’s college basketball in 2024, but LSU vs. Iowa could be a blockbuster of an Elite Eight matchup. If both even get that far, that is.

Who are the winners and losers of the women’s NCAA tournament bracket? We start on the losers’ side, and it begins with the last two teams standing in 2023. Both aren’t going to make it to Cleveland. In fact, neither one might be there.

The Albany 2 Regional has three teams that many might have picked to make the Final Four before the bracket was revealed: defending national champion LSU, national runner-up Iowa and UCLA.

Who thought this was a good idea? Apparently the NCAA selection committee, which decided to jam-pack that trio together, along with No. 4 seed Kansas State.

Advertisement

As ESPN analyst Rebecca Lobo said, South Carolina, the No. 1 overall seed in the tournament and top seed in the Albany 1 Regional, earned — and received — what appears to be the so-called “easiest” regional bracket. Iowa — a No. 1 seed for the first time since 1992 — should have earned the second-easiest corner of the bracket, but instead got the hardest.

The Big Ten tournament champion Hawkeyes, SEC tournament runner-up LSU and Pac-12 semifinalist UCLA were all in the top four in the preseason Associated Press poll and are in the top eight now. Of course, poll rankings are one thing and NCAA tournament placement another. Still, it’s a surprise to see them all together.

“Initially, I just thought, ‘Oooh, this is a tough, tough region,’” LSU coach Kim Mulkey said of her first reaction to the bracket.

Let’s further break down the women’s bracket winners and losers, and what the path ahead looks like for unbeaten South Carolina and Caitlin Clark and Iowa.

Advertisement

Winners

play

1:25

Carolyn Peck: South Carolina is motivated going into the tourney

Carolyn Peck, Andraya Carter, Rebecca Lobo and Elle Duncan break down South Carolina’s path in the women’s NCAA tournament.

South Carolina Gamecocks

Two-time national champion South Carolina is in Albany 1 Regional along with No. 2 Notre Dame, No. 3 Oregon State and No. 4 Indiana. The Irish are the ACC tournament champions and are playing well, but the Gamecocks have the benefit of having faced them already this season. That was back in November in Paris — a 29-point Gamecock victory — and both teams have since grown a lot.

Advertisement

The Gamecocks have been so good they were probably going to be “winners” regardless of their bracket matchups. But coach Dawn Staley should be pleased with the path in front of her team.

Center Kamilla Cardoso will miss South Carolina’s opener against the Presbyterian-Sacred Heart winner after her ejection for fighting in the SEC tournament final. That will be of little consequence in that game. But the Gamecocks will be glad to have her back against the winner of North Carolina-Michigan State, the 8-9 matchup.

Provided the Gamecocks get through to the Sweet 16 — they last fell in the second round in 2013 — they could face a No. 4 seed Indiana team that hopes to be much healthier since its quarterfinal loss in the Big Ten tournament.

If there is an Elite Eight matchup between South Carolina and Notre Dame, we’ll see two of the best freshmen in the country in the Gamecocks’ MiLaysia Fulwiley and the Irish’s Hannah Hidalgo. But South Carolina’s inside presence and depth should take the Gamecocks through to Cleveland.

Advertisement

Ivy League

The conference got two teams in the field: Ivy Madness champion Princeton and runner-up Columbia. It’s just the second time two Ivy teams reached the field (Penn and Princeton advanced in 2016).

The Tigers and Lions both finished 13-1 in league play, with Columbia handing Princeton its lone league loss, 67-65 on Feb. 25 in New York.

play

0:40

Andraya Carter: Regional 3 is the ‘certified bucket’ region

Advertisement

Andraya Carter breaks down how Regional 3 in the women’s NCAA tournament is filled with “certified bucket” getters.

USC Trojans

Not since 1986, Trojans legend Cheryl Miller’s senior year, had the program earned a No. 1 seed until Sunday. USC, the top seed in the Portland 3 Regional, has had a breakthrough season, thanks in large part to JuJu Watkins, the top freshman in a stellar rookie class. But as the Trojans proved in winning the Pac-12 tournament final when Stanford focused on shutting down Watkins, USC is more than just its young superstar.

The Trojans have waited a long time — since 1994 — to host the early rounds of the NCAA tournament again, so that’s exciting for USC, too.

USC looks to have a good path to the Elite Eight, where an epic showdown with Paige Bueckers and No. 3 seed UConn — by far the most decorated team in this corner of the bracket – could await.

Advertisement

Texas Longhorns

The Big 12 tournament champion earned its first No. 1 seed since 2004. The Longhorns, like fellow No. 1 seed Iowa, didn’t win their conference regular-season title but did win the league tournament.

After losing star guard Rori Harmon for the season in late December to a knee injury, Texas had to navigate Big 12 play without her. They lost to Baylor, Kansas State and regular-season champ Oklahoma twice. In the Big 12 tournament, the Longhorns beat Kansas, K-State and Iowa State, with freshman Madison Booker winning MVP honors.

Texas has made the Elite Eight twice since Vic Schaefer took over as coach in 2020-21. He said after the Big 12 final that he thought the Longhorns had proven they deserved a No. 1 seed. The committee agreed.

“When you win a championship in a league, you play the schedule these kids have played, I don’t know what else we could do,” Schaefer said. “I feel really confident in this team. They’ve done nothing but show me that they can do it.

Advertisement
play

0:54

Why Texas is a team to fear in the women’s tourney

Charlie Creme, Rebecca Lobo, Carolyn Peck and Andraya Carter break down Regional 4 in the women’s NCAA tournament.

UConn Huskies and Tennessee Lady Vols

Both teams could make waves in the bracket. UConn ran the table in the Big East this season. The Huskies could be motivated by a potential revenge matchup with Ohio State in the Sweet 16, as the Buckeyes knocked UConn out of the tournament in that round last year.

Advertisement

Tennessee, the Portland 4 Regional No. 6 seed, comes into the NCAA tournament smarting from a last-second loss to South Carolina in the SEC semifinals. But the Lady Vols know from the way they’ve played the Gamecocks that they can compete with anyone.

Tennessee’s potential path to the Sweet 16, which would likely involve a win at No. 3 seed NC State in the second round, isn’t easy. But the Lady Vols have a chance.

Losers

Iowa Hawkeyes

Last season, Stanford — the No. 1 seed in Iowa’s regional — was eliminated in the second round by Ole Miss. The Rebels were subsequently defeated by Louisville, which then fell to Iowa in the Elite Eight.

It wasn’t an easy path to the Final Four for the Hawkeyes in 2023, but it seems easier in retrospect to what they could face this season in Albany 2.

Advertisement

The potential difficulty starts in the second round. The Hawkeyes, who shouldn’t have trouble in their opener against the Holy Cross-UT Martin winner, would face the 8-9 West Virginia-Princeton winner next.

Last year, Georgia’s ability to defend Iowa made for a nerve-wracking second-round win for the Hawkeyes. It could be similar if they face West Virginia, which leads the Big 12 in steals. Against Princeton, Iowa would face a program that upset Kentucky two years ago.

Should seeds hold, Iowa will have a third meeting this season vs. Kansas State; the teams played twice in November, with the Wildcats winning the first and the Hawkeyes the second. Center Ayoka Lee provides the muscle inside for a K-State team that pushed Texas in the Big 12 semifinals.

If Iowa makes the Elite Eight against either No. 2 UCLA or No. 3 LSU, one of the biggest issues will be how the Hawkeyes combat the size inside for both teams.

UCLA Bruins

Advertisement

Placement-wise, the Bruins wouldn’t mind trading spots with their Pac-12 rivals Stanford in Portland 4 or USC in Portland 3. But it didn’t work out that way after UCLA fell to the Trojans in the Pac-12 tournament semifinals. The Pac-12, in its final season as we know it, has three teams in the top two seeds for the first time in conference history. UCLA appears to have the toughest path of the three.

The Bruins won an AIAW championship in 1978. But it’s fair to say UCLA is the best program to never make the women’s Final Four in the NCAA era, which began in 1982. During parts of this season, the Bruins looked as if they had a strong chance to make that breakthrough in 2024. We’re not ruling them out, especially with a fifth-year senior leader in Charisma Osborne and a stellar sophomore class that includes 6-foot-7 post Lauren Betts.

But being in this regional makes it more difficult for the Bruins. If seeds hold, they would have to get through LSU and Iowa back-to-back, two very different types of teams. Can UCLA do it? Yes, but it’s a real challenge.

LSU Tigers

The defending champs, the No. 3 seed in Albany 2, also fit into our bracket losers. However, their path doesn’t seem quite as tough as that of Iowa or UCLA. For three reasons: One, they’ve already played the best team in the country, South Carolina, twice. The Tigers lost their SEC regular-season and tournament matchups with the Gamecocks, but they hung with them both times. Second, LSU won the NCAA title last season, beating Iowa in the final, so the Tigers should face this regional with confidence. Third, Mulkey already has four national championships as a coach. This is her time of year.

Advertisement

Miami Hurricanes

Last year, the Hurricanes were one of the biggest stories of March on the women’s side. A No. 9 seed, they beat No. 8 Oklahoma State, No. 1 Indiana and No. 4 Villanova to reach the Elite Eight, where they lost to eventual national champion LSU.

But last year’s mojo didn’t carry over for Miami to 2024. The Hurricanes went 19-12 overall but were 8-10 in the ACC. Victories over NCAA tournament teams NC State, Duke and North Carolina weren’t enough to offset some of Miami’s losses.



Source link

Advertisement

Iowa

Iowa State basketball lands Northern Iowa transfer Leon Bond III

Published

on

Iowa State basketball lands Northern Iowa transfer Leon Bond III


play

The name’s Bond — Leon Bond III — and he’s Iowa State men’s basketball’s first transfer portal commit of the 2026 cycle.

Bond was one of several reported to be visiting Ames this weekend, and he announced his commitment on Friday, April 10. He will have one year of eligibility remaining.

Advertisement

Bond, a 6-foot-5, 200-pound guard from Wauwatosa, Wisconsin, spent the last two seasons at Northern Iowa, after originally starting his collegiate career at Virginia.

Bond is coming off of a career-best year with the Panthers. He averaged 11.9 points, 4.7 rebounds and 1.5 assists, while shooting 47.3% overall, 36.2% from 3-point range and 75% from the free-throw line. He earned All-Defensive Team honors in the Missouri Valley Conference and was one of the key players in helping Northern Iowa win the conference tournament and make its first NCAA Tournament appearance in a decade.

Across his two seasons in Cedar Falls with the Panthers, he appeared in 59 games with 57 starts and averaged 11 points and 4.6 rebounds per game. Before that, he played one season for former coach Tony Bennett at Virginia in 2023-24, where he played 24 games off the bench, averaging 4.1 points over 12.3 minutes per game.

Offensively, he’s a solid athlete capable of getting to the basket and making plays above the rim, while showing an improved perimeter jumper that he’s worked on over the years. Defensively, he provides versatility and an ability to guard multiple positions. His length, athleticism and motor bode well for him as he transitions into Iowa State’s system.

Advertisement

As the first transfer commit for Iowa State, Bond is helping replenish the Cyclones’ roster after the graduations of Tamin Lipsey, Joshua Jefferson, Nate Heise, Dominick Nelson and Eric Mulder.

They also saw Mason Williams and Cade Kelderman enter the portal since it first opened on April 7. College basketball players will have until April 21 to decide if they are staying with their current schools or entering the transfer portal.

Eugene Rapay covers Iowa State athletics for the Des Moines Register. Contact Eugene at erapay@gannett.com. Follow him on Twitter at @erapay5.





Source link

Advertisement
Continue Reading

Iowa

Iowa wrestling taps Jacob Warner as new assistant coach

Published

on

Iowa wrestling taps Jacob Warner as new assistant coach


play

Iowa wrestling will bring in a familiar face to fill out its coaching staff, tapping five-time NCAA All-American Jacob Warner to join as an assistant coach.

Advertisement

The Hawkeye wrestling program announced the decision on April 10. He replaces Bobby Telford, who took a position outside of wrestling after the 2025-26 season ended.

With Warner’s hire, all four official coaching positions at Iowa are held by former Hawkeye wrestlers — head coach Tom Brands, associate head coach Terry Brands, assistant coach Ryan Morningstar and Warner. (Telford also wrestled for the Hawkeyes.)

While Warner does not have official coaching experience, being in the Hawkeye Wrestling Club allowed him to help sharpen athletes still competing in the college ranks. Warner has been credited by several wrestlers in the program for helping their development, none bigger than national champion Stephen Buchanan.

“Jacob knows what it takes to compete at the highest level, both on and off the mat,” Tom Brands said in a release. “He represents everything Iowa wrestling stands for. His toughness, discipline and relentless work ethic will be a tremendous asset to our staff and our student-athletes.”

Advertisement

As a wrestler, Warner had a career record of 97-28 in a Hawkeye singlet. He took seventh at the NCAA Championships in 2019 as a redshirt freshman, earned All-American honors for the canceled 2020 NCAA Championships, then was fourth in 2021, an NCAA runner-up in 2022 and finished his career in fifth place in 2023. Warner also has experience on the major World stages. He won a bronze medal at the 2016 Cadet World Championships and was on the 2018 Junior World team for the United States.

The Hawkeyes have a pivotal 2026-27 season ahead, following a fourth-place finish at the NCAA Championships and a regular season to forget. Time will tell whether Warner’s official addition to the staff can help spark better results as the Hawkeyes look to return to their championship ways.

“Our fans, I see them on the street, I see them here, I see them there, I say, ‘We got to do better for you,’” Tom Brands said after the NCAA Championships. “We know that.”

Eli McKown covers high school sports and wrestling for the Des Moines Register. Contact him at Emckown@gannett.com. Follow him on Twitter at @EMcKown23.

Advertisement





Source link

Continue Reading

Iowa

Iowa State women’s basketball team adds transfer guard from Kent State

Published

on

Iowa State women’s basketball team adds transfer guard from Kent State


Iowa State women’s basketball team adds transfer guard from Kent State

Advertisement

ROUND PICK. WE’LL BE PULLING FOR HIM. THE DRAFT STARTS THURSDAY, APRIL 23RD. CYCLE IN. WOMEN LOST NEARLY THEIR ENTIRE ROSTER THURSDAY. THEY GOT ONE BACK. MAYA BABBITT IS COMING OVER FROM KENT STATE. SHE LED THAT TEAM AT 16 POINTS PE

Advertisement

Iowa State women’s basketball team adds transfer guard from Kent State

Updated: 10:40 PM CDT Apr 9, 2026

Editorial Standards

Advertisement

Iowa State got a strong start on its 2026 transfer class Thursday.Kent State guard Mya Babbitt announced her commitment to Iowa State.Babbitt, a 5’8″ guard from Papillion, Nebraska, has been a two-year starter for the Golden Flashes and earned second-team All-MAC honors in 2025-26 after averaging 16.1 points and 4.0 rebounds per game. She also set the Kent State record for 3-pointers in a season as a sophomore, making 83 3-pointers at a 41.5% clip.Babbitt is the first incoming transfer to announce her commitment to Iowa State this offseason. She will have one year of eligibility remaining.The Cyclones are tasked with replacing nearly the entire roster from 2025-26 after nine players entered the transfer portal.Senior-to-be Arianna Jackson has announced her return, as has reserve guard Freya Jensen. Iowa State also brings in highly touted recruit Macy Comito. Comito led Carlisle High School to its first state title this winter.» Subscribe to KCCI’s YouTube page» Download the free KCCI app to get updates on the go: Apple | Google Play

Iowa State got a strong start on its 2026 transfer class Thursday.

Advertisement

Kent State guard Mya Babbitt announced her commitment to Iowa State.

Babbitt, a 5’8″ guard from Papillion, Nebraska, has been a two-year starter for the Golden Flashes and earned second-team All-MAC honors in 2025-26 after averaging 16.1 points and 4.0 rebounds per game. She also set the Kent State record for 3-pointers in a season as a sophomore, making 83 3-pointers at a 41.5% clip.

This content is imported from Twitter.
You may be able to find the same content in another format, or you may be able to find more information, at their web site.

Advertisement

Babbitt is the first incoming transfer to announce her commitment to Iowa State this offseason. She will have one year of eligibility remaining.

The Cyclones are tasked with replacing nearly the entire roster from 2025-26 after nine players entered the transfer portal.

Senior-to-be Arianna Jackson has announced her return, as has reserve guard Freya Jensen. Iowa State also brings in highly touted recruit Macy Comito. Comito led Carlisle High School to its first state title this winter.

» Subscribe to KCCI’s YouTube page

» Download the free KCCI app to get updates on the go: Apple | Google Play

Advertisement
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’;

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’);

Advertisement

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;
}

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) {}

Advertisement

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;

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.kcci.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘mobile-weather’, “https://www.kcci.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);
}
}
}
}

Advertisement

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;
}

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’);
}

Advertisement

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);
}
}

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);

Advertisement

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();
}
}

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’);
});

Advertisement

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;
}

var location = { zip: window.DEFAULT_ZIPCODE };

Advertisement

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;

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

Advertisement

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.kcci.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘sidelist-weather’, “https://www.kcci.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;
}

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

Advertisement

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);
}
}

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

Advertisement

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…



Source link

Advertisement
Continue Reading

Trending