MediaWiki:Common.js: Difference between revisions

From UCGO-WIKI
Jump to navigation Jump to search
No edit summary
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. */
/** Class Code */
/* Class Code */
class ColorContent {
class ColorContent {
     constructor(text, color) {
     constructor(text, color) {
         this.text = text;
         this.text = text
         this.color = color;
         this.color = color
     }
     }
     get xpath() {
     get xpath() {
         return "//td[contains(text(),'" + this.text + "')]";
         return "//td[contains(text(),'" + this.text + "')]"
     }
     }
}
}
/** Active Code */
/* Active Code */
console.log("on page: " + mw.config.get('wgPageName'));
console.log("on page: " + mw.config.get('wgPageName'));
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')
         new ColorContent('Super High Tensile Steel', '#7b9095')
     ];
     ]


     colorList.forEach((colorElement) => {
     colorList.forEach((colorElement) => {
Line 29: Line 29:
         for (var J = 0; J < numLinks; ++J) {
         for (var J = 0; J < numLinks; ++J) {
             var x = y.snapshotItem(J);
             var x = y.snapshotItem(J);
             x.style.color = colorElement.color;
             x.style.color = colorElement.color
         }
         }
     });
     })
}
}

Revision as of 23:47, 16 April 2020

/* Any JavaScript here will be loaded for all users on every page load. */
/* Class Code */
class ColorContent {
    constructor(text, color) {
        this.text = text
        this.color = color
    }
    get xpath() {
        return "//td[contains(text(),'" + this.text + "')]"
    }
}
/* 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
        }
    })
}