403Webshell
Server IP : 172.67.201.108  /  Your IP : 216.73.216.11
Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5
System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/tgnewprod/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/tgnewprod/js/consent.js
// --- Cookie Helpers ---
function set_consent_cookie(consent) {
	const value = encodeURIComponent(JSON.stringify(consent));
	const expires = new Date();
	expires.setMonth(expires.getMonth() + 6); // 6‑month validity

	document.cookie =
		`tracking_opt_in=${value}; expires=${expires.toUTCString()}; path=/; SameSite=Lax`;
}

function get_consent_cookie() {
	const match = document.cookie.match(/(?:^|; )tracking_opt_in=([^;]*)/);
	if (!match) return null;

	try {
		return JSON.parse(decodeURIComponent(match[1]));
	} catch {
		return null;
	}
}

// --- UI Elements ---
const banner_el = document.getElementById("cookie-banner");
const modal_el = document.getElementById("cookie-modal");
const settings_btn = document.getElementById("cookie-settings-btn");

const analytics_toggle = document.getElementById("analytics-toggle");
const ads_toggle = document.getElementById("ads-toggle");

// --- Consent Application Stub ---
function apply_consent(consent) {
	// This is where you'd enable/disable analytics, ads, etc.
	console.log("Consent applied:", consent);
}

// --- Banner Logic ---
function show_banner_if_needed() {
	const consent = get_consent_cookie();
	if (!consent) {
		banner_el.classList.remove("hidden");
	} else {
		settings_btn.classList.remove("hidden");
	}
}

// Accept All
document.getElementById("cookie-accept").onclick = () => {
	const consent = { analytics: true, ads: true };
	set_consent_cookie(consent);
	apply_consent(consent);
	banner_el.classList.add("hidden");
	settings_btn.classList.remove("hidden");
};

// Reject All
document.getElementById("cookie-reject").onclick = () => {
	const consent = { analytics: false, ads: false };
	set_consent_cookie(consent);
	apply_consent(consent);
	banner_el.classList.add("hidden");
	settings_btn.classList.remove("hidden");
};

// Customize
document.getElementById("cookie-customize").onclick = () => {
	modal_el.classList.remove("hidden");
};

// Modal Save
document.getElementById("modal-save").onclick = () => {
	const consent = {
		analytics: analytics_toggle.checked,
		ads: ads_toggle.checked
	};
	set_consent_cookie(consent);
	apply_consent(consent);
	modal_el.classList.add("hidden");
	banner_el.classList.add("hidden");
	settings_btn.classList.remove("hidden");
};

// Modal Accept All
document.getElementById("modal-accept").onclick = () => {
	const consent = { analytics: true, ads: true };
	set_consent_cookie(consent);
	apply_consent(consent);
	modal_el.classList.add("hidden");
	banner_el.classList.add("hidden");
	settings_btn.classList.remove("hidden");
};

// Modal Reject All
document.getElementById("modal-reject").onclick = () => {
	const consent = { analytics: false, ads: false };
	set_consent_cookie(consent);
	apply_consent(consent);
	modal_el.classList.add("hidden");
	banner_el.classList.add("hidden");
	settings_btn.classList.remove("hidden");
};

// Reopen Preferences
settings_btn.onclick = () => {
	const consent = get_consent_cookie();
	if (consent) {
		analytics_toggle.checked = consent.analytics;
		ads_toggle.checked = consent.ads;
	}
	modal_el.classList.remove("hidden");
};

// --- Close Buttons ---
const banner_close_btn = document.getElementById("cookie-banner-close");
const modal_close_btn = document.getElementById("cookie-modal-close");

// Close banner WITHOUT giving consent (still compliant)
banner_close_btn.onclick = () => {
	// Banner closes, but since no consent cookie is set,
	// it will reappear on next page load.
	banner_el.classList.add("hidden");
};

// Close modal WITHOUT saving changes
modal_close_btn.onclick = () => {
	modal_el.classList.add("hidden");
};

show_banner_if_needed();

Youez - 2016 - github.com/yon3zu
LinuXploit