Connect with us

Iowa

Iowa 97, Nebraska 87: Payton Sandfort's Overtime Revenge

Published

on

Iowa 97, Nebraska 87: Payton Sandfort's Overtime Revenge


Iowa 97, Nebraska 87: Payton Sandfort’s Overtime Revenge

IOWA CITY — Behind a furious second-half comeback and outlasting Nebraska (12-3,2-2) in overtime, Iowa (11-4, 2-2) took the victory over the Cornhuskers, 97-87 on Tuesday night in Carver-Hawkeye Arena.

Advertisement

Here are three takeaways from the win.

Payton Sandfort: Confirmed Back

After scoring just two points on 1-9 shooting in Iowa’s 116-85 loss to Wisconsin on Friday, Sandfort had a rough first half. Over the first 20 minutes, it looked as though the senior may continue his cold streak, as he started 0-2 with zero points.

“At halftime, I was pretty upset,” Iowa’s second-leading scorer said postgame. “I went into the locker room and acted like I was going to the bathroom, but I read some Bible verses, read some notes to myself. Once I saw one go in [in the second half], I just felt like myself again.”

The first triple he made after the half was a small miracle in itself — and it showed Sandfort that he was ready to break through the rough shooting streak.

“I got a roll off the top of the backboard,” Sandfort smiled. “It seems like ever shot this year has rimmed out. From there I knew I was going. I was like ‘Alright. It’s about time.’”

Advertisement

It was time, indeed. Sandfort proceeded to score 30 points in the second half and overtime, shooting 8-13 in the second half, including going 6-of-9 from three. He earned some pretty high praise from his head coach afterward, too.

“The only thing close to it that I’ve seen, (Jarod) Uthoff had 30 in the first half at Iowa State a couple years ago. More than a couple years ago,” Fran McCaffery said postgame. “He made big shots in the second half that just changed everything.”

McCaffery continued, Sandfort’s scoring was generated without too much of a concerted effort by he and the staff.

“We wanted to get him going, you know, so we tried to run some stuff for him. But the way they play defense, it has to happen naturally,” he said. “You got to move it, you got to push it in transition, he got some there. We did run some stuff for him, so we got some stuff there. But for the most part, you know, we just got to move it, move it, move it and find him.”

Advertisement

Clawed Back

Thanks in part to Sandfort, Iowa rallied back from 15-point deficit with 14:54 left. The Waukee, Iowa native pointed to a lack of defensive effort for the 52-37 Nebraska lead.

“To start the half, we were pretty lax defensively, Sandfort said. “We were making bad plays, turning the ball over.”

McCaffery pushed the team to stay the course.

“Well, there’s plenty of time,” McCaffery said, who remained calm despite trailing by double-digits. “There’s no need to panic, you know, we’ve got a group with great character. They were locked in during the timeout. Obviously we scored the next five, and that changes everything.”

Sandfort relayed a similar message to his head coach.

Advertisement

“I just kind of told everybody, we’re gonna be fine,” he said. “This is game 15, we got more than half the season left. Let’s just relax, let’s change the season right now, and let’s just get gritty. And we got gritty guys, and I think we’ve seen it all season, except for that Wisconsin game. But we really gritted down.”

He pointed beyond his own heroic performance as to how the team pulled off the win.

“Everybody had to contribute, but we stayed together,” he added. “And that’s the mantra, bad teams fall apart when things go bad. And I just tell everybody, if we stay together as a team and block out what everybody’s saying, just be in the room, be present, be where your feet are, then it always turns out all right.”

It almost didn’t turnout alright. After the ferocious comeback and holding a three-point lead with 3.5 seconds remaining, Nebraska’s Brice Williams — who finished with a team-lead 28 points — drilled a buzzer-beating three-pointer to send the game into overtime.

Advertisement

“Right away, we had a chance to get on the floor and get the loose ball,” Nebraska head coach Fred Hoiberg said postgame. “We didn’t do it, we didn’t get it. And they got out again, and transition was the problem with us.”

