Difference between revisions of "MediaWiki:Mobile.js"
From MunichBeerGardens.com
m |
m |
||
Line 107: | Line 107: | ||
var a = document.createElement('a'); | var a = document.createElement('a'); | ||
− | var GDPR_link = document.createTextNode("GDPR | + | var GDPR_link = document.createTextNode("GDPR "); |
a.appendChild(GDPR_link); | a.appendChild(GDPR_link); | ||
a.href = "https://en.wikipedia.org/wiki/General_Data_Protection_Regulation"; | a.href = "https://en.wikipedia.org/wiki/General_Data_Protection_Regulation"; | ||
Line 228: | Line 228: | ||
var a = document.createElement('a'); | var a = document.createElement('a'); | ||
− | var GDPR_link = document.createTextNode("GDPR | + | var GDPR_link = document.createTextNode("GDPR "); |
a.appendChild(GDPR_link); | a.appendChild(GDPR_link); | ||
a.href = "https://en.wikipedia.org/wiki/General_Data_Protection_Regulation"; | a.href = "https://en.wikipedia.org/wiki/General_Data_Protection_Regulation"; |
Latest revision as of 16:50, 27 June 2023
if (window.addEventListener) { window.addEventListener('load', run_onload, false); } function accept_cookies(){ /* if GDPR_table_rejected exists, remove it */ var GDPR_table_rejected = document.getElementById("GDPR_table_rejected"); if (typeof(GDPR_table_rejected) !== 'undefined' && GDPR_table_rejected!== null){ GDPR_table_rejected.remove(); } /* if GDPR_table_undecided exists, remove it */ var GDPR_table_undecided = document.getElementById("GDPR_table_undecided"); if (typeof(GDPR_table_undecided) !== 'undefined' && GDPR_table_undecided!== null){ GDPR_table_undecided.remove(); } var GDPR_cookie = "GDPR=accepted"; var GDPR_year = new Date(); // create date GDPR_year.setFullYear(GDPR_year.getFullYear() +1) // add 1 year from now var GDPR_end = "expires=" + GDPR_year.toGMTString() + ";path=/; samesite=strict"; // make endcookie and path variable // var GDPR_end = "expires=0;path=/; samesite=strict"; // make endcookie and path variable document.cookie = GDPR_cookie + ";" + GDPR_end; console.log("Added cookie: " + document.cookie); accepted(); } function reject_cookies(){ var GDPR_cookie = "GDPR=rejected" var GDPR_year = new Date(); // create date GDPR_year.setFullYear(GDPR_year.getFullYear() +1) // add 1 year from now var GDPR_end = "expires=" + GDPR_year.toGMTString() + ";path=/; samesite=strict"; // make endcookie and path variable // var GDPR_end = "expires=0;path=/; samesite=strict"; // make endcookie and path variable document.cookie = GDPR_cookie + ";" + GDPR_end; console.log("Added cookie: " + document.cookie); GDPR_table_undecided.remove(); rejected(); } // read cookie and set action here function run_onload(){ GDPR_state_value = "undecided"; if(document.cookie.indexOf("GDPR") != -1){ var state_pos = document.cookie.indexOf("GDPR="); var state_start = state_pos + 5; var state_end = state_start + 8; GDPR_state_value = document.cookie.substring(state_start,state_end); console.log(GDPR_state_value); console.log(document.cookie); } if (GDPR_state_value == "accepted"){ accepted(); } if (GDPR_state_value == "rejected"){ rejected(); } if (GDPR_state_value == "undecided"){ undecided(); } } function undecided(){ var GDPR_table_undecided = document.createElement("table"); GDPR_table_undecided.setAttribute("id","GDPR_table_undecided"); var GDPR_row = document.createElement("tr"); var GDPR_cell = document.createElement("td"); var GDPR_reject_button = document.createElement("span"); GDPR_reject_button.setAttribute("id","GDPR_reject_button"); GDPR_reject_button.style.cursor="pointer"; GDPR_reject_button.appendChild(document.createTextNode("REJECT COOKIES")); var GDPR_accept_button = document.createElement("span"); GDPR_accept_button.setAttribute("id","GDPR_accept_button"); GDPR_accept_button.style.cursor="pointer"; GDPR_accept_button.appendChild(document.createTextNode("ACCEPT COOKIES")); GDPR_reject_button.onclick=reject_cookies; GDPR_accept_button.onclick=accept_cookies; GDPR_table_undecided.appendChild(GDPR_row); GDPR_row.appendChild(GDPR_cell); GDPR_cell.appendChild(document.createElement("br")); GDPR_cell.appendChild(document.createTextNode("This site requires the use of cookies to comply with the ")); var a = document.createElement('a'); var GDPR_link = document.createTextNode("GDPR "); a.appendChild(GDPR_link); a.href = "https://en.wikipedia.org/wiki/General_Data_Protection_Regulation"; a.title = a.href; GDPR_cell.appendChild(a); GDPR_cell.appendChild(document.createTextNode(" and ")); var a = document.createElement('a'); var GOOGLE_link = document.createTextNode("Google's privacy policy"); a.appendChild(GOOGLE_link); a.href = "https://policies.google.com/privacy"; a.title = a.href; GDPR_cell.appendChild(a); GDPR_cell.appendChild(document.createTextNode(". Cookies are used for ")); var a = document.createElement('a'); var GOOGLE_ADS_link = document.createTextNode("ads personaliation"); a.appendChild(GOOGLE_ADS_link); a.href = "https://policies.google.com/technologies/partner-sites"; a.title = a.href; GDPR_cell.appendChild(a); GDPR_cell.appendChild(document.createTextNode(".")); GDPR_cell.appendChild(document.createElement("br")); GDPR_cell.appendChild(GDPR_reject_button); GDPR_cell.appendChild(GDPR_accept_button); document.body.appendChild(GDPR_table_undecided); GDPR_table_undecided.style.width="100%"; GDPR_table_undecided.style.backgroundColor="#f4d500"; /* yellow */ GDPR_table_undecided.style.backgroundColor="#f9f9f9"; GDPR_table_undecided.style.borderTop="dashed 1px #3f8a50"; GDPR_table_undecided.style.opacity="95%"; GDPR_table_undecided.style.textAlign="center"; GDPR_table_undecided.style.position="fixed"; GDPR_table_undecided.style.bottom="0"; GDPR_table_undecided.style.verticalAlign="middle"; /* some old IE convention */ /* reject button styles */ GDPR_reject_button.style.backgroundColor="#d34603"; GDPR_reject_button.style.color="#fffcf3"; GDPR_reject_button.style.padding="12px 20px"; GDPR_reject_button.style.border="none"; GDPR_reject_button.style.textAlign="center"; GDPR_reject_button.style.borderRadius=" 20px"; GDPR_reject_button.style.cursor="pointer"; GDPR_reject_button.style.fontSize="105%"; GDPR_reject_button.style.fontWeight="bold"; GDPR_reject_button.style.minWidth="160px"; GDPR_reject_button.style.display="inline-block"; GDPR_reject_button.style.margin="10px"; /* accept button styles */ GDPR_accept_button.style.backgroundColor="#3f8a50"; GDPR_accept_button.style.color="#fffcf3"; GDPR_accept_button.style.padding="12px 20px"; GDPR_accept_button.style.border="none"; GDPR_accept_button.style.textAlign="center"; GDPR_accept_button.style.borderRadius=" 20px"; GDPR_accept_button.style.cursor="pointer"; GDPR_accept_button.style.fontSize="105%"; GDPR_accept_button.style.fontWeight="bold"; GDPR_accept_button.style.minWidth="160px"; GDPR_accept_button.style.display="inline-block"; GDPR_accept_button.style.margin="10px"; } function remove_GDPR_cookie(){ console.log("Removed cookie: " + document.cookie); document.cookie = "GDPR=; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/; samesite=strict"; } function accepted(){ var cookie_img = document.createElement("img"); cookie_img.setAttribute("id","cookie_img"); /* used for link */ cookie_img.onclick=undecided; /* create click event */ cookie_img.addEventListener('click', cookie_img.remove); /* add second click event, removing cookie image */ cookie_img.addEventListener('click', remove_GDPR_cookie); /* add third click event, removing cookie */ cookie_img.style.cursor="pointer"; cookie_img.src = "https://www.munichbeergardens.com/images/beer/Cookie.png"; document.body.appendChild(cookie_img); cookie_img.style.position="fixed"; cookie_img.style.bottom="5px"; cookie_img.style.right="5px"; } function rejected(){ var GDPR_table_rejected = document.createElement("table"); GDPR_table_rejected.setAttribute("id","GDPR_table_rejected"); var GDPR_row = document.createElement("tr"); var GDPR_cell = document.createElement("td"); var GDPR_accept_button = document.createElement("span"); GDPR_accept_button.setAttribute("id","GDPR_accept_button"); GDPR_accept_button.style.cursor="pointer"; GDPR_accept_button.appendChild(document.createTextNode("ACCEPT COOKIES")); GDPR_accept_button.onclick=accept_cookies; GDPR_table_rejected.appendChild(GDPR_row); GDPR_row.appendChild(GDPR_cell); GDPR_cell.appendChild(GDPR_accept_button); GDPR_cell.appendChild(document.createElement("br")); GDPR_cell.appendChild(document.createTextNode("This site requires the use of cookies to comply with the ")); var a = document.createElement('a'); var GDPR_link = document.createTextNode("GDPR "); a.appendChild(GDPR_link); a.href = "https://en.wikipedia.org/wiki/General_Data_Protection_Regulation"; a.title = a.href; GDPR_cell.appendChild(a); GDPR_cell.appendChild(document.createTextNode(" and ")); var a = document.createElement('a'); var GOOGLE_link = document.createTextNode("Google's privacy policy"); a.appendChild(GOOGLE_link); a.href = "https://policies.google.com/privacy"; a.title = a.href; GDPR_cell.appendChild(a); GDPR_cell.appendChild(document.createTextNode(". Cookies are used for ")); var a = document.createElement('a'); var GOOGLE_ADS_link = document.createTextNode("ads personaliation"); a.appendChild(GOOGLE_ADS_link); a.href = "https://policies.google.com/technologies/partner-sites"; a.title = a.href; GDPR_cell.appendChild(a); GDPR_cell.appendChild(document.createTextNode(".")); document.body.appendChild(GDPR_table_rejected); GDPR_table_rejected.style.width="100%"; GDPR_table_rejected.style.height="100%"; GDPR_table_rejected.style.backgroundColor="#f9f9f9"; GDPR_table_rejected.style.opacity="95%"; GDPR_table_rejected.style.textAlign="center"; GDPR_table_rejected.style.position="fixed"; GDPR_table_rejected.style.bottom="0"; GDPR_table_rejected.style.verticalAlign="middle"; /* some old IE convention */ /* accept button styles */ GDPR_accept_button.style.backgroundColor="#3f8a50"; GDPR_accept_button.style.color="#fffcf3"; GDPR_accept_button.style.padding="12px 20px"; GDPR_accept_button.style.border="none"; GDPR_accept_button.style.textAlign="center"; GDPR_accept_button.style.borderRadius=" 20px"; GDPR_accept_button.style.cursor="pointer"; GDPR_accept_button.style.fontSize="105%"; GDPR_accept_button.style.fontWeight="bold"; GDPR_accept_button.style.minWidth="160px"; GDPR_accept_button.style.display="inline-block"; GDPR_accept_button.style.margin="10px"; }