Connect with us

New Hampshire

Concord Man Tussled With Officers While Intoxicated Downtown: Report

Published

on

Concord Man Tussled With Officers While Intoxicated Downtown: Report


CONCORD, NH — A felon from Concord was arrested on Tuesday morning after being accused of public drunkenness and passing out on the ground of a downtown street and sidewalk.

An officer traveling in the area of 61 S. Main St. around 12:45 a.m. saw a man face down on the ground halfway on the sidewalk and the street. The officer turned their cruiser around and checked on the man, who was not moving. The officer immediately recognized the man as Michael Guglielmo, 62, of Rumford Street in Concord, “from prior police contacts,” an affidavit stated. The officer attempted to speak to Guglielmo to confirm it was him and he “slurred that his name was ‘Michael Guglielmo,’” the report stated.

The officer accused Guglielmo of giving off “the strong scent of alcohol” and “attempted to move his head from the ground, but due to being highly intoxicated, he was having issues lifting his body.” The officer said there was a pool of drool and a hat on the sidewalk near where he was on the ground. He believed Guglielmo had lost his balance and had fallen onto the ground, the report stated.

Find out what’s happening in Concordwith free, real-time updates from Patch.

When asked where he was coming from and if anyone could get him, Guglielmo could not respond, the report stated. After several minutes, he was able to push himself up, onto his hands and knees, and staggered up onto the sidewalk, the affidavit said. The officer told him to sit down so he would not hurt himself, but instead, Guglielmo used a rock wall for support and was heavily swaying, the report stated. The officer noted he had blood on his forehead, and fire and rescue teams were requested to assist him.

Advertisement

After repeatedly being asked if someone could get him, “Michael was so inebriated that he would just grunt or not respond” and had “a one-thousand-yard stare” as he waited for firefighters, the officer wrote.

Find out what’s happening in Concordwith free, real-time updates from Patch.

EMTs cleaned up his forehead wound while the reporting officer attempted to find assistance for him but was unable to.

Due to his highly intoxicated condition, Guglielmo was taken into protective custody, the officer said. The reporting officer asked him to stand up, but he was unable to, they wrote. He was then cuffed and assisted to a police cruiser.

During a search, though, the reporting officer accused Guglielmo of getting “extremely irritated” and “began to yell,” the officer said.

“As I was attempting to finish the search,” the officer wrote, “Michael began to lunge his body at officers.”

Advertisement

Officers, they wrote, had to be pushed against while they attempted to force him into a cruiser. The affidavit said he was warned to stop lunging at them or he would be charged, but instead, Guglielmo lurched at them and attempted to use his feet to prevent a door from being closed after he was placed in the cruiser.

Guglielmo was taken to Concord Hospital and security was requested to meet the officer with a wheelchair, the report said. But he was accused of locking his legs and pushing against the ground when they tried to put him into the wheelchair.

“F— you,” Guglielmo was accused of yelling at officers and hospital security.

The reporting officer said they decided to place Guglielmo back into the police cruiser, but he was accused of fighting officers — although three were able to get him back inside. The reporting officer accused him of smacking his head off the cruiser as he was pushed back in but had no reaction to it.

The reporting officer interviewed one of the security guards to confirm whether Guglielmo kicked them. The security guard said No and believed him to be “too intoxicated to know what was really going on around him.”

Advertisement

Guglielmo was placed later into a bed in restraints and wheeled into the hospital, the report said. After being medically cleared, he was taken to the county jail. Guglielmo was charged with two counts of resisting arrest or detention and pleaded not guilty in Concord District Court. He is due back in court for a trial in March.

Last year, Guglielmo placed third in the Zone A (Wards 1, 2, 3, and 4) Concord board of education seat with 119 votes, after pulling his children out of the SAU 8 school district due to complaints by him and others about a crossdressing elementary school art teacher.

In April, he was arrested on a driving under the influence-second offense charge and an unsafe lane change violation after a crash on South State Street.

Guglielmo is a felon due to attempting to kill his drug dealer and being involved in a shootout with police in Manchester in the 1980s. He served nearly two decades in prison.

Do you have a news tip? Please email it to tony.schinella@patch.com. View videos on Tony Schinella’s YouTube.com channel or Rumble.com channel. Follow the NH politics Twitter account @NHPatchPolitics for all our campaign coverage.

Advertisement

Get more local news delivered straight to your inbox. Sign up for free Patch newsletters and alerts.



Source link

New Hampshire

General John Stark Day celebrated in NH

Published

on

General John Stark Day celebrated in NH


General John Stark Day celebrated in New Hampshire

Advertisement

