File: //var/softaculous/sitepad/editor/site-data/plugins/cookieadmin-pro/assets/js/consent.js
function cookieadmin_pro_set_consent(prefrenc, days) {
const data = 'action=cookieadmin_pro_ajax_handler&cookieadmin_act=save_consent' +
'&cookieadmin_pro_security=' + encodeURIComponent(cookieadmin_pro_vars.nonce) +
'&cookieadmin_preference=' + encodeURIComponent(JSON.stringify(Object.keys(prefrenc)));
let payload = data;
if (cookieadmin_is_obj(cookieadmin_is_consent) && !!cookieadmin_is_consent.consent) {
payload += '&cookieadmin_consent_id=' + cookieadmin_is_consent.consent;
}
// Make async request — don’t block or wait
const xhttp = new XMLHttpRequest();
xhttp.open("POST", cookieadmin_pro_vars.ajax_url, true); // true = async
xhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xhttp.onload = function () {
if (this.status === 200) {
try {
const parsed = JSON.parse(this.responseText);
if (parsed.success && parsed.data && parsed.data.response) {
cookieadmin_save_consent_cookie(prefrenc, days, parsed.data.response);
}
} catch (e) {
console.error("Invalid JSON response:", e);
}
}
};
xhttp.onerror = function () {
console.error("AJAX request failed");
};
xhttp.send(payload);
// Immediately return
return true;
}