Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Steam Trade Autobump
- // @namespace http://steamcommunity.com/groups/Cannonknights
- // @version 4.20
- // @description Bumps trades on a bunch of trading sites
- // @match http://www.tf2outpost.com/trade*
- // @match http://www.csgoutpost.com/trade*
- // @match http://www.dotaoutpost.com/trade*
- // @match http://bazaar.tf/trade*
- // @match http://bazaar.tf/my*
- // @match http://csgolounge.com/mytrades*
- // @match http://dota2lounge.com/mytrades*
- // @match http://tf2tp.com/myTrades.php*
- // @run-at document-end
- // @copyright 2013+, Sir Campsalot
- // ==/UserScript==
- (function() {
- //for some reason, TF2 Trading Post bumping only works on chrome
- //this is why I don't actually say on userscripts that the script bumps on tf2tp
- //if you use chrome and want to bump trades on tf2tp, go ahead
- //sorry to other browser users
- /*********** SETTINGS ***********/
- var OutpostSingleTradeBump = true; //
- var OutpostBumpOnePerReload = false; //
- var OutpostWaitBetweenBump = true; //
- var OutpostTimeBetweenEachBump = 10; //
- var CSGOLoungeBumpOnePerReload = true; //bump only one trade per reload on CSGO Lounge?
- var CSGOLoungeWaitBetweenBump = true; //wait a few seconds between each trade bump? doesn't work with CSGOLoungeBumpOnePerReload
- var CSGOLoungeTimeBetweenEachBump = 20; //seconds between each bump when CSGOLoungeWaitBetweenBump is true
- var Dota2LoungeBumpOnePerReload = true; //
- var Dota2LoungeWaitBetweenBump = false; //
- var Dota2LoungeTimeBetweenEachBump = 10; //
- var TradingPostBumpRandomTrade = true; //
- var TradingPostTradeToBump = 1; //
- var OutpostRandomReloadTimes = true; //
- var BazaarRandomReloadTimes = false; //
- var CSGOLoungeRandomReloadTimes = false; //random page reload times on CSGOLounge?
- var Dota2LoungeRandomReloadTimes = false; //
- var TradingPostRandomReloadTimes = false; //
- var OutpostReloadIfNotRandom = 1; //
- var OutpostMaxReloadTime = 5; //
- var OutpostMinReloadTime = 1; //
- var OutpostSingleReloadIfNotRandom = 5; //
- var OutpostSingleMaxReloadTime = 10; //
- var OutpostSingleMinReloadTime = 5; //
- var BazaarReloadIfNotRandom = 5; //
- var BazaarMaxReloadTime = 5; //
- var BazaarMinReloadTIme = 1; //
- var CSGOLoungeReloadIfNotRandom = 1; //if not random page reload time, reload time for all trade bump on CSGO Lounge
- var CSGOLoungeMaxReloadTime = 2; //max random reload time for all trade bump on CSGO Lounge
- var CSGOLoungeMinReloadTIme = 1; //minimum random reload time for all trade bump on CSGO Lounge
- var Dota2LoungeReloadIfNotRandom = 1; //
- var Dota2LoungeMaxReloadTime = 5; //
- var Dota2LoungeMinReloadTIme = 1; //
- var TradingPostReloadIfNotRandom = 1; //
- var TradingPostMaxReloadTime = 5; //
- var TradingPostMinReloadTIme = 1; //m
- /******** END OF SETTINGS *******/
- function randominrange(low,high) {return Math.round(Math.random()*(high-low)+low);}
- function getElementsByClass(clas) {
- var ret = [];
- var elems = document.getElementsByTagName('*'), i;
- for (i in elems) {
- if((' ' + elems[i].className + ' ').indexOf(' '+clas+' ')
- > -1) {
- ret.push(elems[i]);
- }
- }
- return ret;
- }
- function ParseUrl() {
- var parser = document.createElement('a');
- parser.href = undefined;
- return parser;
- }
- function tptradecount() {
- var total = 0;
- var xpr = document.evaluate(".//tr/td/div[@class='trade']",document,null,XPathResult.ANY_TYPE,null);
- var anchor;
- while (anchor = xpr.iterateNext()) {
- if (anchor && anchor.getAttribute('id')) total++;
- else break;
- }
- return total;
- }
- function notify(notify) {
- var divid = "stab"; //lol the acronym for steam trade autobump is stab
- var div = document.getElementById(divid);
- if (!div) {
- var trades;
- if (ParseUrl()=="http://www.tf2outpost.com/undefined" || ParseUrl()=="http://www.dotaoutpost.com/undefined" || ParseUrl()=="http://www.csgoutpost.com/undefined" || ParseUrl()=="http://bazaar.tf/undefined") trades = document.getElementById("trades");
- if (ParseUrl()=="http://www.tf2outpost.com/trade/undefined") trades = document.getElementById("trade");
- if (ParseUrl()=="http://csgolounge.com/undefined" || ParseUrl()=="http://dota2lounge.com/undefined") trades = getElementsByClass("box")[0];
- if (ParseUrl()=="http://tf2tp.com/undefined") trades = document.getElementById("content");
- var div = document.createElement("div");
- div.id = divid;
- trades.insertBefore(div, trades.childNodes[0]);
- }
- div.innerHTML = notify;
- }
- function showstatus() {
- reload_time--;
- if (tpdelay > 0) {
- tpdelay--;
- if (tpdelay==0 && ParseUrl()=="http://tf2tp.com/undefined") acceptallalerts(false);
- }
- if (reload_time <= 0) {
- clearInterval(counter);
- location.reload();
- return;
- }
- var hr = Math.floor(reload_time/3600);
- var min = Math.floor(reload_time/60)-hr*60;
- var sec = reload_time-((hr*3600)+(min*60));
- if (ParseUrl()=="http://www.tf2outpost.com/undefined" || ParseUrl()=="http://www.dotaoutpost.com/undefined" || ParseUrl()=="http://www.csgoutpost.com/undefined" || ParseUrl()=="http://www.tf2outpost.com/trade/undefined") {
- if (sec<10) notify("Outpost AutoBump: Reloading page in "+min+":0"+sec);
- else notify("Outpost AutoBump: Reloading page in "+min+":"+sec);
- }
- if (ParseUrl()=="http://bazaar.tf/undefined") {
- if (sec<10) notify("Bazaar.tf AutoBump: Reloading page in "+min+":0"+sec);
- else notify("Bazaar.tf AutoBump: Reloading page in "+min+":"+sec);
- }
- if (ParseUrl()=="http://csgolounge.com/undefined") {
- if (sec<10) notify("CSGO Lounge AutoBump: Reloading page in "+min+":0"+sec);
- else notify("CSGO Lounge AutoBump: Reloading page in "+min+":"+sec);
- }
- if (ParseUrl()=="http://dota2lounge.com/undefined") {
- if (sec<10) notify("Dota 2 Lounge AutoBump: Reloading page in "+min+":0"+sec);
- else notify("Dota 2 Lounge AutoBump: Reloading page in "+min+":"+sec);
- }
- if (ParseUrl()=="http://tf2tp.com/undefined") {
- if (sec<10) notify("TF2 Trading Post AutoBump: Reloading page in "+min+":0"+sec);
- else notify("TF2 Trading Post AutoBump: Reloading page in "+min+":"+sec);
- }
- }
- function acceptallalerts (accept) {
- if (accept) {
- unsafeWindow.confirm = function() {return true;}
- unsafeWindow.alert = null;
- }
- else {
- unsafeWindow.confirm = conf;
- unsafeWindow.alert = aler;
- }
- }
- function bump_trades() {
- var xpr, anchor;
- if (ParseUrl()=="http://www.tf2outpost.com/undefined" || ParseUrl()=="http://www.dotaoutpost.com/undefined" || ParseUrl()=="http://www.csgoutpost.com/undefined" || ParseUrl()=="http://www.tf2outpost.com/trade/undefined") {
- var isUser, close_button;
- close_button = getElementsByClass("state_toggle")[0];
- if (close_button) {
- if (close_button.getAttribute("data-tipsy") == "Close Trade") isUser = true;
- }
- else isUser = false;
- if (!isUser) return;
- xpr = document.evaluate(".//li/a[@class='trade_bump']/div[@class='icon_bump']", document, null, XPathResult.ANY_TYPE, null);
- while (anchor = xpr.iterateNext()) {
- anchor = anchor.parentNode;
- if (anchor.getAttribute('data-tradeid')) break;
- }
- if (anchor && anchor.getAttribute('data-tradeid')) {
- anchor.click();
- if (!OutpostBumpOnePerReload) {
- if (OutpostWaitBetweenBump) setTimeout(bump_trades,(OutpostTimeBetweenEachBump*1000));
- else setTimeout(bump_trades,5);
- }
- }
- }
- if (ParseUrl()=="http://csgolounge.com/undefined" || ParseUrl()=="http://dota2lounge.com/undefined") {
- xpr = document.evaluate(".//div[@class='tradepoll']/div[@class='tradeheader']/a[@class='buttonright']", document, null, XPathResult.ANY_TYPE, null);
- anchor = xpr.iterateNext();
- if (anchor && anchor.getAttribute('onclick')) {
- anchor.click();
- if (ParseUrl()=="http://csgolounge.com/undefined" && !CSGOLoungeBumpOnePerReload) {
- if (CSGOLoungeWaitBetweenBump) setTimeout(bump_trades,(CSGOLoungeTimeBetweenEachBump*1000));
- else setTimeout(bump_trades,5);
- }
- if (ParseUrl()=="http://dota2lounge.com/undefined" && !Dota2LoungeBumpOnePerReload) {
- if (Dota2LoungeWaitBetweenBump) setTimeout(bump_trades,(Dota2LoungeTimeBetweenEachBump*1000));
- else setTimeout(bump_trades,5);
- }
- }
- }
- if (ParseUrl()=="http://tf2tp.com/undefined") {
- var tf2tpttb;
- if (TradingPostBumpRandomTrade) tf2tpttb = randominrange(1,tptradecount());
- else {
- if (TradingPostTradeToBump>tptradecount()) tf2tpttb = tptradecount();
- else tf2tpttb = TradingPostTradeToBump;
- }
- acceptallalerts(true);
- xpr = document.evaluate(".//div[@class='trade']/h5/a[@class='bumpAjaxLink']", document, null, XPathResult.ANY_TYPE, null);
- for (var ttb = tf2tpttb; (ttb>0 && ttb<=tptradecount()); ttb--) anchor = xpr.iterateNext();
- if (anchor) anchor.click();
- }
- reload_time = RELOAD_MINUTES*60;
- counter = setInterval(showstatus, 1000);
- }
- if (!OutpostSingleTradeBump && ParseUrl()=="http://www.tf2outpost.com/trade/undefined") return;
- var reload_time, counter, RELOAD_MINUTES;
- var conf = unsafeWindow.confirm;
- var aler = unsafeWindow.alert;
- var tpdelay = 2;
- if (ParseUrl()=="http://www.tf2outpost.com/undefined" || ParseUrl()=="http://www.dotaoutpost.com/undefined" || ParseUrl()=="http://www.csgoutpost.com/undefined") {
- if (OutpostRandomReloadTimes) RELOAD_MINUTES = randominrange(OutpostMinReloadTime,OutpostMaxReloadTime);
- else RELOAD_MINUTES = OutpostReloadIfNotRandom;
- }
- if (ParseUrl()=="http://www.tf2outpost.com/trade/undefined") {
- if (OutpostRandomReloadTimes) RELOAD_MINUTES = randominrange(OutpostSingleMinReloadTime,OutpostSingleMaxReloadTime);
- else RELOAD_MINUTES = OutpostSingleReloadIfNotRandom;
- }
- if (ParseUrl()=="http://bazaar.tf/undefined") {
- if (BazaarRandomReloadTimes) RELOAD_MINUTES = randominrange(BazaarMinReloadTIme,BazaarMaxReloadTime);
- else RELOAD_MINUTES = BazaarReloadIfNotRandom;
- }
- if (ParseUrl()=="http://csgolounge.com/undefined") {
- if (CSGOLoungeRandomReloadTimes) RELOAD_MINUTES = randominrange(CSGOLoungeMinReloadTIme,CSGOLoungeMaxReloadTime);
- else RELOAD_MINUTES = CSGOLoungeReloadIfNotRandom;
- }
- if (ParseUrl()=="http://dota2lounge.com/undefined") {
- if (Dota2LoungeRandomReloadTimes) RELOAD_MINUTES = randominrange(Dota2LoungeMinReloadTIme,Dota2LoungeMaxReloadTime);
- else RELOAD_MINUTES = Dota2LoungeReloadIfNotRandom;
- }
- if (ParseUrl()=="http://tf2tp.com/undefined") {
- if (TradingPostRandomReloadTimes) RELOAD_MINUTES = randominrange(TradingPostMinReloadTIme,TradingPostMaxReloadTime);
- else RELOAD_MINUTES = TradingPostReloadIfNotRandom;
- }
- bump_trades();
- }).call(this);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement