// ==UserScript==
// @name Where's MaGnO
// @namespace http://tampermonkey.net/
// @version 1.0
// @description Check if MaGnO is still locked up in federal jail
// @author Omanpx [1906686]
// @match https://www.torn.com/*
// @grant GM_addStyle
// @connect api.torn.com
// ==/UserScript==
// THIS IS AN AMALGAMATION OF MANY SCRIPTS, I'M SO SORRY FOR THIS!
var apiKey = "YOUR_API_KEY"; // Enter your API key here
// --- Don't edit below this line
'use strict';
setTimeout(renderButton, 500);
GM_addStyle ( `
.magno {
background-color:#000000;
border-radius:1em;
border:1px solid #942911;
display:inline-block;
cursor:pointer;
color:#ffffff;
font-family:Arial;
font-size:.75em;
padding:.3em .5em;
text-decoration:none;
margin-bottom: .7em;
}
` );
const findMagno = async () => {
let url = `https://api.torn.com/user/51498?selections=profile&comment=JSdemo&key=${apiKey}`;
return new Promise((resolve, reject) => {
$.getJSON(url).done((result) => {
if (result.error != undefined){
reject(result.error);
} else {
resolve(result);
}
})
.fail(function( jqxhr, textStatus, error ) {
var err = textStatus + ', ' + error;
reject(err);
});
});
}
let result = await findMagno();
let fed = result.status.state;
function checkOnMagno() {
if (fed == "Federal") {
alert("Is MaGnO still fedded? \nYes (thank God!)")
} else {
alert("Is MaGnO still fedded? \nNo (hide your API keys!)")
}
}
function getSidebar() {
let key = Object.keys(sessionStorage).find(key => /sidebarData\d+/.test(key));
let sidebarData = JSON.parse(sessionStorage.getItem(key))
return sidebarData
}
function renderButton(){
if (!document.getElementById('magno-button')) {
var sidebar = getSidebar()
let elem = document.querySelector ( '.content___mJm7x' )
if (elem != null) {
let html = `<a href="#" class="magno" id="magno-button">Check MaGnO</a>`
elem.children[0].insertAdjacentHTML('afterend', html);
const magnoButton = document.getElementById('magno-button');
magnoButton.addEventListener('click', function () {
checkOnMagno()
});
}
}
setTimeout(renderButton, 500)
}