TRAFFIC AND INTERDICT ILLEGAL ACTIVITY MORE EFFICIENTLY. TODAY, THE GRANITE STATE CELEBRATES THE LEGACY OF GENERAL JOHN STARK. THE SECOND MONDAY OF APRIL IS OBSERVED AS GENERAL JOHN STARK DAY. HE WAS A HERO OF THE AMERICAN REVOLUTION AND IS CREDITED WITH WRITING THE WORDS THAT BECAME NEW HAMPSHIRE’S MOTTO. HE WROTE, QUOTE, LIVE FREE OR DIE. DEATH IS NOT THE WORST OF EVILS, WHICH WAS LATER SHORTENED TO LIVE FREE OR DIE. A LOT OF PEOPLE IN OUR COUNTRY, EVERY GENERATION, MEN AND WOMEN WHO HAVE SERVED, ARE WHY WE ARE FREE. IT’S NOT JUST GENERAL STARK. HE SHOWED US THE WAY AND GENERAL WASHINGTON, BUT EVERY GENERATION OF MEN AND WOMEN WHO HAVE SERVED OUR COUNTRY HAVE ENSURED THAT FREEDOM. STARK IS MOST WELL KNOWN FOR SERVICE AT THE BATTLE OF BENNINGT

The Granite State honored the legacy of Gen. John Stark on Monday. Gen. John Stark Day is observed on the second Monday in April. Stark was a hero of the American Revolution and is credited with writing the words that became New Hampshire’s state motto. He wrote “Live Free or Die: Death is not the worst of evils,” later shortened to “Live Free or Die.”>> Download the free WMUR app to get updates on the go

The Granite State honored the legacy of Gen. John Stark on Monday.

Advertisement

Gen. John Stark Day is observed on the second Monday in April.

Stark was a hero of the American Revolution and is credited with writing the words that became New Hampshire’s state motto. He wrote “Live Free or Die: Death is not the worst of evils,” later shortened to “Live Free or Die.”

>> Download the free WMUR app to get updates on the go

Advertisement

“A lot of people in our country, every generation, men and women who have served, are why we are free,” said Gov. Kelly Ayotte. “It’s not just General John Stark. He showed us the way, and General Washington, but every generation of men and women who have served our country have ensured that freedom.”

Stark is known for his service at the Battle of Bennington in Vermont.

He retired in 1810 and died in Manchester in 1822.

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

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



Source link

Advertisement
Continue Reading

New Hampshire

Proposed bills to address New Hampshire’s insect crisis – Valley News

Published

on

Proposed bills to address New Hampshire’s insect crisis – Valley News


The New Hampshire Senate Committee on Energy and Natural Resources heard two ideas to address shrinking insect populations in New Hampshire during a Tuesday hearing.

One measure, House Bill 1431, would direct the state Pesticide Control Board to reclassify a group of pesticides that is particularly harmful to pollinators and wildlife as restricted use, meaning their use would be limited to professional pesticide applicators. The group of pesticides, called neonicotinoids, has been linked to ecosystem-wide effects from insect and bird population declines to cyanobacteria blooms.

Another bill, House Bill 1086, would establish a committee to study the feasibility and possible outcomes of a ban on seeds treated with neonicotinoid pesticides. Seed treatments are common in grain crops, including corn.

Advertisement

Both bills were sponsored by Rep. John MacDonald, R-Wolfeboro.

“We have to do something,” MacDonald said Tuesday. “I’m not trying to take away any powers of the Pesticide Control Board, but nobody’s doing anything. And I don’t know, I can’t figure out why.”

The windshield effect and beyond

Rosemary Malfi, director of conservation policy for the insect conservation nonprofit Xerces Society, said the decline of insects in New Hampshire is evident in the “windshield effect.”

“Do you remember, anyone who drove a car in the ’90s or early 2000s, you actually got bugs on your windshield? I think everyone here probably knows that that doesn’t happen so much anymore. Neonicotinoid insecticides, or ‘neonics,’ are a major contributor to these declines,” she said.

Forty percent of the bumblebee species historically found in New Hampshire are locally extinct or in severe decline, while about 70% of butterfly species are losing numbers, too, Malfi said. Other classes of insects, including aquatic insects, are affected as well.

Advertisement

This ripples out to affect animals higher up the food chain, including fish and birds. Beneath insects on the ecosystem ladder, meanwhile, are the microorganisms that contribute to harmful cyanobacteria blooms; this means that insect decline can allow cyanobacteria to proliferate, potentially worsening those costly problems, said Rep. Peter Bixby, D-Dover.

Learning from neighbors

As proposed, HB 1086 calls for a committee of three representatives and one senator to assess data from Quebec and New York, where bans on neonicotinoid treated seeds are in place already. They could also assess information from other areas with bans, MacDonald said.

The committee would assess whether bans in other regions have affected crop yields. Some speakers on Tuesday said studies show neonicotinoid seeds to be ineffective at increasing yields.

