Difference between revisions of "MediaWiki:Common.js"

From UCGO-WIKI
Jump to navigation Jump to search
 
(14 intermediate revisions by the same user not shown)
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. */
/** Class Code */
+
/* Class Code */
class ColorContent {
+
(function () {
     constructor(text, color) {
+
     function colorContent(text, color) {
         this.text = text
+
         var obj = {};
         this.color = color
+
        obj.text = text;
 +
         obj.color = color;
 +
        obj.xpath =  "//td[contains(text(),'" + text + "')]";
 +
        return obj;
 
     }
 
     }
     get xpath() {
+
     /* Active Code */
         return "//td[contains(text(),'" + this.text + "')]"
+
    console.log("on page: " + mw.config.get('wgPageName'));
 +
    if (mw.config.get('wgPageName') === 'Mobile_Suits') {
 +
         var colorList = [
 +
            colorContent('Super High Tensile Steel', '#7b9095'),
 +
            colorContent('x Titanium Alloy','#067da1'),
 +
            colorContent('x Luna Titanium Alloy','#0799c5')
 +
        ]
 +
 
 +
        for(var i = 0; i < colorList.length; i++)
 +
        {
 +
            var colorElement = colorList[i];
 +
            var y = document.evaluate(
 +
                colorElement.xpath,
 +
                document,
 +
                null,
 +
                XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
 +
                null
 +
            );
 +
            var numLinks = y.snapshotLength;
 +
 
 +
            for (var J = 0; J < numLinks; ++J) {
 +
                var x = y.snapshotItem(J);
 +
                x.style.color = colorElement.color
 +
            }
 +
        }
 
     }
 
     }
}
 
/** Active Code */
 
console.log("on page: " + mw.config.get('wgPageName'));
 
if (mw.config.get('wgPageName') === 'Mobile_Suits') {
 
    var colorList = [
 
        new ColorContent('Super High Tensile Steel', '#7b9095')
 
    ]
 
  
    colorList.forEach((colorElement) => {
 
        var y = document.evaluate(
 
            colorElement.xpath,
 
            document,
 
            null,
 
            XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
 
            null
 
        );
 
        var numLinks = y.snapshotLength;
 
  
        for (var J = 0; J < numLinks; ++J) {
+
}());
            var x = y.snapshotItem(J);
 
            x.style.color = colorElement.color
 
        }
 
    })
 
}
 

Latest revision as of 00:03, 17 April 2020

/* Any JavaScript here will be loaded for all users on every page load. */
/* Class Code */
(function () {
    function colorContent(text, color) {
        var obj = {};
        obj.text = text;
        obj.color = color;
        obj.xpath =  "//td[contains(text(),'" + text + "')]";
        return obj;
    }
    /* Active Code */
    console.log("on page: " + mw.config.get('wgPageName'));
    if (mw.config.get('wgPageName') === 'Mobile_Suits') {
        var colorList = [
            colorContent('Super High Tensile Steel', '#7b9095'),
            colorContent('x Titanium Alloy','#067da1'),
            colorContent('x Luna Titanium Alloy','#0799c5')
        ]

        for(var i = 0; i < colorList.length; i++)
        {
            var colorElement = colorList[i];
            var y = document.evaluate(
                colorElement.xpath,
                document,
                null,
                XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
                null
            );
            var numLinks = y.snapshotLength;

            for (var J = 0; J < numLinks; ++J) {
                var x = y.snapshotItem(J);
                x.style.color = colorElement.color
            }
        }
    }


}());