您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
Imports/Exports Steam Ignore List
当前为
// ==UserScript== // @name Import/Export Steam Ignore List // @language English // @namespace http://greasyfork.icu/users/2205 // @description Imports/Exports Steam Ignore List // @include https://store.steampowered.com/account/notinterested/* // @include http://store.steampowered.com/account/notinterested/* // @version 1.0 // @grant none // ==/UserScript== var anchor = document.getElementsByClassName("ignoredapps")[0]; //Export var ExportBtn=document.createElement("div"); ExportBtn.setAttribute("class","btn_darkblue_white_innerfade btn_medium"); ExportBtn.setAttribute("style","margin-right: 5px !important;"); ExportBtn.appendChild(document.createElement("span")); ExportBtn.firstChild.appendChild(document.createTextNode("Export")); var newExportBtn=anchor.parentElement.insertBefore(ExportBtn,anchor); newExportBtn.addEventListener("click",function(){ $J.get("/dynamicstore/userdata/", {t: new Date().getTime()}, function(data) { var strdata=data.rgIgnoredApps.toString(); var exportDialog=ShowAlertDialog("Ignore List", '<div class="bb_code">'+strdata.replace(/\,/g, ",<br />")+'</div>', "OK"); },"json").fail(function() { ShowAlertDialog("Export Error","There was an error retrieving ignore list","OK"); }); }); //Import var ImportBtn=document.createElement("div"); ImportBtn.setAttribute("class","btn_darkblue_white_innerfade btn_medium"); ImportBtn.setAttribute("style","margin-right: 5px !important;"); ImportBtn.appendChild(document.createElement("span")); ImportBtn.firstChild.appendChild(document.createTextNode("Import")); var newImportBtn=anchor.parentElement.insertBefore(ImportBtn,anchor); var successfull=0; var failed=0; var totalitems; newImportBtn.addEventListener("click",function(){ importDialog=ShowPromptWithTextAreaDialog( "Import Ignore List", "", "OK", "Cancel", 32765 ).done( function(newIgnoreListText){ if (/^[0-9]+(,\s*[0-9]+)*$/.test(newIgnoreListText)) { var IgnoreListTextItems=newIgnoreListText.split(","); successfull=0; failed=0; totalitems=IgnoreListTextItems.length; for (var i=0; i<totalitems;i++){ ignoreitem=parseInt(IgnoreListTextItems[i].trim()); if (ignoreitem===0){ continue; //Dunno why this can even happen, but still } $J.post('/recommended/ignorerecommendation/',{ sessionid: g_sessionID, appid: ignoreitem, add: 1 }, function() { successfull++; if ((successfull+failed)===totalitems) { ShowAlertDialog( "Import", "Import Finished.<br />Press \"OK\" to reload page.", "OK" ).done(function(){ window.location.reload(); }); } } ).fail(function() { failed++; if ((successfull+failed)===totalitems) { ShowAlertDialog( "Import", "Import Finished.<br />Press \"OK\" to reload page.", "OK" ).done(function(){ window.location.reload(); }); } } ); } } else { ShowAlertDialog( "Import Error", "Wrong list syntax!", "OK" ); } }); }); var ClearBtn=document.createElement("div"); ClearBtn.setAttribute("class","btn_darkblue_white_innerfade btn_medium"); ClearBtn.setAttribute("style","margin-right: 5px !important;"); ClearBtn.appendChild(document.createElement("span")); ClearBtn.firstChild.appendChild(document.createTextNode("Clear")); var newClearBtn=anchor.parentElement.insertBefore(ClearBtn,anchor); newClearBtn.addEventListener("click",function(){ ShowConfirmDialog( "Clear Ignore List", "Are you sure you want to clear ignore list?", "Yes", "No").done(function(){ $J.get("/dynamicstore/userdata/", {t: new Date().getTime()}, function(data) { successfull=0; failed=0; totalitems=data.rgIgnoredApps.length; for (var j=0;j<totalitems;j++){ $J.post("/recommended/ignorerecommendation/", {sessionid: g_sessionID, appid: data.rgIgnoredApps[j], remove: 1}, function () { successfull++; if ((successfull+failed)===totalitems) { if (failed>0){ ShowAlertDialog( "Clear", "Cleanup finished, unable to remove "+failed+" items.<br />Press \"OK\" to reload page.", "OK" ).done(function(){ window.location.reload(); }); } else { ShowAlertDialog( "Clear", "Ignore list cleared successfuly<br />Press \"OK\" to reload page.", "OK" ).done(function(){ window.location.reload(); }); } } } ).fail(function(){ failed++; if ((successfull+failed)===totalitems) { ShowAlertDialog( "Clear", "Cleanup finished, unable to remove "+failed+" items.<br />Press \"OK\" to reload page.", "OK" ).done(function(){ window.location.reload(); }); } }); } },"json").fail(function() { ShowAlertDialog("Clean Error","There was an error retrieving ignore list","OK"); }); }); });