NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name SG UI - Activate Key Link // @namespace steamgifts // @include *://www.steamgifts.com/giveaways/won // @version 1.0.0 // @grant none // @run-at document-end // @description Add a URL to activate Steam keys // @author crazoter // @updateURL https://openuserjs.org/meta/crazoter/SG_UI_-_Activate_Key_Link.meta.js // @downloadURL https://openuserjs.org/src/scripts/crazoter/SG_UI_-_Activate_Key_Link.user.js // ==/UserScript== var API_URL = "https://store.steampowered.com/account/registerkey?key="; var dom_keys = document.getElementsByClassName("table__column--width-medium text-center"); var isKeyRegex = /([A-Za-z0-9]+)(-([A-Za-z0-9]+)){2,}/g; // //Setup UI by looping through all visible keys and linking them appropriately // function setupUI() { for(var i=1;i<dom_keys.length;i++) {//ignore header if(dom_keys[i].children.length > 0 && dom_keys[i].children[0].dataset.clipboardText) { var s = dom_keys[i].children[0].dataset.clipboardText.trim(); if(isSteamKey(s)) { dom_keys[i].innerHTML = dom_keys[i].children[0].outerHTML+'<a class="table__column__secondary-link" href="'+activateKeyURL(s)+'" rel="nofollow" target="_blank">'+s+"</a>"; } } } } function delayedSetupUI() { window.setTimeout(function(){ if($(".view_key_btn.is_loading").length > 0) { delayedSetupUI(); } else { setupUI(); } },200); } function activateKeyURL(key) { return API_URL+key; } function isSteamKey(s) { if(s) { return s.match(isKeyRegex) != null; } else { return false; } } $("div.view_key_btn").click(function(){ delayedSetupUI(); }); setupUI();