Difference between revisions of "MediaWiki:Common.js"

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


}());