The Hawkeyes did get out and get going in OT, outscoring the Cornhuskers 21-11 in the final five minutes. Sandfort was proud of his team’s post-regulation effort.

“Just knowing that we can do it. Especially after what happened at the end of regulation the way that we came together in overtime — it was really player-led, the way that we were talking to each other,” Sandfort said. “The coaches put us in good spots, but the way that we stayed together, the five of us on the floor and the guys on the bench,(3:55)was really what pushed us over the edge. And I hope we know that we can build on that and keep moving forward.”

Don’t Forget Di

Ultimately the win doesn’t happen without the efforts of Dix and Owen Freeman.

Alongside Sandforts 30-point second-half and overtime, Dix put up a team-lead 31 points, including nine points in overtime to help seal the victory. He went 10-14 from the field and 7-10 from the three point line.

Advertisement

“I think Dix is a hell of a player,” Hoiberg said postgame. “I think he’s the most underrated player in this league.”

The statement wasn’t a shock to Sandfort, who has seen Dix develop from a gangly freshman one of the Hawkeyes’ three best players.

“He’s about as good as he gets from a toughness standpoint, from a skill standpoint,” Sandfort said. “Nothing rattles him, nothing makes him excited. He’s just out there playing ball. And the things that he’s battled through, I think, have made him tough and(5:00)made it so that he doesn’t rattle him.”

And Dix played all but 22 seconds of the game. With Drew Thelwell out due to a “tweaked lower leg” injury and Cooper Koch missing the game due to a previously noted medical condition, Dix was forced to play nearly all 45 minutes.

Advertisement

“I’m going to need an ice bath,” Dix joked. “I feel good that we won. My body hurts a little bit, but I’m good.”

“He was exhausted,” McCaffery added. “I mean he played as hard as he could every possession at both ends of the floor — and made phenomenal decisions, made big shots, made big plays. He was really, really special. … Steals, assists, rebounds. That’s who he is.”

Dix’s 31 points paired with Sandfort’s scoring effort resulted in Iowa’s first duo to score 30+ points since Jordan Bohannon and Keegan Murray did the same at Maryland in 2022.

“That’s crazy,” Dix said. “Payton was going crazy in the second half, so we just kept feeding him. In overtime, I got the ball in my hands a little bit more. He also just took over. It was great.”

NEXT: Iowa will face Indiana (12-3, 3-1) in Carver Hawkeye-Arena on Saturday, January 11. The game will be broadcast at 7 pm CST on Fox.

Advertisement

Iowa will host a high-priority official visitor this weekend for the matchup with the Hoosiers.

Don’t miss out on any of our exclusive football, basketball, and recruiting coverage. Sign up with Hawkeye Beacon here.



Source link

Iowa

Tornadoes and hail reported across northern Iowa counties

Published

on

Tornadoes and hail reported across northern Iowa counties


Tornadoes and hail reported across northern Iowa counties

Advertisement

KCCI EIGHT NEWS AT TEN STARTS NOW. GOOD EVENING. IT HAS BEEN AN ACTIVE EVENING IN NORTHERN IOWA. ACTIVE WEATHER EVENING. THIS PICTURE SENT TO US BY STEVE FITCHETT SHOWS A TORNADO ON THE GROUND NEAR GILLETT GROVE. YOU CAN SEE THE DEBRIS KICK UP THERE. THIS WAS IN CLAY COUNTY. THIS WAS A TORNADO WARNED STORM NEAR THAT AREA. TONIGHT. A TORNADO WARNED STORM ALSO MOVED THROUGH KOSSUTH COUNTY THIS EVENING. THAT’S A LIVE LOOK RIGHT NOW FROM ALGONA. THANKFULLY THE TORNADO WATCH FOR THE COUNTY JUST EXPIRED AT THE TOP OF THE HOUR, SO IT SHOULD BE A MUCH CALMER NIGHT AHEAD. THE STORM ROLLED THROUGH SANBORN THIS AFTERNOON. TAKE A LOOK AT THIS. ALYSSA BECKER SENT US THESE PICTURES OF THE HAIL THAT FELL THERE TODAY. THAT’S A BIG HAIL AND DOES SOME DAMAGE. ABSOLUTELY. WE SAW EVEN THE LIVE LOOK FROM ALGONA. YOU SAW SOME LIGHTNING THERE. SO EVEN FOR THESE AREAS THAT ARE OUT OF KIND OF THE ROUGH STUFF THERE, JASON, STILL A LITTLE BIT OF A, YOU KNOW, I DON’T KNOW, THINGS THAT CATCHES THEIR EYE TONIGHT. ABSOLUTELY. THERE’S

