MediaWiki:Gadget-Gender.js: Difference between revisions

From Zelda Dungeon Wiki
Jump to navigation Jump to search
Want an adless experience? Log in or Create an account.
No edit summary
No edit summary
Line 23: Line 23:
           genderSymbol = "<span style=\"color: pink;\">&#x2640;</span>";
           genderSymbol = "<span style=\"color: pink;\">&#x2640;</span>";
         } else if (genderText == "male") {
         } else if (genderText == "male") {
           genderSymbol = "<span style=\"color: blue;\">&#x2642;</span>";
           genderSymbol = "<span style=\"color: #188AC7;\">&#x2642;</span>";
         }
         }
   
   

Revision as of 21:57, April 5, 2012

// If on a user or user talk page, and not a subpage...
if ((wgNamespaceNumber == 2 || wgNamespaceNumber == 3) &&
    !/\//.test(wgTitle)) {
  // add a hook to...
  $(function() {
    // init AJAX and request the user's gender from the API
    var a = sajax_init_object();
    a.open("GET", wgServer + wgScriptPath + 
                  "/api.php?format=json&action=query&list=users&ususers=" + 
                  escape(wgTitle.replace(/ /, "_")) + "&usprop=gender",
           true);
 
    // when response arrives...
    a.onreadystatechange = function() {
      if(a.readyState == 4 && a.status == 200) {
        // parse the JSON response
        var genderText = 
          eval("(" + a.responseText + ")").query.users[0].gender;
 
        // U+2640 and U+2642 are female and male signs respectively.
        var genderSymbol = "";
        if (genderText == "female") {
          genderSymbol = "<span style=\"color: pink;\">&#x2640;</span>";
        } else if (genderText == "male") {
          genderSymbol = "<span style=\"color: #188AC7;\">&#x2642;</span>";
        }
 
 
        // if gender was specified, append the symbol
        if (genderSymbol != "") {
          document.getElementById("firstHeading").innerHTML += 
            "&nbsp;" + genderSymbol;
        }
      }
    };
 
    // send the API request
    a.send();
  });
}