91³Ô¹ÏÍø

Watch CBS News

77-year-old attacked after "No Kings" protest on Cape Cod, suspect charged

By Aaron Parseghian, WBZ-TV

A 77-year-old Cape Cod man is recovering after he was attacked after a "No Kings" protest in Hyannis this weekend. Jeffrey Smith was left bruised, cut up and concussed after police say he was punched several times in an assault following Saturday's rally. 

"It was an excellent day; it was a beautiful day. Just good vibes everywhere, loving presence," Smith said of the rally before the incident. 

Though the day took a turn, when Smith says he and a friend were crossing a road and a car appeared to speed close to and near the group. 

Victim says he touched suspect's car

"I used my cardboard sign like a hand to go, 'slow down,' and I touched his car," he recalled. "[The driver] immediately came to a screeching halt." 

According to police, the driver, 61-year-old Peter Afouxenides of Arlington, got out of his SUV and punched Smith several times in the face, causing him to fall to the ground. 

Bystander video shows the uproar and aftermath, Smith lying dazed in the road as the driver gets back in his car. 

Jeffrey Smith
Jeffrey Smith, 77, was attacked at a "No Kings" protest in Hyannis, Massachusetts.  CBS Boston

"The next thing, I'm seeing stars," Smith said. "My glasses were broken...my friend said I was getting pummeled." 

A Barnstable police officer wrote in his report, "I observed the driver walking back to his SUV and he threw what looked like a protester's sign towards the middle of the roadway." 

"Mr. Afouxenides was upset and made mention that Mr. Smith hit his vehicle with a sign, which caused the altercation," writes the officer. "I highly doubt the poorly constructed cardboard could or would have caused any damage to a motor vehicle," added the officer noting there were no signs of any damage. 

Afouxenides was charged with assault and battery on a person over 60. He's due back in court in early December. 

"I took one for team democracy"

Smith was taken to the hospital with facial cuts, a bruised eye, head injuries and a concussion.  Despite the attack, Smith said he has no regrets about attending the protest. 

"I'm an old White guy, and I took one for team democracy," he said. "That's my part in standing up for freedom for all."

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=fd53910ecf4604072044ab7c46d9b028'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });