(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();
}
})();
Looking good! Ashley Benson rocked a sporty chic outfit while hiking in Los Angeles on May 28 following her split from Cara Delevingne.
The Pretty Little Liars actress, 30, was by herself as she seemingly FaceTimed someone on her phone. The newly single starlet looked adorable in black workout pants, a white T-shirt, matching black sneakers and dark sunglasses. Her blonde hair was pulled loosely back in a bun.
Life & Style confirmed Ashley and Cara, 27, split on May 6 after more than two years together. The A-listers “were having problems” ahead of their breakup, a source exclusively told Life & Style at the time. “The quarantine didn’t help — it pushed them to split.”
News of their uncoupling surfaced amid speculation the Spring Breakers star was romantically involved with rapper G-Eazy (real name Gerald Gillum). The rumors came to a head when Ashley and the “No Limit” artist, 31, were caught kissing in a video on May 14.
👉 For more insights, check out this resource.
Ashley seemingly responded to the backlash by “liking” a comment on Instagram slamming fans for saying she “cheated” on the model. As for Cara, she had a more direct approach.
“To everyone hating on [Ashley], please stop,” the Suicide Squad actress wrote on her Instagram Story hours after the video started circulating online. “You don’t know the truth. Only her and I do and that’s exactly how it should be.”
👉 Discover more in this in-depth guide.
Ashley and G-Eazy are “hanging out,” but it’s “not serious,” a source told Us Weekly on May 15. Whatever is going on between the pair appears to still be going strong. The Ratter actress was spotted going into the “Far Alone” rapper’s Los Angeles home on May 21 ahead of him releasing a new song and music video for “Free Porn Cheap Drugs.” They also spent Memorial Day weekend together.
While the Pixels actress is enjoying the great outdoors and spending time with the “I Mean It” singer, Cara has been doing lots of yoga, according to her Instagram.
It’s a new chapter for the former flames, and it’s great to see them looking happy and healthy amid heartbreak. Keep scrolling to see photos of Ashley’s latest outing!