(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();
}
})();
Age, Biography and Wiki
| Birth Day | March 24, 2001 |
| Birth Place | United States |
| Age | 22 YEARS OLD |
| Birth Sign | Aries |
💰 Net worth: $200K - $300K (2024)
Abigail St. John, a well-known YouTube star in the United States, is speculated to have a net worth ranging from $200,000 to $300,000 by the year 2024. With her captivating content, engaging personality, and a dedicated fan base, Abigail has managed to grow her online presence and become a key influencer in the digital world. Her entrepreneurial skills and relentless work ethic have undoubtedly contributed to her financial success, making her a prominent figure in the YouTube community. As she continues to create inspiring and entertaining content, Abigail's net worth is projected to rise steadily in the coming years.
Content creator who is best known for her self-titled YouTube channel where she posts recipes, vlogs, and thrifting videos. She has accumulated over 90,000 subscribers on her channel.
She launched her YouTube channel in June 2018.
She has gained over 170,000 followers on her wellbeingwithabigail Instagram account, where she posts selfies, pictures of food and other pictures from her day-to-day life.
👉 For more insights, check out this resource.
Her mom has appeared in several of her YouTube videos.
She has collaborated with YouTube star Ashley Wicka.
👉 Discover more in this in-depth guide.
Play Game