Deep Rock Galactic Wiki
(Json Tests)
(Ugly Hack Attempt)
Line 49: Line 49:
 
} ).done( function ( data ) {
 
} ).done( function ( data ) {
 
console.log( data );
 
console.log( data );
  +
var uglyHack = JSON.parse(JSON.stringify(data));
  +
console.log("uglyHack: " + uglyHack);
 
jsonData = JSON.parse(data);
 
jsonData = JSON.parse(data);
 
console.log("JSON: " + data );
 
console.log("JSON: " + data );

Revision as of 18:09, 17 September 2020

//***********************
//* Paint Job Viewer JS *
//***********************

window.onload = function(){
		var hoverPaintJobJS = document.getElementsByClassName("PaintJob");
    var hoverFrameWorkJS = document.getElementsByClassName("FrameWork");
    var PaintJob = "Stock";
    var FrameWork = "Stock";
    var Weapon = document.getElementById("Weapon").className;
    var WeaponName = document.getElementById("WeaponName").className;
    var i;
    for (i = 0; i < hoverPaintJobJS.length; i++) {
      hoverPaintJobJS[i].addEventListener("mousedown", function( event ) {
        PaintJob = this.id;
    	document.getElementById("Name").innerHTML = WeaponName + ": " + FrameWork + " - "+ PaintJob;
        document.getElementById("Image").innerHTML = "File:Skin "+ Weapon + " " + FrameWork + " " + PaintJob +".png";
        findImage("File:Deep Dive Terminal.jpg");
        }, false);
      hoverPaintJobJS[i].addEventListener("mouseover", function( event ) {
        this.className += " Selected"
        }, false);
     	hoverPaintJobJS[i].addEventListener("mouseout", function( event ) {
        this.className = "PaintJob"
        }, false);
    }
    for (i = 0; i < hoverFrameWorkJS.length; i++) {
      hoverFrameWorkJS[i].addEventListener("mousedown", function( event ) {
      FrameWork = this.id;
    		document.getElementById("Name").innerHTML = WeaponName + ": " + FrameWork + " - "+ PaintJob;
        document.getElementById("Image").innerHTML = "File:Skin "+ Weapon + " " + FrameWork + " " + PaintJob +".png";
        }, false);
      hoverFrameWorkJS[i].addEventListener("mouseover", function( event ) {
    		this.className += " Selected"
        }, false);
     	hoverFrameWorkJS[i].addEventListener("mouseout", function( event ) {
        this.className = "FrameWork"
        }, false);
    }
}
function findImage(fileName) {
	var api = new mw.Api();
api.get( {
    action: 'query',
    format: 'json',
    prop: 'imageinfo',
    titles: fileName,
    iiprop: 'url',
} ).done( function ( data ) {
    console.log( data );
    var uglyHack = JSON.parse(JSON.stringify(data));
    console.log("uglyHack: " + uglyHack);
    jsonData = JSON.parse(data);
    console.log("JSON: " + data );
    console.log("URL: " + jsonData.query.pages[0].imageinfo[0].url);
} );
}
//***********
//* MathJax *
//***********
//Called in due to Math Extension being ... well completely & utterly broken for >2 months

loadScript("https://polyfill.io/v3/polyfill.min.js?features=es6");
loadScript("https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js");

function loadScript(url) {
   var script = document.createElement('script'), done = false;
   script.src = url;
   script.onload = script.onreadystatechange = function(){
     if ( !done && (!this.readyState ||
          this.readyState == "loaded" || this.readyState == "complete") ) {
       done = true;
    }
  };
  document.getElementsByTagName("head")[0].appendChild(script);
}