Prefill API key and check 'pretty' radio buttons. Makes available fields clickable and fires try it button when clicked.
目前為
// ==UserScript==
// @name TornAPI Quick Fill
// @namespace TornTos
// @version 1.0
// @description Prefill API key and check 'pretty' radio buttons. Makes available fields clickable and fires try it button when clicked.
// @author tos
// @match *.api.torn.com/*
// @grant none
// ==/UserScript==
APIkey = 'APIkey'; //API KEY HERE (leave quotes it's a string)
apiQuickFill();
function apiQuickFill() {
const observer = new MutationObserver((mutations) => {
for (const mutation of mutations) {
for (const node of mutation.addedNodes) {
if(node.tagName === 'SMALL'){
var fieldsNode = node.parentNode;
fieldsNode.append($('<strong>', {text: 'Available Fields: '})[0]);
var selectionList = node.innerText.split(': ')[1].split(', ');
for(i=0; i < selectionList.length - 1; i++){
var newLink = $('<span>', {style:"cursor: pointer;", text: selectionList[i]})[0];
fieldsNode.append(newLink);
newLink.addEventListener('click', apiLinkClicked);
fieldsNode.append($('<span>', {text: ', '})[0]);
}
var lastLink = $('<span>', {style:"cursor: pointer;", text: selectionList[i]})[0];
fieldsNode.append(lastLink);
lastLink.addEventListener('click', apiLinkClicked);
node.remove();
}
}
}
});
const wrapper = document.querySelector('#demo');
observer.observe(wrapper, { subtree: true, childList: true });
$('.demoLink').click();
$('#api_key').val(APIkey).focusout();
$("input:radio[value='pretty']").attr('checked', true);
$.ajax({
type: "GET",
url: 'https://api.torn.com/user/?selections=&key='+APIkey,
success: function (response) {
if(response.property_id){$('#p_id').val(response.property_id);}
if(response.faction){$('#f_id').val(response.faction.faction_id);}
if(response.job){$('#c_id').val(response.job.company_id);}
}
});
}
function apiLinkClicked(){
$('#'+ this.parentNode.className.charAt(0) +'_selections')[0].value = this.innerHTML;
$('#'+ this.parentNode.className.charAt(0) +'_').click();
}