(function () {
"use strict";
// 1. Mobile Menu Implementation
function initMobileMenu() {
var mobileMenu = document.querySelector('.mobile-menu');
var mainNav = document.querySelector('.main-header .nav-outer .main-menu') || document.querySelector('.nav-outer
.main-menu');
// Sync sticky header navigation if empty
var stickyNav = document.querySelector('.sticky-header .main-menu .navbar-collapse');
if (stickyNav && mainNav && (!stickyNav.children.length || stickyNav.innerHTML.trim() === '')) {
var srcCollapse = mainNav.querySelector('.navbar-collapse');
if (srcCollapse) {
stickyNav.innerHTML = srcCollapse.innerHTML;
}
}
if (mobileMenu && mainNav) {
var menuOuter = mobileMenu.querySelector('.menu-outer');
if (menuOuter && (!menuOuter.children.length || menuOuter.innerHTML.trim() === '')) {
var navCollapse = mainNav.querySelector('.navbar-collapse');
if (navCollapse) {
menuOuter.innerHTML = navCollapse.innerHTML;
} else {
menuOuter.innerHTML = mainNav.innerHTML;
}
}
}
// Click handlers using event delegation
document.addEventListener('click', function (e) {
var toggler = e.target.closest('.mobile-nav-toggler');
if (toggler) {
e.preventDefault();
e.stopPropagation();
document.body.classList.add('mobile-menu-visible');
return;
}
if (e.target.closest('.mobile-menu .close-btn') || e.target.classList.contains('menu-backdrop') ||
e.target.closest('.menu-backdrop')) {
document.body.classList.remove('mobile-menu-visible');
return;
}
if (e.target.closest('.mobile-menu .navigation li a')) {
document.body.classList.remove('mobile-menu-visible');
return;
}
});
// Submenu dropdown toggles
if (mobileMenu) {
var dropdowns = mobileMenu.querySelectorAll('.navigation li.dropdown');
dropdowns.forEach(function (dropdown) {
if (!dropdown.querySelector('.dropdown-btn')) {
var btn = document.createElement('div');
btn.className = 'dropdown-btn';
btn.innerHTML = '';
dropdown.appendChild(btn);
btn.addEventListener('click', function (evt) {
evt.preventDefault();
evt.stopPropagation();
btn.classList.toggle('open');
var subMenu = dropdown.querySelector('ul');
if (subMenu) {
subMenu.style.display = (subMenu.style.display === 'block') ? 'none' : 'block';
}
});
}
});
}
}
// 2. Floating Action Buttons (Call + WhatsApp)
function initFloatingButtons() {
if (!document.querySelector('.phone-call-btn') && !document.querySelector('.phone-call')) {
var callBtn = document.createElement('a');
callBtn.href = 'tel:+910000000000';
callBtn.className = 'phone-call-btn';
callBtn.title = 'Call Now';
callBtn.innerHTML = '
Call Now
';
document.body.appendChild(callBtn);
}
if (!document.querySelector('.phone-wa-btn') && !document.querySelector('.phone')) {
var waBtn = document.createElement('a');
waBtn.href = 'https://api.whatsapp.com/send?phone=+910000000000&text=Hello%20Ishika';
waBtn.target = '_blank';
waBtn.className = 'phone-wa-btn';
waBtn.title = 'WhatsApp Us';
waBtn.innerHTML = 'WhatsApp Now
';
document.body.appendChild(waBtn);
}
}
// 3. Sticky Header & Scroll To Top
function initStickyHeader() {
var siteHeader = document.querySelector('.main-header');
var scrollLink = document.querySelector('.scroll-to-top');
if (!scrollLink) {
scrollLink = document.createElement('div');
scrollLink.className = 'scroll-to-top scroll-to-target';
scrollLink.setAttribute('data-target', 'html');
scrollLink.innerHTML = '';
document.body.appendChild(scrollLink);
}
function checkScroll() {
var windowpos = window.pageYOffset || document.documentElement.scrollTop;
if (siteHeader) {
if (windowpos >= 110) {
siteHeader.classList.add('fixed-header');
} else {
siteHeader.classList.remove('fixed-header');
}
}
if (scrollLink) {
if (windowpos >= 150) {
scrollLink.style.setProperty('display', 'flex', 'important');
scrollLink.classList.add('open');
} else {
scrollLink.style.setProperty('display', 'none', 'important');
scrollLink.classList.remove('open');
}
}
}
window.addEventListener('scroll', checkScroll, { passive: true });
window.addEventListener('resize', checkScroll, { passive: true });
checkScroll();
// Click handler for Scroll to Top button
document.addEventListener('click', function (e) {
var btn = e.target.closest('.scroll-to-top') || e.target.closest('.scroll-to-target');
if (btn) {
e.preventDefault();
window.scrollTo({
top: 0,
behavior: 'smooth'
});
}
});
}
// 4. 18+ Age Verification Popup Modal
function initAgeVerificationModal() {
if (sessionStorage.getItem('ageVerified') === 'true') {
return;
}
if (document.getElementById('ageVerificationModal')) {
return;
}
var modalOverlay = document.createElement('div');
modalOverlay.id = 'ageVerificationModal';
modalOverlay.className = 'age-modal-overlay';
modalOverlay.innerHTML = `
18+
Age Verification Required
This website contains adult content. You must be at least 18 years old (or legal age in your jurisdiction) to
enter.
`;
document.body.appendChild(modalOverlay);
var acceptBtn = document.getElementById('ageAcceptBtn');
if (acceptBtn) {
acceptBtn.addEventListener('click', function () {
sessionStorage.setItem('ageVerified', 'true');
modalOverlay.style.animation = 'fadeInModal 0.3s ease-in reverse';
setTimeout(function () {
if (modalOverlay.parentNode) {
modalOverlay.parentNode.removeChild(modalOverlay);
}
}, 300);
});
}
var declineBtn = document.getElementById('ageDeclineBtn');
if (declineBtn) {
declineBtn.addEventListener('click', function () {
window.location.href = 'https://www.google.com';
});
}
}
function runAllScripts() {
initMobileMenu();
initFloatingButtons();
initStickyHeader();
initAgeVerificationModal();
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', runAllScripts);
} else {
runAllScripts();
}
})();