// ==UserScript== // @name Steam WishList Cleaner // @namespace TypeNANA // @version 0.3 // @description 批量自定义清除Steam愿望单 // @author TypeNANA // @match https://store.steampowered.com/wishlist/* // @downloadURL https://update.greasyfork.icu/scripts/371138/Steam%20WishList%20Cleaner.user.js // @updateURL https://update.greasyfork.icu/scripts/371138/Steam%20WishList%20Cleaner.meta.js // ==/UserScript== (function () { function checkAll() { var flag = document.getElementById("checkAll").checked; for (var i in g_Wishlist.rgElements) { var checkBox = g_Wishlist.rgElements[i][0].getElementsByClassName("gameCheck")[0]; checkBox.checked = flag; } } function delGame() { var list = []; for (var i in g_Wishlist.rgElements) { var checkBox = g_Wishlist.rgElements[i][0].getElementsByClassName("gameCheck")[0]; if (checkBox.checked) { list.push(checkBox.id); } } webRequest(list, 0); } var modal; function webRequest(packages, index) { if (index >= packages.length) { location.reload(); return; }; if (packages[index] == undefined) { webRequest(packages, index + 1); return; } modal = ShowBlockingWaitDialog('请求中', '删除愿望单中,已完成' + (index) + "/" + packages.length); jQuery.post(g_strWishlistBaseURL + 'remove/', { appid: packages[index], sessionid: g_sessionID }).done(function (res) { modal.Dismiss(); webRequest(packages, index + 1); }); } var flag = false; function SetPage() { if(flag) return; for (var i in g_Wishlist.rgElements) { g_Wishlist.rgElements[i][0].childElements()[2].innerHTML += ''; } var page_content = document.getElementById("footer_spacer"); page_content.innerHTML += '
'; document.getElementById("delGames").onclick = function () { delGame(); }; document.getElementById("checkAll").onchange = function () { checkAll(); }; flag = true; } function SetBtn(){ var page_content = document.getElementsByClassName("wishlist_header")[0]; page_content.innerHTML += ''; document.getElementById("manageLicenses").onclick = function () { SetPage(); }; } SetBtn(); })();