Connect with us

Iowa

NCAA No. 2 Iowa women dominate NAIA No. 1 Life 35-6, shut out Missouri Valley, 42-0 in Iowa Duals

Published

on

NCAA No. 2 Iowa women dominate NAIA No. 1 Life 35-6, shut out Missouri Valley, 42-0 in Iowa Duals


IOWA CITY, Iowa – The second-ranked University of Iowa women’s wrestling team defeated Missouri Valley College and top-ranked NAIA, Life University in Carver-Hawkeye Arena on Sunday afternoon. The Hawkeyes outscored their opponents 77-47 in team points, recording five pins and ten technical falls.  

  

Iowa started its day of competition with a 42-0, win over Missouri Valley College. Emilie Gonzalez, Brianna Gonzalez and Alivia White all notched wins via pin over their opponents in the first period. Ava Bayless, Emily Frost and Lilly Luft recorded, 11-0, tech. falls, while Felicity Taylor, Ella Schmit, and Bella Mir downed their opponents with 10-0 tech. falls.  

 

Advertisement

The Hawkeyes kept the momentum going into final dual of the afternoon, capturing a, 35-6, win against NAIA National Duals Champions, Life University. Sterling Dias started things at 101 with a win over Devyn Gomez via a 10-0 tech. fall. Bayless downed Diana Gonzalez at 109, also earning a quick 10-0 tech. fall. B. Gonzalez worked a pin in 2:07 over Ariana Martinez at 116, followed by Taylor taking the 10-0 tech. fall against Anna Krejsa at 123.  

 

Life got on the board at 130 with Sarah Savidge earning a 11-0 tech. fall over Frost. Luft brought it back with a pin against Zaynah McBryde in 1:42. Reese Larramendy fought all six minutes against Jamilah McBryde, avenging her loss from Soldier Salute, with a 12-4 decision at 143. Marlynne Deede captured the win via decision, 3-1, in her second bout against Latifah McBryde this season at 155. Kylie Welker made quick work at 170 with a 10-0 tech. fall over Margaret Graham in 23 seconds. Jaycee Foeller closed out the day, taking the 2-0 decision over Madeline Welch at 191.  

HEAD COACH CLARISSA CHUN    

“Since November I feel like there has been a lot of positive feedback on our sport; how exciting it is, or how much action there is. Hosting these duals in Carver has allowed us to expand the circle of women’s wrestling and show the world what these women can do. Our women are strong, powerful, fast, all of the things. We want our fans to continue to show up and we want it to expand beyond Iowa. We are so grateful for the fans that show up and bring that energy to our program because our team feeds off of the energy that they bring.” 

Advertisement

 NOTABLES  

•              The Hawkeyes recognized their four seniors today; Allie Baudhuin, Sierra Brown Ton, Marlynne Deede, and Felicity Taylor.  

•              Iowa’s win against Missouri Valley College was its second shutout of the season (vs. Lindenwood, 43-0, Nov. 12, 2023).

•              Hawkeye wrestlers finished the day with a record of 19-1.

•              Iowa led with 157 total match points on the day. Life followed with 92, and Missouri Valley in last with 20.  

Advertisement

•              Iowa had the three fastest tech. falls on the day; Welker (0:23), Schmit (0:30), and Bayless (0:40).

UP NEXT  

The Hawkeyes will travel to Fort Wayne, Indiana, next weekend to compete in the Indiana Tech Warrior Duals and Open tournament. Iowa will open competition on Friday against Campbellsville at 2 p.m. CT inside of the Doug Edgar Indoor Track Facility. 

  

NCAA #2 Iowa 42, Missouri Valley College 0 

Advertisement

101 — Emilie Gonzalez (I) pinned Sage Beltran (M), 0:57                                         

109 — Ava Bayless (I) tech. fall Hailey Holland (M), 11-0                                          

116 — Brianna Gonzalez (I) pinned Laura Lincoln (M), 1:40                                      

123 — Felicity Taylor (I) tech. fall Ashley Whetzal (M), 10-0                                      

130 — Emily Frost (I) tech. fall Chase Kiel (M), 11-0                                                 

Advertisement

136 — Lilly Luft (I) tech. fall Aniseta Acosta (M), 11-0 

143 — Ella Schmit (I) tech. fall Willow Barnes (M), 10-0                                           

155 — Bella Mir (I) tech. fall Elia Falcetti (M), 10-0                                                  

170 — Haley Ward (I) decision Kelani Corbett (M), 7-0                                            

191 — Alivia White (I) pinned Tylah Allen (M), 1:16  

Advertisement

 

NCAA #2 Iowa 35, NAIA No. 1 Life University 6     

