Connect with us

Maine

Maine boy charged in shooting incident

Published

on

Maine boy charged in shooting incident


LEWISTON, Maine (WMTW) – A 14-year-old boy is facing charges in connection with a shooting incident in Lewiston.

Police say officers were called to Pierce Street at about 4:40 p.m. Saturday for reports of numerous shots fired.

When officers arrived, they spoke with several witnesses and said they found several spent shell casings.

Using surveillance video from the area, police identified a 14-year-old as the suspect.

Advertisement

The teen was charged with aggravated reckless conduct and taken to Long Creek Youth Development Center in South Portland.

Police said no one was hurt.



Source link

Advertisement
Continue Reading
Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Maine

Maine Mariners clinch home ice for first round of playoffs

Published

on

Maine Mariners clinch home ice for first round of playoffs


Maine Mariners clinch home ice for first round of playoffs

Advertisement

NA

Advertisement

Maine Mariners clinch home ice for first round of playoffs

Updated: 10:38 PM EDT Apr 11, 2026

Editorial Standards

Advertisement

The Maine Mariners will have home ice in the first round of the ECHL Playoffs. Games 1 and 2 in Portland will be on April 24th and 25th at 6:00pm.

The Maine Mariners will have home ice in the first round of the ECHL Playoffs. Games 1 and 2 in Portland will be on April 24th and 25th at 6:00pm.

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

Maine

Yoga for Good: Maine woman raising money through movement

Published

on

Yoga for Good: Maine woman raising money through movement


HELPED MORE THAN 300,000 VETERANS VISIT THE MEMORIALS BUILT IN THEIR HONOR. YOU MAY KNOW HER FROM HER POPULAR GOAT YOGA CLASSES… OR THE INSPIRING ‘YOGA FOR GOOD’ SERIES. ASHLEY FLOWERS’ WORK IS ALL ABOUT BRINGING PEOPLE TOGETHER. JAMIE AZULAY INTRODUCES US TO THIS WEEK’S COMMUNITY CHAMPION. THIS MAY LOOK LIKE A CLOTHING STORE – IT IS… BUT IT’S ALSO A MAKESHIFT YOGA STUDIO. TOAD AND CO IN PORTLAND IS ONE OF SEVERAL SPOTS YOU CAN FIND ASHLEY FLOWERS LEADING LOCAL YOGIS IN THEIR PRACTICE. “I THINK HEALTHY COMMUNITIES ARE WELL CONNECTED COMMUNITIES.” AND IT’S HERE ON DIAMOND STREET WHERE ASHLEY LEADS ‘YOGA FOR GOOD’ – DONATION-BASED CLASSES THAT SUPPORT LOCAL NON-PROFITS. “EXPERIENCING THAT SENSE OF JOY AND HAPPINESS AND PEACEFULNESS THAT YOGA BRINGS, AND KNOWING THAT YOU’RE ALL COMING TOGETHER TO DO SOMETHING GOOD FOR YOURSELVES AND THE WORLD, I THINK, IS REALLY POWERFUL.” IN 2 YEARS — 2-THOUSAND DOLLARS HAS BEEN RAISED FOR 9 NON-PROFITS… AND SHE’S ADDING MORE TO THE LINE-UP. THIS WEEK… IT WAS ALL ABOUT THE ADAPTIVE OUTDOOR EDUCATION CENTER AND THEIR MISSION TO PROVIDE RECREATION PROGRAMMING FOR PEOPLE WITH DIFFERENT ABILITIES. “IF YOU CAN BREATHE, YOU CAN DO YOGA. YOGA IS ACCESSIBLE TO EVERYONE.” “SHE ALWAYS HAS SUCH GREAT MESSAGES AS A PART OF BEING IN THE YOGA CLASS. IT’S NOT JUST COMING TO YOGA AND STRETCHING AND BREATHING, BUT ALSO WHAT CAN YOU GIVE BACK TO THE COMMUNITY AND HOW CAN WE WORK TOGETHER TO SUPPORT EACH OTHER?” COMMUNITY… AND MAKING THE WORLD A BETTER PLACE… IS WHAT ASHLEY SAYS YOGA IS ALL ABOUT. “IF YOU COULD HELP PEOPLE TO CULTIVATE A SENSE OF RESPECT FOR THEMSELVES, THEN MAYBE YOU COULD HAVE THAT SENSE OF RESPECT TO BUBBLE OUT INTO THE WORLD, AND HEAL THE WORLD

Advertisement

Yoga for Good: Maine woman raising money through movement

Updated: 11:49 AM EDT Apr 11, 2026

Editorial Standards

Advertisement

