您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a checkbox to remember OpenID logins
// ==UserScript== // @name Steam OpenID auto approval // @namespace w8v1khnnd8e1s7ef // @description Adds a checkbox to remember OpenID logins // @match https://steamcommunity.com/openid/login // @grant GM.setValue // @grant GM.getValue // @version 1.1 // @run-at document-end // @inject-into content // @license MIT // ==/UserScript== (async function () { "use strict"; const openidForm = document.getElementById("openidForm"); const loginForm = document.getElementById("loginForm"); const errors = document.getElementById("error_display"); // Abort if we're logged out or errors are showing if (!openidForm || loginForm || errors?.offsetHeight) { return; } let prefKey; { let realm; try { realm = JSON.parse(atob(openidForm.elements.openidparams.value))["openid.realm"]; } catch (ignore) {} if (!realm) { return; } const accountID = document.querySelector("[data-miniprofile]")?.dataset.miniprofile ?? "default"; prefKey = `autologin_${accountID}_${realm}`; } const loginButton = openidForm.elements.imageLogin; if (await GM.getValue(prefKey)) { loginButton.type = "hidden"; loginButton.after("Signing in..."); openidForm.submit(); } else { // Create elements: // " ☑ Automatically sign into this site" const label = document.createElement("label"); const checkbox = document.createElement("input"); checkbox.type = "checkbox"; label.title = "Automatically accept sign-in requests from this site in the future." label.append(checkbox, " Automatically sign into this site"); openidForm.addEventListener("submit", async () => { if (checkbox.checked) { await GM.setValue(prefKey, true); } }); loginButton.after(" ", label); } })();