101 — Sterling Dias (I) tech. fall Devyn Gomez (L), 10-0                                              

109 — Ava Bayless (I) tech. fall Diana Gonzalez (L), 10-0                                   

116 — Brianna Gonzalez (I) pinned Ariana Martinez (L), 2:07                           

Advertisement

123 — Felicity Taylor (I) tech. fall Anna Krejsa (L), 10-0                                     

130 — Sarah Savidge (L) tech. fall Emily Frost (I), 11-0                                      

136 — Lilly Luft (I) pinned Zaynah McBryde (L), 1:42                                         

143 — Reese Larramendy (I) decision fall Jamilah McBryde (L), 12-4               

155 — Marlynne Deede (I) decision Latifah McBryde (L), 3-1                           

Advertisement

170 — Kylie Welker (I) tech. fall Margaret Graham (L), 10-0                              

191 — Jaycee Foeller (I) decision Madeline Welch (L), 2-0  



Source link

Iowa

Iowa High School Boys Track And Field Leaders

Published

on

Iowa High School Boys Track And Field Leaders


We are still weeks away from the state track and field meet in Iowa, but high school athletes around the state are starting to get outdoors to post times and leave marks.

High School on SI previously posted the leaders in Iowa high school track and field for the girls, so now, we head over to the boys. Just like with that one, the numbers below are from the Bound website and up-to-date as of April 3, 2026.

Iowa High School Boys Track And Field Event Leaders

100-Meter Dash

Advertisement
Add us as a preferred source on Google

  • Connor Kunze, Nevada, 10.48
  • Kaiden Kunze, Norwalk, 10.52
  • Noah Ross, Ankeny Centennial, 10.61
  • Adam Kacmarynski, Pella Christian, 10.69
  • Deztin McMurrin, Waterloo West, 10.70

200-Meter Dash

  • Marcus Tomlyanovich, Cedar Falls, 21.73
  • Zane Johnson, ADM, 21.90
  • Cauy Konz, Treynor, 22.08
  • Dawson Dougherty, Cedar Rapids Kennedy, 22.09
  • Lincoln Bainbridge, Van Buren County, 22.10

400-Meter Dash

  • Drew Bennis, Cedar Rapids Prairie, 48.52
  • Harrison Mullens, Pella, 48.85
  • Lincoln Bainbridge, Van Buren County, 49.10
  • Will Bertrand, Sioux City Bishop Heelan, 49.43
  • Gage Tucker, Bettendorf, 49.55

800-Meter Run

  • Brennen Hoyer, Cedar Falls, 1:53.72
  • AJ Willey, Bettendorf, 1:54.27
  • Keegan Decker, Iowa City Liberty, 1:54.44
  • Canaan Dunham, Pella, 1:54.73
  • Ayden Gabrielson, Waukee Northwest, 1:54.79

1600-Meter Run

  • Quentin Nauman, Western Dubuque, 4:03.65
  • Keegan Decker, Iowa City Liberty, 4:04.33
  • Kuma Gutema, Sioux City North, 4:12.40
  • Logan Bleich, Gilbert, 4:14.67
  • Canaan Dunham, Pella, 4:15.92

3200-Meter Run

  • Keegan Decker, Iowa City Liberty, 8:59.49
  • Quentin Nauman, Western Dubuque, 9:07.03
  • AJ Willey, Bettendorf, 9:08.52
  • Slader Buckheister, Cedar Rapids Kennedy, 9:08.54
  • Canaan Dunham, Pella, 9:12.27

110-Meter Hurdles

  • Tay Seals, Clear Creek-Amana, 13.92
  • Hayden Carlson, Ankeny, 14.07
  • Caiden Johnson, Pella, 14.16
  • Blake Ludwig, Waukee Northwest, 14.25
  • Miciah LeLaCheur, Valley, 14.30

400-Meter Hurdles

  • J.J. McDermott, Bettendorf, 54.42
  • Wil Pauli, Cedar Falls, 54.78
  • Jayden Jeter, Waukee, 54.92
  • Owen Von Ahsen, Benton, 54.92
  • Tate Marco, Sibley-Ocheyedan, 55.14

Long Jump

  • Rylan Peters, Waverly-Shell Rock, 23-8
  • Kaiden Kunze, Norwalk, 23-3
  • Jayden Stephens, Waverly-Shell Rock, 22-11
  • Ezekiel Symonds, Independence, 22-10.5
  • Jamaul Richardson Willamsburg, 22-8

High Jump

  • Ajak Malual, Waukee, 6-9
  • Logan Athlerton, Norwalk, 6-8
  • Eli Patterson, Benton, 6-7
  • Miciah LeLaCheur, Valley, 6-6
  • Spencer Casey, Cascade, 6-5.5