Ashley Flowers started “Yoga for Good,” a donation-based class series in support of local nonprofits, in 2024. Since then, she’s raised $2,000 for nine organizations.Flowers said, “Experiencing that sense of joy and happiness and peacefulness that yoga brings, and knowing that you’re all coming together to do something good for yourselves and the world, I think, is really powerful.”Toad & Co hosts “Yoga for Good” in the back of their Portland clothing store. After class, they collect payment, which is a suggested $15 donation. However, attendees are encouraged to pay what they can. “I don’t ever want to turn someone away from yoga because money is an issue,” Flowers said. All proceeds go directly to the cause. The most recent class on April 10 was held in support of the Adaptive Outdoor Education Center. The AOEC is a nonprofit aimed at providing recreation programming for people with different abilities. Inclusivity is a priority in Flowers’ practice. “If you can breathe, you can do yoga,” she said. “Yoga is accessible to everyone.” The AOEC has been the beneficiary of five Yoga for Good classes. When asked about working with Flowers, the nonprofit’s program and development coordinator, Alessa Foley, said, “She always has such great messages as a part of being in the yoga class. It’s not just coming to yoga and stretching and breathing, but also what can you give back to the community, and how can we work together to support each other?”That’s what Flowers thinks yoga is all about. She said, “If you could help people to cultivate a sense of respect for themselves, then maybe you could have that sense of respect to bubble out into the world and heal the world.” When Flowers is not teaching at Toad & Co, you may find her leading goat yoga at Smiling Hill Farm, online classes, or workshops at other local farms. She feels operating without a brick-and-mortar studio is a good way to support her community by drawing people into local businesses. “I think healthy communities are well-connected communities,” she said. Flowers has already lined up the next five Yoga for Good classes, which will run through September. RSVPs can be made on her website. Fri. May 8 at 8 a.m. — Adaptive Outdoor Education CenterSat. June 13 at 9 a.m. — Dempsey CenterSat. July 11 at 11 a.m. — Impact HorseSat. August 8 at 9 a.m. — Dempsey Center Fri. Sept 11 at 8 a.m. — Sea Change Yoga

Ashley Flowers started “Yoga for Good,” a donation-based class series in support of local nonprofits, in 2024. Since then, she’s raised $2,000 for nine organizations.

Flowers said, “Experiencing that sense of joy and happiness and peacefulness that yoga brings, and knowing that you’re all coming together to do something good for yourselves and the world, I think, is really powerful.”

Advertisement

Toad & Co hosts “Yoga for Good” in the back of their Portland clothing store. After class, they collect payment, which is a suggested $15 donation. However, attendees are encouraged to pay what they can. “I don’t ever want to turn someone away from yoga because money is an issue,” Flowers said.

All proceeds go directly to the cause. The most recent class on April 10 was held in support of the Adaptive Outdoor Education Center. The AOEC is a nonprofit aimed at providing recreation programming for people with different abilities.

Inclusivity is a priority in Flowers’ practice. “If you can breathe, you can do yoga,” she said. “Yoga is accessible to everyone.”

Advertisement

The AOEC has been the beneficiary of five Yoga for Good classes. When asked about working with Flowers, the nonprofit’s program and development coordinator, Alessa Foley, said, “She always has such great messages as a part of being in the yoga class. It’s not just coming to yoga and stretching and breathing, but also what can you give back to the community, and how can we work together to support each other?”

That’s what Flowers thinks yoga is all about. She said, “If you could help people to cultivate a sense of respect for themselves, then maybe you could have that sense of respect to bubble out into the world and heal the world.”

When Flowers is not teaching at Toad & Co, you may find her leading goat yoga at Smiling Hill Farm, online classes, or workshops at other local farms. She feels operating without a brick-and-mortar studio is a good way to support her community by drawing people into local businesses.

“I think healthy communities are well-connected communities,” she said.

Flowers has already lined up the next five Yoga for Good classes, which will run through September. RSVPs can be made on her website.

Advertisement
  • Fri. May 8 at 8 a.m. — Adaptive Outdoor Education Center
  • Sat. June 13 at 9 a.m. — Dempsey Center
  • Sat. July 11 at 11 a.m. — Impact Horse
  • Sat. August 8 at 9 a.m. — Dempsey Center
  • Fri. Sept 11 at 8 a.m. — Sea Change Yoga



Source link

Continue Reading

Maine

Veterans of USS Samuel B Roberts 1988 mine strike reunite in Maine

Published

on

Veterans of USS Samuel B Roberts 1988 mine strike reunite in Maine


Veterans of USS Samuel B Roberts 1988 mine strike reunite in Maine

Advertisement