“We’re concerned that our agricultural community is being asked to pay for a product on seeds that isn’t necessarily helping productivity, but is having serious consequences, both to soil ecology and to water ecology,” said Carol Foss, senior adviser for science and policy with NH Audubon.

Nisa Marks, a wildlife biologist and organic farmer from Henniker, N.H., said neonicotinoids were not necessary for successful crops. But some farmers who attended said restrictions could harm them. Sarah Wrocklage, of Tecce Farm in Durham, N.H., said pests would cause losses on her farm if she could not treat them with chemicals.

Advertisement

In her testimony, Wrocklage also touched on another area that the committee would be directed to consider: Whether it would be possible for farmers to switch to untreated seeds at all. Some of the sweetcorn that Tecce Farm plants is only available in treated form, Wrocklage said.

She and another farmer, Chuck Souther of Concord’s Apple Hill Farm, called for more involvement of local farmers and New Hampshire experts, including those from the University of New Hampshire. As proposed, they said, they did not support the bill, feeling it did not adequately take into account the unique circumstances on New Hampshire farms.

“We do need to look at this, but we need to look at it under New Hampshire conditions,” Souther said.

Requiring action

Though conservationists and farmers agreed insect decline was a problem, at the Tuesday hearings, some senators and speakers questioned the necessity of the bills.

Sen. Howard Pearl, R-Loudon, who is vice chair of the Energy and Natural Resources Committee, asked if a study committee was necessary given the associated costs.

Advertisement

MacDonald said it was. The committee called for in HB 1086 would be “targeted, efficient, and time-bound,” he said. It is designed to last through the summer of 2026 and deliver a report in November.

On HB 1431, speakers, including Robert Johnson of the New Hampshire Farm Bureau Association, suggested the task of restricting neonicotinoid use should be left up to the Pesticide Control Board. Johnson said he disagreed with directing the board’s actions through legislation.

But MacDonald said he had been part of conversations and a subcommittee with the Pesticide Control Board regarding neonicotinoids and had seen no action resulting from those meetings.

“This bill provides clarity on whether action is optional or whether it’s required,” he said.

Both bills have been amended from their original form. As introduced, HB 1086 proposed a ban on seed coatings rather than a study committee, while HB 1431 originally proposed more restrictions, including prohibitions on the use of chemicals on state property and on flowering plants. It also originally sought to make the violation of these rules a misdemeanor for individuals and a felony for organizations or companies. But as amended, the bill leaves more elements of the ban in the hands of the Pesticide Control Board.

Advertisement

Rep. Jonah Wheeler, D-Peterborough, said he had favored a stricter version of both bills in committee discussions, but believed the amended legislation would be a step forward nonetheless. The legislation “deals with a really urgent issue that our constituents are begging us to tackle,” he said.

“The more that we as a society find ourselves away from … symbiosis with the environment in which we live, the natural harmony that exists on this planet, then the more we will find ourselves with problems like pest infestations,” he said.



Source link

Advertisement
Continue Reading

New Hampshire

Bomb threat reported at Pelham Post Office, no explosives found

Published

on

Bomb threat reported at Pelham Post Office, no explosives found


Bomb threat reported at Pelham Post Office, no explosives found

Advertisement

WMUR NEWS NINE TONIGHT STARTS RIGHT NOW. WE BEGIN WITH BREAKING NEWS FROM PELHAM, THE PELHAM PLAZA ON BRIDGE STREET IS BACK OPEN TONIGHT. PELHAM POLICE SAY A BOMB WAS REPORTED IN A MAILBOX IN FRONT OF THE POST OFFICE, BUT THERE WA

Advertisement

Bomb threat reported at Pelham Post Office, no explosives found

Updated: 11:07 PM EDT Apr 12, 2026

Editorial Standards

Advertisement
Pelham police investigated a bomb threat Sunday night at the Pelham Post Office. According to officials, police received a report of a bomb in a mailbox in front of the post office around 7:30 p.m. Out of an abundance of caution, all businesses in Pelham Plaza were evacuated and closed. >> Download the free WMUR app to get updates on the go

Pelham police investigated a bomb threat Sunday night at the Pelham Post Office.

According to officials, police received a report of a bomb in a mailbox in front of the post office around 7:30 p.m.

Advertisement

Out of an abundance of caution, all businesses in Pelham Plaza were evacuated and closed.

>> Download the free WMUR app to get updates on the go

New Hampshire State Police and the Nashua Police Department assisted with the investigation.

Advertisement

No explosives were found, and the shopping plaza has since reopened.

The investigation is ongoing. Anyone with information is asked to contact Lt. Adam Thistle at 603-635-2411.

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



Source link

Advertisement
Continue Reading

Trending