Shot Put

  • Greyson Hartman, Washington, 67-3.5
  • Morgan Cooley, East Union, 59-11
  • Max Nevitt, Algona, 59-5.5
  • Carson Divis, Hinton, 57-6
  • Shem Mally, Cedar Rapids Kennedy, 57-5.5

Discus

  • Greyson Hartman, Washington, 179-9
  • Aiden Curtis, Indianola, 179-2
  • Daxon Kiesau, Urbandale, 176-8
  • Colin Whitters, Iowa City West, 167-1
  • Reece Winery, Southeast Polk, 166-5

100-Meter Wheel Chair

  • Titus Steng, Shenandoah, 17.01
  • Eli Johnson, Bedford, 18.58
  • Josh Anderson, Washington, 20.45
  • Logan Shwery, Ankeny Centennial, 23.50
  • Ryan Stevenson, Pleasant Valley, 31.23

200-Meter Wheel Chair

  • Titus Steng, Shenandoah, 31.66
  • Eli Johnson, Bedford, 33.89
  • Issac Anderson, Washington, 37.32
  • Josh Anderson, Washington, 37.34
  • Logan Shwery, Ankeny Centennial, 49.04

400-Meter Wheel Chair

  • Titus Steng, Shenandoah, 1:06.30
  • Eli Johnson, Bedford, 1:10.74
  • Isaac Anderson, Washington, 1:13.78
  • Logan Shwery, Ankeny Centennial, 1:28.32

800-Meter Wheel Chair

  • Titus Steng, Shenandoah, 2:21.91
  • Eli Johnson, Bedford, 2:41.25
  • Josh Anderson, Washington, 3:01.66

Shot Put Wheel Chair

  • Ryan Stevenson, Pleasant Valley, 16-11

100-Meter Ambulatory

  • Carter Swanson, Hudson, 15.35
  • Daniel Villa, Waterloo East, 15.49
  • Leighton Pullin, Waterloo East, 19.72
  • Daniel Carr, Waterloo East, 22.97

200-Meter Ambulatory

  • Cameron McGraw, Alburnett, 30.86
  • Carter Swanson, Hudson, 32.19

400-Meter Ambulatory

  • Carter Swanson, Hudson, 1:14.41

4×100-Meter Relay

  • Gilbert, 42.21
  • Cedar Rapids Jefferson, 42.61
  • Treynor, 42.70
  • Western Dubuque, 42.79
  • Waukee Northwest, 42.86

4×200-Meter Relay

  • Valley, 1:26.29
  • Clear Lake, 1:27.55
  • Waukee Northwest, 1:28.54
  • ADM, 1:28.60
  • Cedar Rapids Prairie, 1:29.30

4×400-Meter Relay

  • Clear Lake, 3:20.37
  • Cedar Falls, 3:21.03
  • Waukee Northwest, 3:23.95
  • Sioux City Bishop Heelan, 3:24.10
  • Cedar Rapids Prairie, 3:24.62

4×800-Meter Relay

  • Waukee Northwest, 7:55.90
  • Cedar Falls, 7:57.36
  • Dallas Center-Grimes, 8:02.78
  • Johnston, 8:03.88
  • Unity Christian, 8:04.19

Sprint Medley Relay

  • Clear Creek-Amana, 1:34.37
  • Sibley-Ocheyedan, 1:35.17
  • Muscatine, 1:35.57
  • Cedar Rapids Prairie, 1:35.76
  • Mount Vernon, 1:35.86

Distance Medley Relay

  • Ankeny Centennial, 3:26.51
  • Waukee Northwest, 3:30.23
  • Gilbert, 3:32.46
  • Dallas Center-Grimes, 3:33.16
  • Ankeny, 3:34.82

Shuttle Hurdle Relay

  • Pella, 58.29
  • Iowa City West, 58.61
  • Treynor, 58.87
  • Waukee Northwest, 58.95
  • Ankeny, 59.02



Source link

Continue Reading

Iowa

Where will Iowa basketball spending rank in transfer portal?

Published

on

Where will Iowa basketball spending rank in transfer portal?


You have to pay to play.

That’s the way the new world of college sports works, especially football and men’s basketball, the two moneymakers for programs across the country. The financial aspect of competing is looming larger than ever now, and to win in those sports, it requires serious financial backing.

It costs now to recruit top talent from high school and even more to lure in top talent from the transfer portal, which can infuse instant upgrades to a roster. The Iowa Hawkeyes had a portal-heavy roster this year during their magical Elite 8 run during March Madness and will once again be shopping for more high-end talent.

Iowa won’t just be among the big spenders in the Big Ten, but On3’s Pete Nakos believes Iowa is going to be among those big spenders in the sport of college basketball, potentially nearing double-figures in the millions.

