MediaWiki:Disclaimer.js
Poznámka: Po zveřejnění musíte vyprázdnit cache vašeho prohlížeče, jinak změny neuvidíte.
- Firefox / Safari: Při kliknutí na Aktualizovat držte Shift nebo stiskněte Ctrl-F5 nebo Ctrl-R (na Macu ⌘-R)
- Google Chrome: Stiskněte Ctrl-Shift-R (na Macu ⌘-Shift-R)
- Internet Explorer / Edge: Při kliknutí na Aktualizovat držte Ctrl nebo stiskněte Ctrl-F5
- Opera: Stiskněte Ctrl-F5.
/* ============== DISCLAIMER =================================
autor: Petr Kajzar [[Uživatel:Slepi]]
datum: 03/2016
dokumentace: [[MediaWiki:Disclaimer.js/dokumentace]]
popis: vyloučení odpovědnosti ve WS
==========================================================
*/
var disclaimerCreator = {
xmlhttpDiscText : "",
urlText : wgServer + wgScript + "/MediaWiki:Disclaimer-text?action=raw",
discText : "",
registrText : "<b>Zaregistrovat a již neupozorňovat</b>",
souhlasText : "Pokračovat bez registrace",
nesouhlasText : "Zpět",
urlPrihlasit : "http://www.wikiskripta.eu/index.php/Speci%C3%A1ln%C3%AD:P%C5%99ihl%C3%A1sit",
urlRegistrovat : "http://www.wikiskripta.eu/index.php?title=Speciáln%C3%AD:Přihlásit&type=signup",
jmenoUdelatka : "Nezobrazovat upozornění o vyloučení odpovědnosti",
install : function () {
if($(window).width() < 800) return false;
// test cookies
var cookiePos = document.cookie.indexOf("ws_disc=1");
if (cookiePos > -1) return false;
// přidání CSS stylu
importStylesheet("MediaWiki:Disclaimer.css");
// vytvoření divu pro overlay
overlayDiv = document.createElement("div");
overlayDiv.className = "overlay_div";
overlayDiv.id = "overlay_div";
// přidání divu na stránku
document.body.appendChild(overlayDiv);
// blok s textem
contentDiv = document.createElement("div");
contentDiv.className = "content_div";
contentDiv.id = "content_div";
// přidání bloku na stránku
document.body.appendChild(contentDiv);
// text disclaimeru
getXMLHttpRequest("disclaimerCreator.xmlhttpDiscText", disclaimerCreator.urlText, "disclaimerCreator.getText");
},
getText : function() {
if (disclaimerCreator.xmlhttpDiscText.readyState==4) {// 4 = "loaded"
if (disclaimerCreator.xmlhttpDiscText.status==200) {// 200 = OK
disclaimerCreator.discText = disclaimerCreator.xmlhttpDiscText.responseText; // odpoved serveru
disclaimerCreator.showText();
}
}
},
showText : function() {
// přidání textu na stránku
contentDiv.innerHTML = "<h2>Upozornění</h2>"
+ "<p>"
+ disclaimerCreator.discText
+ "<br /></p>";
// přidání tlačítek
contentDiv.innerHTML += '<form action="">'
+ '<button onclick="return disclaimerCreator.closeDisclaimer(2);">'
+ disclaimerCreator.registrText
+ '</button>'
+ '<button onclick="return disclaimerCreator.closeDisclaimer(1);">'
+ disclaimerCreator.souhlasText
+ '</button>'
+ '<button onclick="return disclaimerCreator.closeDisclaimer(0);">'
+ disclaimerCreator.nesouhlasText
+ '</button></form>';
// info o vypnutí disclaimeru
contentDiv.innerHTML += '<p><br /><br /><small>'
+ '<a href="' + disclaimerCreator.urlPrihlasit + '">Přihlášeným uživatelům</a> '
+ 'se toto upozornění již nezobrazuje.</small><p>';
// ukázání disclaimeru
overlayDiv.style.display = "block";
contentDiv.style.display = "block";
},
writeCookies : function() {
document.cookie = "ws_disc=1";
},
closeDisclaimer : function(a) {
if (a==1) {
document.getElementById('overlay_div').style.display = 'none';
document.getElementById('content_div').style.display = 'none';
disclaimerCreator.writeCookies();
return false;
} else if (a==2) {
window.location = disclaimerCreator.urlRegistrovat;
return false;
} else if (a==0) {
history.back();
return false;
}
}
}
if (mw.config.get("wgAction") == "view" && mw.config.get("wgPageName") != "Home" && mw.config.get("wgNamespaceNumber") == 0) {
if (mw.config.get("wgUserName") == null) { // pouze u nepřihlášených uživatelů
$(function() { disclaimerCreator.install(); });
}
}