STUFF DONE. GO DOWN THERE AND KICK BUTT.” THE MAINE DEMOCRATIC PRIMARY IS SCHEDULED FOR JUNE NINTH. VETERANS OF THE 1988 PERSIAN GULF MINE STRIKE ARE NOW REUNITING HERE IN MAINE. THE BATH IRON WORKS BUILT SHIP SUFFERED MAJOR DAMAGE AFTER HITTING AN IRANIAN MINE ON APRIL 14 1988. TONIGHT CATE MCCUSKER SHARES THE HEROIC ACTIONS OF THE CREW AND THE BROTHERHOOD THAT REMAINS TODAY. TUESDAY MARKS 38 YEARS SINCE A SHIP BUILT BY BATH IRON WORKS DEFIED ALL ODDS – AND SURVIVED A DANGEROUS STRIKE IN THE PERSUAN GULF…THANKS TO THE BRAVE EFFORTS OF ITS CREW. “ON OUR WAY BACK THAT WAY FROM THE MINEFIELD, AND WE HIT ONE OF THE MINES.” WHILE ON A MISSION IN THE PERSIAN GULF – DURING THE IRAN-IRAQ WAR – THE USS SAMUEL B ROBERTS STRUCK AN IRANIAN MINE “I WAS FREAKING OUT, YOU KNOW, I’M 19. NEVER GOING TO GET MARRIED, NEVER GOING TO SEE MY FAMILY AGAIN.” THE DAMAGE WAS DRASTIC – LEAVING A MASSIVE HOLE IN THE HULL OF THE SHIP – BUT THE CREW JUMPED INTO ACTION… “OUR TRAINING KICKED IN AND EVERYBODY DID WHAT THEY HAD TO DO, WHATEVER THEIR JOB WAS. FOR ME PERSONALLY, I ONLY KIND OF HESITATED AT ONE TIME, WONDERING WHAT MY WIFE WAS THINKING AT THE TIME, AND I PUSHED THAT ASIDE AND THEN WENT TO WORK. MIRACULOUSLY – EVERYONE ON BOARD SURVIVED – AND ONLY TEN PEOPLE WERE INJURED… WE FOUGHT FIRES AND FLOODING FOR ABOUT FIVE HOURS OR BETTER. THE MINE BLAST HIT US ON THE PORT SIDE, BROKE THE KEEL OF THE SHIP AND CRACKED THE SUPERSTRUCTURE ALL THE WAY AROUND. YEARS LATER – THE GROUP FREQUENTLY REUNITES… FOREVER BONDED BY THE TRAUMA AND BROTHERHOOD OF THAT MOMENT. THIS TIME THEY’VE RETURNED TO BATH – WHERE THE USS SAMUEL ROBERTS WAS BUILT… ” EACH SHIP HAS A MOTTO. OURS WAS NO HIGHER HONOR.” THIS SHIP MEANS SO MUCH TO US. AND AS THE US IS CURRENTLY ENGAGED IN A WAR WITH IRAN – WHERE MEMBERS OF THE MILITARY ARE ALSO ENCOUNTERING DANGEROUS SITUATIONS IN THAT AREA OF THE WORLD… VETERANS OF THE 1988 PERSIAN GULF MINE STRIKE SAY…

Advertisement

Veterans of USS Samuel B Roberts 1988 mine strike reunite in Maine

Updated: 10:31 PM EDT Apr 10, 2026

Editorial Standards

Advertisement

Veterans of the USS Samuel B Roberts are reuniting in Maine this weekend.Tuesday marks 38 years since the ship struck an Iranian mine in the Persian Gulf.“Our training kicked in, and everybody did what they had to do,” crewmember Brad Gutcher said. “We fought fires and flooding for about five hours. The mine blast hit us on the port side, broke the keel of the ship, and cracked the structure all the way around.”Everyone on board survived, and they now meet every few years for remembrance and camaraderie. This year, the reunion is held in Bath, as the USS Samuel B Roberts was built by Bath Iron Works.“Each ship has a motto. Ours was no higher honor,” crewmember Shane Deitert said. “This ship means so much to us.”

Veterans of the USS Samuel B Roberts are reuniting in Maine this weekend.

Tuesday marks 38 years since the ship struck an Iranian mine in the Persian Gulf.

Advertisement

“Our training kicked in, and everybody did what they had to do,” crewmember Brad Gutcher said. “We fought fires and flooding for about five hours. The mine blast hit us on the port side, broke the keel of the ship, and cracked the structure all the way around.”

Everyone on board survived, and they now meet every few years for remembrance and camaraderie. This year, the reunion is held in Bath, as the USS Samuel B Roberts was built by Bath Iron Works.

“Each ship has a motto. Ours was no higher honor,” crewmember Shane Deitert said. “This ship means so much to us.”

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