Advertisement

The Next Tier: $8 to $10 million

LouisvilleTexas A&MIowa, St. Louis, Providence and BYU make up the next tier of top spenders, all expected to spend over $8 million and can touch $10 million if they want. Other top spenders of note will likely be Virginia and Washington, among others.

Alabama was in the $8 to $10 million range this season, and the Crimson Tide are expected to have similar funding available. They will be able to crack into the next tier if they need to, sources said. – Pete Nakos, On3

Iowa’s first priority via the transfer portal is replacing the crater-sized hole in the starting lineup left by point guard Bennett Stirtz, who carried this team at times this year and was the engine that made this team go.

After that, Iowa needs to add size on the interior. While they were able to play most of the year, finding ways to win despite lacking some size, having a true big man only further unlocks Ben McCollum’s offense.

Contact/Follow us @HawkeyesWire on X (formerly Twitter) and like our page on Facebook to follow ongoing coverage of Iowa news, notes and opinions. Follow Riley on X: @rileydonald7

Advertisement





Source link

Continue Reading

Iowa

Iowa wide receiver becomes first-ever back-to-back winner of Jet Award

Published

on

Iowa wide receiver becomes first-ever back-to-back winner of Jet Award


Iowa wide receiver Kaden Wetjen becomes first-ever back-to-back winner of Jet Award

Advertisement

OUR TEAM. SOMEONE TO LOOK OUT FOR THIS UPCOMING YEAR, STICKING WITH FOOTBALL, THE JET AWARD GALA HAPPENING TONIGHT IN OMAHA ON THE 15TH YEAR OF THE AWARD. THE AWARD IS GIVEN TO THE COLLEGE RETURN SPECIALIST OF THE YEAR, IOWA’S KADEN WETJEN MAKES HISTORY, BECOMING THE FIRST EVER BACK TO BACK WINNER. OF JOHNNY THE JET RODGERS AWARD. IT’S AWESOME. AND I KIND OF JOKED AROUND LAST YEAR, TOLD ME I WAS GOING TO COME BACK HERE NEXT YEAR AND HERE WE ARE ACTUALLY ACTUALLY DID IT. AND WE ACTUALLY HAD TWICE THE SUCCESS WE HAD LAST YEAR WHEN WE WON IT. SO JUST ME AND THE UNIT, THE TEAM THAT WE HAD WAS, WAS SUPER AWESOME. IT’S NOT JUST THIS AWARD ISN’T JUST FOR ME. IT’S FOR MY, FOR MY TEAMMATES AS WELL. YES. ALSO BEING HONORED TONIGHT, MILLARD SOUTH ALMA JOBJET TAMALA AS MR. FOOTBALL 2025. RECOGNIZING THE TOP HIGH SCHOOL FOOTBALL TALENT IN THE STATE. GUYS, OBVIOUSLY KAMALA TAKING HIS TALENTS TO ALABAMA. HE’LL BE PLAYING IN TUSCALOOSA THIS YEAR AS FAR AS IT COMES WITH EACH AND EVERY TIME ANYBODY WOULD KICK TO HIM, I WOULD SAY, WHAT ARE YOU DOING? DON’T KICK, KICK, KICK IT. HE’S SO GOOD. I MEAN, LOO

Advertisement

Iowa wide receiver Kaden Wetjen becomes first-ever back-to-back winner of Jet Award

Updated: 8:57 PM CDT Apr 2, 2026

Editorial Standards

Advertisement

Omaha hosted the Jet Award Gala on Thursday.It was the 15th year of the award, which was given to the College Return Specialist of the Year.Iowa’s Kaden Wetjen made history, becoming the first-ever back-to-back winner of the Johnny the Jet Rodgers Award.The gala also honored Millard South alum Jett Thomalla as Mr. Football 2025, recognizing the top high school football talent in the state.Make sure you can always see the latest news, weather, sports and more from KETV NewsWatch 7 on Google search.NAVIGATE: Home | Weather | Local News | National | Sports | Newscasts on demand |

Omaha hosted the Jet Award Gala on Thursday.

Advertisement

It was the 15th year of the award, which was given to the College Return Specialist of the Year.

Iowa’s Kaden Wetjen made history, becoming the first-ever back-to-back winner of the Johnny the Jet Rodgers Award.

The gala also honored Millard South alum Jett Thomalla as Mr. Football 2025, recognizing the top high school football talent in the state.

Advertisement

Make sure you can always see the latest news, weather, sports and more from KETV NewsWatch 7 on Google search.

NAVIGATE: Home | Weather | Local News | National | Sports | Newscasts on demand |

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