Show a list of the steam keys
当前为
// ==UserScript==
// @name Bundle Key Lister
// @namespace https://greasyfork.org/de/scripts/394604-bundle-key-lister
// @version 0.2
// @description Show a list of the steam keys
// @author Guitar Hero
// @grant none
// @match https://www.humblebundle.com/downloads*
// ==/UserScript==
(function() {
'use strict';
function insertBefore(el, referenceNode) {
referenceNode.parentNode.insertBefore(el, referenceNode);
}
function getKeyList() {
var keyList = '';
document.querySelectorAll('.key-redeemer').forEach(function(item){
keyList += "<br>" + item.querySelector('.heading-text').innerText.trim() + ": ";
keyList += item.querySelector('.keyfield-value').innerText.trim();
});
return keyList;
}
function generateBox() {
var keyBox = document.querySelector(".key-container").parentElement;
var captionBox = document.createElement("div");
captionBox.setAttribute("class", "wrapper");
captionBox.innerHTML = "<h3 style='font-size:2em; font-weight:bold; text-transform:uppercase;'>Steam Key Summary</h3>";
var keyListBox = document.createElement("div");
keyListBox.setAttribute("class", "wrapper");
keyListBox.innerHTML = "LOADING...";
keyListBox.setAttribute("id", "key-list-box");
keyListBox.setAttribute("style", "font-weight:bold;");
var outerBox = document.createElement("div");
outerBox.setAttribute("class", "whitebox-redux small");
outerBox.insertAdjacentElement("afterbegin", keyListBox);
outerBox.insertAdjacentElement("afterbegin", captionBox);
insertBefore(outerBox, keyBox);
}
function setKeyListToBox() {
console.log("KEY BOX length? "+(document.querySelectorAll('.key-redeemer').length));
if (document.querySelectorAll('.key-redeemer').length == 0) {
setTimeout(setKeyListToBox, 1000);
return;
}
document.querySelector("#key-list-box").innerHTML = getKeyList();
}
generateBox();
setKeyListToBox();
})();