(function () {
// 1) Basic bot filter (extend if you like)
function isBot() {
return /(bot|crawl|spider|google|bing|slurp|yandex|facebook|linkedin|pinterest|preview|whatsapp|discord|telegram|headless|puppeteer)/i
.test(navigator.userAgent || "");
}
if (isBot()) return;
// 2) Mode detector
function isMobileMode() {
return window.matchMedia("(max-width: 767px)").matches ||
/Mobi|Android|iPhone|iPad|iPod/i.test(navigator.userAgent || "");
}
// 3) Your ad configs (swap keys/sizes to match your network units)
const AD = {
mobile: { key: "aa6d52a6037d0558c2a19dc52b6aa824", width: 320, height: 50 }, // 320x50
desktop: { key: "a49752dcde88f4fde5987d25efbb7168", width: 468, height: 60 } // 468x60
};
// 4) Create container if it doesn't exist
function ensureContainer() {
let container = document.getElementById("ad-container");
if (!container) {
container = document.createElement("div");
container.id = "ad-container";
container.style.display = "none";
document.body.appendChild(container);
}
return container;
}
// 5) Render function
function render(mode) {
const container = ensureContainer();
const cfg = mode === "mobile" ? AD.mobile : AD.desktop;
// Set global atOptions for ad network
window.atOptions = {
key: cfg.key,
format: "iframe",
height: cfg.height,
width: cfg.width,
params: {}
};
// Clear previous ad/script then inject
container.innerHTML = "";
container.style.display = "block";
const s = document.createElement("script");
s.src = `//selfportraitproved.com/${cfg.key}/invoke.js`;
s.async = true;
container.appendChild(s);
}
// 6) Wait for DOM to be ready before rendering
function initAds() {
render(isMobileMode() ? "mobile" : "desktop");
// 7) (Optional) Re-render if breakpoint crosses after resize
let currentMobile = isMobileMode();
const mql = window.matchMedia("(max-width: 767px)");
if (mql.addEventListener) {
mql.addEventListener("change", (e) => {
const nowMobile = e.matches;
if (nowMobile !== currentMobile) {
currentMobile = nowMobile;
render(currentMobile ? "mobile" : "desktop");
}
});
} else if (mql.addListener) { // older browsers
mql.addListener((e) => {
const nowMobile = e.matches;
if (nowMobile !== currentMobile) {
currentMobile = nowMobile;
render(currentMobile ? "mobile" : "desktop");
}
});
}
}
// 8) Execute when DOM is ready
if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", initAds);
} else {
initAds();
}
})();
Pensacola, FL – The passing of Cameraman Ron, also known as CMR, has brought a wave of sadness among those who knew and cherished him. He was rushed to the hospital on Thursday, October 26, where he was diagnosed with severe Gallstone Pancreatitis that affected his kidneys, marking the start of a challenging journey for him.
Arms Family Homestead posted on Facebook,
“As many of you may already know, yesterday we lost our dear friend Cameraman Ron. DeJay and I have been working on a Team CMR T-Shirt to help support Sara and the family. I never expected it to turn out this way but here we are. They need our love and support even more now. Please click the link below to purchase a t-shirt or make a donation. ALL proceeds will go directly to his wife Sara. All sales are sold as a presale which will end on 12-7-23.”
Ron, also known as CMR, was a beloved figure in the community, married to Sara Middleton, and known for his passion for capturing moments behind the camera. Coastal Country expressed their sentiments, acknowledging Ron’s decision to embark on a new journey—an adventure with Jesus, though one he would take alone. They highlighted Ron’s infectious spirit and the love he held for his CamFam, reminiscing about his antics and the joy he brought to those around him.
👉 For more insights, check out this resource.
In light of the challenging times faced by Ron and Sara, Christina Griffith initiated a fundraiser via GoFundMe to support them during this difficult period. Describing Ron and Sara as exceptionally kind individuals, the fundraiser aims to provide them with a financial safety net, enabling them to focus wholeheartedly on Ron’s health and recovery without added financial stress.
The family of Cameraman Ron will share details about his obituary and funeral arrangements soon, offering an opportunity for friends, loved ones, and the community to come together and honor the life of a cherished individual whose vibrant spirit will be remembered fondly.
👉 Discover more in this in-depth guide.