Advertisement

Tornadoes and hail reported across northern Iowa counties

Updated: 11:16 PM CDT Apr 13, 2026

Editorial Standards

Advertisement

Severe storms swept through northern Iowa Monday evening, bringing tornadoes and hail to several counties.A tornado was spotted on the ground near Gillett Grove in Clay County, as shown in a photo sent by Steve Fitchett. The area experienced a tornado-warned storm Monday night. A tornado-warned storm also moved through Kossuth County this evening. A live view from Algona showed the conditions, and the tornado watch for the county expired at 10 p.m.Earlier in the day, the storm rolled through Sandborn, bringing hail to the area. Alyssa Becker shared pictures of the hail from the scene.

Severe storms swept through northern Iowa Monday evening, bringing tornadoes and hail to several counties.

Advertisement

A tornado was spotted on the ground near Gillett Grove in Clay County, as shown in a photo sent by Steve Fitchett. The area experienced a tornado-warned storm Monday night.

A tornado-warned storm also moved through Kossuth County this evening. A live view from Algona showed the conditions, and the tornado watch for the county expired at 10 p.m.

Earlier in the day, the storm rolled through Sandborn, bringing hail to the area. Alyssa Becker shared pictures of the hail from the scene.

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

Iowa

Why Jimmy Butler wore an Iowa State volleyball shirt before NBA game

Published

on

Why Jimmy Butler wore an Iowa State volleyball shirt before NBA game


play

The Iowa State volleyball program recently received an unexpected endorsement from an NBA All‑Star.

Golden State Warriors forward Jimmy Butler hit the court wearing a gray Nike Iowa State Volleyball T‑shirt before his team’s regular‑season finale against the Los Angeles Clippers on Sunday, April 12.

Advertisement

So why did Butler, a Marquette alum and Texas native with no obvious Iowa State ties at first glance, sport an Iowa State volleyball shirt? Here’s what we know.

Jimmy Butler’s Iowa State volleyball connection

Butler’s decision to wear the shirt wasn’t the result of a lost bet with a former Iowa State coach or player, or an unrelated thrift-store pickup, but rather tied to a longstanding personal connection with a member of the Iowa State volleyball coaching staff.

Butler has been friends with Ciara Jones, Iowa State volleyball’s associate head coach and recruiting coordinator, since their time together as student‑athletes at Marquette in the late 2000s. The connection was first pointed out on social media by Iowa State women’s basketball radio play‑by‑play announcer Noah Wolf, who noted that the six‑time All-Star selection attended Iowa State’s match at Houston during the 2025 season to support Jones and the team.

Jones, who has been with the Cyclones Volleyball team since 2023, reposted a photo of Butler from Sunday in the Cyclones gear with the star eye emojis and “you love to see it” in her caption. Butler attended Marquette from 2008 to 2011 and Jones from 2008 to 2012.

Jones helped lead the program to its first NCAA Tournament appearance in 2011, a season in which she was also named a Big East First Team All‑American, according to her Iowa State coaching profile. The two Golden Eagles alums appear together in several posts on Jones’ Instagram.

Advertisement

When did Jimmy Butler tear his ACL?

Butler, 36, has been sidelined since Jan. 19, 2026, after suffering a torn right ACL, an injury that ended his 2025–26 season.

He appeared in 38 games, averaging 20.0 points, 5.6 rebounds and 4.9 assists per game while shooting 51.9% from the field. After losing Sunday’s matchup 115–110, the Warriors (37–45) are set to rematch the Clippers (42–40) on Wednesday, April 15, in the NBA Play‑In Tournament.

The Cyclones volleyball program capped a strong 2025 season with a 23–8 overall record, their highest win total since 2011, and finished third in the Big 12 at 12–6 in conference play.

Advertisement

Cooper Worth is a service/trending reporter for the Des Moines Register. Reach him at cworth@gannett.com or follow him on X @CooperAWorth.





Source link

Continue Reading

Iowa

Iowa newspapers get second chance after publisher closure

Published

on

Iowa newspapers get second chance after publisher closure


Iowa newspapers get second chance after publisher closure

Advertisement

WELCOME BACK. SEVERAL SMALL TOWN IOWA NEWSPAPERS ARE ON THE BRINK OF SHUTTING DOWN. WILL NOW GET A SECOND CHANCE. 18 PAPERS ACROSS THE STATE WERE SET TO GO OUT OF PRINT AT THE START OF THE MONTH, WHEN MID-AMERICA PUBLISHING CLOSED. NELSON MEDIA COMPANY, A VIDEO PRODUCTION COMPANY BASED IN NORTHEAST IOWA, BOUGHT FOUR OF THOSE PAPERS. THE ACQUISITIONS INCLUDE THE WINNEBAGO COUNTY TRIBUNE, PARKERSBURG ECLIPSE NEWS REVIEW, BUTLER COUNTY TRIBUNE, AND THE REGISTER. CEO CHRIS NELSON SAYS LOSING THE NEWSPAPERS WOULD PUT LOCAL COMMUNITIES AT RISK. JOURNALISM WAS THE FOUNDATION OF THIS COUNTRY, SO IF WE LOSE THAT IN THE SMALL COMMUNITIES, THAT’S A BIG DEAL. WE WANT TO MAKE THESE PAPERS GREAT FOR THE COMMUNITIES AND SHOW THE NEWS AND THE CONTENT THAT HAPPENS EVERY SINGLE WEEK IN THESE CITIES AND TOWNS. 13 OF THE 18 NEWS

Advertisement

Iowa newspapers get second chance after publisher closure

Updated: 10:44 PM CDT Apr 12, 2026

Editorial Standards

Advertisement

Eighteen Iowa newspapers faced closure this month after MidAmerica Publishing shut down, but several have been saved by new ownership. Nelson Media Company, a video production company based in Northeast Iowa, purchased four of the papers. The acquisitions include the Winnebago County Tribune, Parkersburg Eclipse News Review, Butler County Tribune and the Grundy Register. “Journalism is the foundation of this country. So, if we lose that in the small communities, that’s a big deal,” CEO Chris Nelson said. “We want to make these papers great for these communities and show the news and content that happens every week in these cities and towns.”Thirteen of the 18 newspapers that were at risk of closing have been sold and will continue printing.

Eighteen Iowa newspapers faced closure this month after MidAmerica Publishing shut down, but several have been saved by new ownership.

Advertisement

Nelson Media Company, a video production company based in Northeast Iowa, purchased four of the papers. The acquisitions include the Winnebago County Tribune, Parkersburg Eclipse News Review, Butler County Tribune and the Grundy Register.

“Journalism is the foundation of this country. So, if we lose that in the small communities, that’s a big deal,” CEO Chris Nelson said. “We want to make these papers great for these communities and show the news and content that happens every week in these cities and towns.”

Thirteen of the 18 newspapers that were at risk of closing have been sold and will continue printing.

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