MediaWiki:Common.js: Difference between revisions
From Unforgotten Realms Wiki
Jump to navigationJump to search
imported>Pillowkeeper No edit summary |
imported>Pillowkeeper No edit summary |
||
| Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.0.min.js"></script> | |||
function replace(){ | function replace(){ | ||
Revision as of 16:40, 15 April 2017
/* Any JavaScript here will be loaded for all users on every page load. */
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.0.min.js"></script>
function replace(){
var cards = "";
$.ajax({
url: "https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%20%3D%20%22http%3A%2F%2Furealms.com%2Fcache%2Fcarddata.js%22",
dataType: "xml",
success: function(data) {
var body = data.getElementsByTagName("body")[0];
var xmlText = new XMLSerializer().serializeToString(body);
cards = xmlText.substring(xmlText.indexOf("["), xmlText.indexOf("]"));
cards = cards + "]";
cards = JSON.parse(cards);
var colorList = {
accessory: "#51336d",
attribute: "#a1a1a1",
class: "#044274",
companion: "#03566d",
companionskill: "#027190",
item: "#827882",
race: "#266f1f",
rules: "#c35200",
boss: "#bf4040",
legendary: "#9a4204",
lore: "#9166ba",
treasure: "#bd9d06"
}
var regex = /\[{(.*?)}\]/g
var match = regex.exec($("#content").html());
while (match != null) {
var id = "";
var color = ""
var query = match[1];
var title = query.substring(0, query.indexOf("/") - 1);
var subtitle = query.substring(query.indexOf("/") + 2, query.length);
for(var i = 0; i < cards.length; i++) {
if(cards[i].subtitle.toLowerCase() == subtitle.toLowerCase() && cards[i].title.toLowerCase() == title.toLowerCase()) {
id = cards[i].id;
color = colorList[cards[i].type];
break;
}
}
var replacer = "<a id=\"cards\" style=\"color:" + color + "\" href = \"http:\/\/urealms.com/cards#" + id + "\">"+ query + "</a>";
$("#content").html($("#content").html().replace(/\[{(.*?)}\]/, replacer));
match = regex.exec($("#content").html());
}
}
});
}
var path = window.location.pathname;
if(path != "/index.php") {
document.onload = replace();
}
//Sidebar Social Icon Management
var panel = document.getElementById("mw-panel");
var line1 = document.createElement("hr");
line1.id = "line1";
line1.className = "line";
panel.appendChild(line1);
var container = document.createElement("div");
container.id = "container";
var link1 = document.createElement("a");
link1.href = "http://live.urealms.com/";
var image1 = document.createElement("img");
image1.id = "image1";
image1.className = "links";
image1.src = "https://wiki.urealms.com/images/b/b0/Website_Icon.png";
image1.width = "32";
image1.height = "32";
link1.appendChild(image1);
container.appendChild(link1);
var link2 = document.createElement("a");
link2.href = "https://www.twitch.tv/urealms";
var image2 = document.createElement("img");
image2.id = "image2";
image2.className = "links"
image2.src = "https://wiki.urealms.com/images/3/3e/Twitch_Icon.png";
image2.width = "32";
image2.height = "32";
link2.appendChild(image2);
container.appendChild(link2);
var link3 = document.createElement("a");
link3.href = "https://www.youtube.com/user/BruceWillakers";
var image3 = document.createElement("img");
image3.id = "image3";
image3.className = "links"
image3.src = "https://wiki.urealms.com/images/d/d2/Youtube_Icon.png";
image3.width = "32";
image3.height = "32";
link3.appendChild(image3);
container.appendChild(link3);
var link4 = document.createElement("a");
link4.href = "https://www.patreon.com/brucewillakers";
var image4 = document.createElement("img");
image4.id = "image4";
image4.className = "links"
image4.src = "https://wiki.urealms.com/images/e/e6/Patreon_Icon.png";
image4.width = "32";
image4.height = "32";
link4.appendChild(image4);
container.appendChild(link4);
var sheet = document.createElement('style')
sheet.innerHTML = ".links {display: inline-block; margin: 3px; border: 2px solid #443924; border-radius: 5px; -webkit-transition: .25s ease-in-out;} .links:hover { border: 2px solid #877147;} #container {text-align: center; } .line { border: 1px solid #443924; } .wikiButton {-webkit-transition: .25s ease-in-out;} .wikiButton:hover { -webkit-filter: opacity(60%);}";
container.appendChild(sheet);
var line2 = document.createElement("hr");
line2.id = "line2";
line2.className = "line";
container.appendChild(line2);
panel.appendChild(container);
//Main Sidebar Management
$("#p-Coes_Quest-label").text("Coe's Quest");
$("#p-URealms-label").nextAll(".body:first").show();
$("#p-Coes_Quest-label").nextAll(".body:first").hide();
$("#p-Community-label").nextAll(".body:first").hide();
$("#p-Wiki-label").nextAll(".body:first").show();
$("#p-tb-label").nextAll(".body:first").hide();
for (var i = 0; i < $("#p-URealms-label, #p-Coes_Quest-label, #p-Wiki-label, #p-tb-label, #p-Community-label").length; i++) {
if ($("#p-URealms-label, #p-Coes_Quest-label, #p-Wiki-label, #p-tb-label, #p-Community-label").next(".body").eq(i).is(":visible")) {
$("#p-URealms-label, #p-Coes_Quest-label, #p-Wiki-label, #p-tb-label, #p-Community-label").eq(i).prepend("▾");
} else {
$("#p-URealms-label, #p-Coes_Quest-label, #p-Wiki-label, #p-tb-label, #p-Community-label").eq(i).prepend("▸");
}
}
$("#p-URealms-label, #p-Coes_Quest-label, #p-Wiki-label, #p-tb-label, #p-Community-label").click(function() {
if ($(this).text().charAt(0) == "▾") {
var string = $(this).text();
var newString = string.replace("▾", "▸");
$(this).text(newString);
} else {
var string = $(this).text();
var newString = string.replace("▸", "▾");
$(this).text(newString);
}
$(this).nextAll(".body:first").slideToggle();
});


