function saveCookies(all, tid) {
	var requiredCookies = ['SID', 'COOKIES', 'ANALYTICS', 'MARKETING'];
	if (!all) {
		analytics = document.getElementById('acks').checked ? 1 : 0;
		marketing = document.getElementById('mcks').checked ? 1 : 0;
	} else {
		analytics = marketing = 1;
		document.getElementById('acks').checked = true;
		document.getElementById('mcks').checked = true;
	}
	hostname = window.location.hostname;
	exp = hostname.split('.');
	domain = '.' + exp[1] +'.'+ exp[2];
	document.cookie = 'ANALYTICS='+ analytics +'; path=/; max-age=31536000; domain='+ domain;
	document.cookie = 'MARKETING='+ marketing +'; path=/; max-age=31536000; domain='+ domain;
	document.cookie = 'COOKIES=1; path=/; max-age=31536000; domain='+ domain;
	if (!analytics || !marketing) {
		var cookies = document.cookie.split(';');
		for (var i = 0; i < cookies.length; i++) {
			var cookie = cookies[i];
			var eqPos = cookie.indexOf('=');
			var nm = eqPos > -1 ? cookie.substr(0, eqPos).trim() : cookie;
			var reqCookie = false;
			for (var q = 0; q <= requiredCookies.length; q++) {
				if (requiredCookies[q] == nm) {
					reqCookie = true;
					break;
				}
			}
			if (!reqCookie) {
				document.cookie = nm +'=; Max-Age=0; path=/; domain='+ domain;
			}
		}
	}
	var hidepopupIds = ['canvas', 'popup'];
	for (var i = 0; i < hidepopupIds.length; i++) {
		id = hidepopupIds[i];
		obj = document.getElementById('cookies-'+ id);
		addClass(obj, 'hidden');  
	}
	if (all) param = '1/'; else param = '0/';
	if (analytics) {
		$(head_analytics).appendTo('head');
		$(body_analytics).appendTo('body');
		param += '1/';
	} else {
		param += '0/';
	}
	if (marketing) {
		$(head_marketing).appendTo('head');         	
		$(body_marketing).appendTo('body');
		param += '1';
	} else {
		param += '0';
	}
	if (tid) param += '/'+ tid;
	
	dynamic_object(null, 'setCookies/'+ param, '');
	
	gtm_updateCookies(analytics, marketing);
	szn_updateCookies(marketing);
	
	return true;
}

function ocCookieInfo(id) {
	o = document.getElementById(id +'-cookies');
	if (hasClass(o, 'hidden')) {
		removeClass(o, 'hidden');
	} else {
		addClass(o, 'hidden');
	}
	return true;
}

function ocCookiePopup() {
	canvas = document.getElementById('cookies-canvas');
	popup = document.getElementById('cookies-popup');
	if (hasClass(canvas, 'hidden')) {
		removeClass(canvas, 'hidden');
		removeClass(popup, 'hidden');
	} else {
		addClass(canvas, 'hidden');
		addClass(popup, 'hidden');
	}
	window.scrollTo(0, 0);
	return true;
}

function gtm_updateCookies(acs, mcs) {
	gtag('consent', 'update', {
	  'ad_storage': gtm_getCookieStr(mcs),
	  'ad_user_data': gtm_getCookieStr(mcs),
	  'ad_personalization': gtm_getCookieStr(mcs),
	  'analytics_storage': gtm_getCookieStr(acs)
	});
}

function gtm_getCookieStr(v) {
	if (v) return 'granted';
	else return 'denied';
}

function szn_updateCookies(mcs) {
	retargetingConf.consent = mcs;
	window.rc.retargetingHit(retargetingConf);
}	