1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- var valid_user_id = /^[0-9a-f-A-F-]{32,36}$/; // uuid
- var xhr = new XMLHttpRequest();
- xhr.onload = function() {
- var response = JSON.parse(xhr.responseText);
- var status = {};
- response.map(function(elem) {
- var key = Object.keys(elem)[0];
- status[key] = elem[key];
- });
- var textures_err = status["textures.minecraft.net"] !== "green";
- var session_err = status["sessionserver.mojang.com"] !== "green";
- if (textures_err || session_err) {
- var warn = document.createElement("div");
- warn.setAttribute("class", "alert alert-warning");
- warn.setAttribute("role", "alert");
- warn.innerHTML = "<h5>Mojang issues</h5> Mojang's servers are having trouble <i>right now</i>, this may affect requests at Crafatar. <small><a href=\"https://help.mojang.com\" target=\"_blank\">check status</a>";
- document.querySelector("#alerts").appendChild(warn);
- }
- };
- document.addEventListener("DOMContentLoaded", function(event) {
- var avatars = document.querySelector("#avatar-wrapper");
- for (var i = 0; i < avatars.children.length; i++) {
- // shake 'em on down!
- // https://stackoverflow.com/a/11972692/2517068
- avatars.appendChild(avatars.children[Math.random() * i | 0]);
- }
- var tryit = document.querySelector("#tryit");
- var tryname = document.querySelector("#tryname");
- var images = document.querySelectorAll(".tryit");
- tryit.onsubmit = function(e) {
- e.preventDefault();
- tryname.value = tryname.value.trim();
- var value = tryname.value || "853c80ef3c3749fdaa49938b674adae6";
- if (!valid_user_id.test(value)) {
- tryname.value = "";
- return;
- }
- for (var j = 0; j < images.length; j++) {
- images[j].src = images[j].dataset.src.replace("$", value);
- }
- };
- xhr.open("GET", "https://status.mojang.com/check", true);
- xhr.send();
- });
|