Enhanced SteamGifts & SteamTrades (ESGST)

An extension / userscript that adds some cool features to SteamGifts and SteamTrades.

If you find any bugs or have any feature requests, please file an issue here.


Compatibility

Tested and confirmed as working:

  • Chrome (since v55)
  • Firefox (since v52)
  • Pale Moon

Not tested but should be working:

  • Any Chromium-based browser (such as Opera, Vivaldi, etc...)

Not supported:

  • Edge
  • Safari

Installation

There are two different ways to use ESGST: extension or userscript. You can choose which one you want to use, but the extension is a lot faster and has a better peformance than the userscript, so I recommend it, although there is no major difference between them, except for a few options that are only available in the extension because of limitations in the userscript.

Option 1 - Extension

It should be possible to install the extension in any Chromium-based browser from the Chrome store (such as Opera, Vivaldi, etc...), any Firefox-based browser from the Firefox store (such as Waterfox, etc...), and any browser that uses the Phoebus system from the Pale Moon store (such as Basilik, etc...).

You can also use the extension on Android through Firefox for Android, but some features might not work or not be optimized enough for mobile.

Option 2 - Userscript

To install the userscript, you must install Violentmonkey, Tampermonkey, Greasemonkey or some other userscript manager first. Then click here and you should be prompted to install it. I recommend Violentmonkey or Tampermonkey, because the userscript uses the GM_addValueChangeListener API to communicate changes in the storage between tabs, and that API is not available on Greasemonkey, so a polyfill is used for Greasemonkey, which is not very effective and can affect the performance.

You can also use the userscript on Android through Firefox with Violentmonkey or USI, but some features might not work or not be optimized enough for mobile.


Beta Versions

The latest beta version for both the extension and the userscript is always available in the latest pre-release in the releases page.

7 years ago*

Comment has been collapsed.

If that doesn't work, try disabling, saving and then enabling. Themes are external and they are currently not backed up.

5 years ago
Permalink

Comment has been collapsed.

No change. The action of toggling doesn't have permissions to change whatever setting it's attempting to.

Edit add: Got it working. Toggling off then on the "SteamGifts" toggle inside the Themes Additional Options did it. Once I clicked Generate all theme problems were gone. The toggle that's just in the normal settings doesn't do anything and spits that error I posted earlier. Still definitely a bug in there but got a workaround for now.

5 years ago*
Permalink

Comment has been collapsed.

How do I copy my ESGST settings from the userscript to the extension?

5 years ago
Permalink

Comment has been collapsed.

Did you not get the instructions popup in the userscript? Backup from the userscript and restore into the extension.

https://www.steamgifts.com/account/settings/profile?esgst=backup
https://www.steamgifts.com/account/settings/profile?esgst=restore

5 years ago
Permalink

Comment has been collapsed.

No, I didn't get the popup. But I figured out what I was doing wrong before so I got it moved over to the extension now.

5 years ago
Permalink

Comment has been collapsed.

The Enter Giveaway Button (Setting 2.10) does not work anymore after switching from the userscript to the addon. Clicking on the button gives me a rotating "Entering…" forever.
Firefox web console tells me for every click on the button:

SyntaxError: "JSON.parse: unexpected end of data at line 1 column 1 of the JSON data"
    e moz-extension://4b651cbb-8014-451d-a72e-90b075ff96ed/esgst.js:1:1338465
    w moz-extension://4b651cbb-8014-451d-a72e-90b075ff96ed/esgst.js:54:14854
    _invoke moz-extension://4b651cbb-8014-451d-a72e-90b075ff96ed/esgst.js:54:14644
    t moz-extension://4b651cbb-8014-451d-a72e-90b075ff96ed/esgst.js:54:15030
    n moz-extension://4b651cbb-8014-451d-a72e-90b075ff96ed/esgst.js:1:380924
    r moz-extension://4b651cbb-8014-451d-a72e-90b075ff96ed/esgst.js:1:381134
esgst.js:1:1338488
5ZKw4 esgst.js:1:1338503
null esgst.js:1:1338523 
5 years ago
Permalink

Comment has been collapsed.

Do you use Firefox containers?

5 years ago
Permalink

Comment has been collapsed.

Yes, I do.

5 years ago
Permalink

Comment has been collapsed.

See if it works with https://www.steamgifts.com/account/settings/profile?esgst=settings&id=manipulateCookies If you don't feel comfortable with ESGST manipulating your cookies, you'll have to use SteamGifts with no containers, sorry.

5 years ago
Permalink

Comment has been collapsed.

Activated the option, still the same issue.

5 years ago
Permalink

Comment has been collapsed.

I just tested on Firefox and it's working fine for me, with and without containers. Where are you trying to enter the giveaway from?

5 years ago
Permalink

Comment has been collapsed.

steamgifts.com, main page

5 years ago
Permalink

Comment has been collapsed.

This option doesn't need to be enabled, as 1N07 found out below Third Party Cookies needs to be allowed.

5 years ago
Permalink

Comment has been collapsed.

You're right, I just remembered how that option works now: if a request is not cross-domain (for example, SG requesting to SG, which happens when you're entering a giveaway), the option isn't needed, but if a request is cross-domain (for example, SG requesting to Steam, which happens when you're syncing your owned games), the option is needed if you're not logged in on Steam in the no-container scope.

But even for syncing your owned games it's not needed if you use the API key method (which is less accurate, but works).

5 years ago
Permalink

Comment has been collapsed.

I can't install it. It freezes everytime when I'm trying to install it. I'm using tampermonkey

5 years ago
Permalink

Comment has been collapsed.

Try the extension, the userscript is being deprecated.

5 years ago
Permalink

Comment has been collapsed.

Hope to see the extension version get better and better, faster and smaller. And congratz on getting into the CWS! :D

5 years ago
Permalink

Comment has been collapsed.

Me too. Thank you! xD

5 years ago
Permalink

Comment has been collapsed.

i find it hard to make use of all the features from this, just want to thank you for all your work and congrats on having a chrome extension now, if that's an achievement

5 years ago
Permalink

Comment has been collapsed.

Thanks!

5 years ago
Permalink

Comment has been collapsed.

I'm having trouble getting notifications for new wishlisted giveaways set up.

It didn't prompt me to, but I set Chrome to allow notifications from Steamgifts as well but no luck. Can someone point me where I'm going wrong? All the associated options are set to run everywhere.

View attached image.
5 years ago*
Permalink

Comment has been collapsed.

If it didn't prompt you, then that means that there haven't been new wishlist giveaways for you. Can you double check that?

5 years ago
Permalink

Comment has been collapsed.

Yeah, there's been new wishlist giveaways created since it's been enabled. This is what my wishlist page looks like:

wishlist

The MGS5 giveaway is new but there have been others as well. The tab title isn't changing either. I'm probably doing something stupid, but right now I'm stumped.

Edit: Just disabled uBlock in case that's causing an issue, will update when possible.
Edit2: Nope, nothing to do with uBlock.

5 years ago*
Permalink

Comment has been collapsed.

Can you enable browser notifications for receiving new messages and see if you get them for that?

5 years ago
Permalink

Comment has been collapsed.

Enabled, need a reply to check. 🙂

5 years ago
Permalink

Comment has been collapsed.

Test

5 years ago
Permalink

Comment has been collapsed.

That one worked! How odd.

5 years ago
Permalink

Comment has been collapsed.

If, as you said in a previous comment, not even the title is changing, then I think the issue is not in the browser notifications. I'll take a look around in the code to see if I spot anything wrong.

5 years ago
Permalink

Comment has been collapsed.

Oh, also, did the icon of the tab change for the messages?

5 years ago
Permalink

Comment has been collapsed.

It did, got the notification and tab title change as expected. Thanks for all your work with the extension, it's much appreciated. 😊

5 years ago
Permalink

Comment has been collapsed.

Hi, sorry it took so long, but I think I figured it out. There appears to be a bug that only shows wishlist notifications if the option to show unviewed keys for won gifts notifications is also enabled. Can you try enabling it and seeing if you get the wishlist notifications?

5 years ago
Permalink

Comment has been collapsed.

Heya, I think I've enabled the right settings but I'm still not getting any wishlist notifications.

Edit: Scrap that, I disabled the "only indicate for giveaways ending in a specified number of hours" option (I had that set to 4) and got the notification as expected. Thanks!

View attached image.
5 years ago*
Permalink

Comment has been collapsed.

Succesfully migrated from the script to the extension a few days ago. Everything went without a hitch. Good job!
Syncing with the extension takes hours, tho. Is that normal or is there a problem?

5 years ago
Permalink

Comment has been collapsed.

Did it finish syncing or it kept endlessly syncing?

5 years ago
Permalink

Comment has been collapsed.

It finishes, it just takes literally 1 to 2 hours.

5 years ago
Permalink

Comment has been collapsed.

Did you watch the progress of the syncer to see which data took the longest to sync? Also, if you sync a second time, is it faster? You have a lot of giveaways, so syncing them for the first time can take a while.

5 years ago
Permalink

Comment has been collapsed.

Owned games ^^ Which was of no surprise to me ;)
Syncing for a second time did not speed up the process.

5 years ago
Permalink

Comment has been collapsed.

Doesn't matter, owned games should still be synced fast for thousands of games, because it makes only 1 request. And if it didn't take that long in the script, there's no reason why it should take that long in the extension. Are you on Chrome? If you're on Firefox, do you use Firefox containers?

5 years ago
Permalink

Comment has been collapsed.

Chrome Version 71.0.3578.98 (Official Build) (64-bit)

5 years ago
Permalink

Comment has been collapsed.

Hi, forgot to follow up on this. Still an issue?

5 years ago
Permalink

Comment has been collapsed.

Nope, the problem has been gone for a long time now. Thank you!

5 years ago
Permalink

Comment has been collapsed.

Changelog for new version isn't working on ESGST, see it here: https://github.com/gsrafael01/ESGST/releases/tag/8.1.8

5 years ago
Permalink

Comment has been collapsed.

So I switched to the chrome extension yesterday successfully and today the update popup came: download zip or reload extension. The later seems to do nothing, so my only option is to download the zip. Where to put those files. And why do i have to do that manually? I'd have hoped the extension would autoupdate a bit more comfortably than that?

5 years ago
Permalink

Comment has been collapsed.

+1. Don't know what to do, closed the popup, now I can't get it to reappear.

5 years ago
Permalink

Comment has been collapsed.

Read below.

5 years ago
Permalink

Comment has been collapsed.

+1

5 years ago
Permalink

Comment has been collapsed.

Read below.

5 years ago
Permalink

Comment has been collapsed.

You don't need to do anything, just close the popup. It's a remain from when the extension wasn't on the Chrome store and I forgot to remove it. Chrome automatically updates the extension for you every number of hours (I think every 24 hours). If you want to update manually, go here (chrome://extensions/) and click "Update".

5 years ago*
Permalink

Comment has been collapsed.

Thank you.
Maybe you should add that "Update" is only available if the user switches to "Developer Mode" on said site

5 years ago
Permalink

Comment has been collapsed.

Oh, I wasn't aware, I thought Chrome allowed manual updates.

5 years ago
Permalink

Comment has been collapsed.

I'm aware that Grid View is broken in v8.1.8.

5 years ago
Permalink

Comment has been collapsed.

bookmarks not opening for me

5 years ago
Permalink

Comment has been collapsed.

5 years ago
Permalink

Comment has been collapsed.

thank you

5 years ago
Permalink

Comment has been collapsed.

Option 8-22.1 "Define a fixed width for popups, so that they are centered horizontally" permanently deleted or is it a bug?

5 years ago
Permalink

Comment has been collapsed.

Deleted, popups are centered based on their size now.

5 years ago
Permalink

Comment has been collapsed.

Grid View not working right now.

5 years ago
Permalink

Comment has been collapsed.

5 years ago
Permalink

Comment has been collapsed.

I'm sad to hear that the userscript version is being deprecated...
The extension version's "Enter Giveaway" button hasn't worked on firefox for a long time (can't remember if it ever did) (No I don't use containers). It works fine in the userscript version.
image of error: https://i.imgur.com/j6ncNdC.png
I would be happy just to keep using the current version of the userscript, but since the grid view doesn't work in the current version, I don't really want to do that either...

Do you happen to still have v1.8.0 of the userscript somewhere? If I have to stay behind on the updates, I'd love to at least have a fully working version.

Great work anyways, keep it up! :)

5 years ago
Permalink

Comment has been collapsed.

You could have reported it when it started happening and I would have tried to fix it. If you did and I forgot to follow up, sorry. But yeah, I don't understand that, the enter button has always been fully functional for me on Firefox. Do you have Header Refresher enabled? Can you think of anything that makes your Firefox install different?

You can find old versions by going to this URL: https://github.com/gsrafael01/ESGST/tree/8.1.7

Replace 8.1.7 with the version you want. For example, if you want v8.1.0 (I really don't think you want v1.8.0 xD) you can go to https://github.com/gsrafael01/ESGST/tree/8.1.0

But the Grid View issue will be fixed in the next version, and the next version still has support for the userscript.

5 years ago
Permalink

Comment has been collapsed.

Thanks for the info.

I did report it a while back. We had some back and forth about it, but it didn't really go anywhere. I seem to remember I just gave up on it after a while since the userscript version was working fine.

Now the good news.
Frankly, I'm an idiot for not thoroughly going through my settings...

As it turns out blocking "All third-party cookies" breaks it, EVEN IF I have steamgifts whitelisted. Not to mention Firefox doesn't actually find any third-party cookies anyways.
whitelisted: https://i.imgur.com/si9DAFl.png
No third-party cookies: https://i.imgur.com/4Vh7Emt.png

But yeah, it works fine if I turn blocking of third-party cookies off globally.

5 years ago
Permalink

Comment has been collapsed.

It's hard to keep up with everything here, I usually do better at following up on stuff reported on GitHub. xD

But that's great then, you found the issue. Now I can see if there's a way to make it work with that option enabled.

5 years ago
Permalink

Comment has been collapsed.

This solves also my problem above. But I'm unable to make an exception for this site because there aren't any third party cookies found on it.

Edit: Nevermind, found that exception options panel.
Would be nice if you can find a way to make it work with that option enabled.

5 years ago*
Permalink

Comment has been collapsed.

Would be nice if you can find a way to make it work with that option enabled.

Already did, just need to push an update (will do it tomorrow because I want to add some more stuff).

5 years ago
Permalink

Comment has been collapsed.

That's great. Good job. :)

5 years ago
Permalink

Comment has been collapsed.

The problem is back.
Works with "Block 3rd party cookies", but not "Block ALL 3rd party cookies".
https://i.imgur.com/QUup9pp.png

5 years ago
Permalink

Comment has been collapsed.

Appears to be working fine for me. I tested with the strict option and was able to enter giveaways. Are there errors on the console?

5 years ago
Permalink

Comment has been collapsed.

I'm seeing this on page load:
TypeError: this.esgst.mainButton is null esgst.js:94:423440

And this when trying to enter a giveaway:
<unavailable> esgst.js:94:810058
0PSX6 esgst.js:94:810080
null esgst.js:94:810107

5 years ago
Permalink

Comment has been collapsed.

Try the latest.

5 years ago
Permalink

Comment has been collapsed.

That works, thanks!

5 years ago
Permalink

Comment has been collapsed.

Yep, now working with all third-party cookies blocked. Good work :)

5 years ago
Permalink

Comment has been collapsed.

With the latest version, GA extractor now hangs after extracting some GAs (appears after 50 it starts hanging soon afterwards, herros in console:

Unchecked lastError value: Error: Could not establish connection. Receiving end does not exist. ExtensionCommon.jsm:304
withLastError resource://gre/modules/ExtensionCommon.jsm:304:9
wrapPromise/< resource://gre/modules/ExtensionCommon.jsm:357:11

TypeError: 'setTimeout' called on an object that does not implement interface Window. esgst.js:1:399932

5 years ago
Permalink

Comment has been collapsed.

Already fixed.

5 years ago
Permalink

Comment has been collapsed.

In Discord the Topic came up to "Hide a single GA", because you don't join from that group/person or something.
She was sure it was in ESGST before, but we both couldn't find it.
Can someone help?

5 years ago
Permalink

Comment has been collapsed.

Thank you so much for the quick answer!

5 years ago
Permalink

Comment has been collapsed.

posted my request to add easier monitoring for followed games.

5 years ago
Permalink

Comment has been collapsed.

Is there a list of discussions someone hidden? I want to unhide all discussion I hid in the past.

5 years ago
Permalink

Comment has been collapsed.

Yes, in the settings menu, a button with a comment balloon and a slashed eye icon.

5 years ago*
Permalink

Comment has been collapsed.

I can't find it. I actually did find it before, but can't anymore.

5 years ago
Permalink

Comment has been collapsed.

In regards to the "Learning" game tag link redirection (once you enable appropriate option), right now it links to SteamDB, I believe it should link to Steam store, as learning games are available in the store and properly show as owned, as opposed to removed/banned games that indeed should be checked on SteamDB due to missing store page.

If that makes sense to you, I think it'd be nice to correct this in order to make the manual check for ownership easier, as SteamDB depends on user using their plugin to detect those (while on Steam everybody can check right away).

5 years ago
Permalink

Comment has been collapsed.

Done

5 years ago
Permalink

Comment has been collapsed.

Heya, when using the SGv2 Dark theme the extension doesn't apply the theme on the sgtools.info domain like the actual theme does.

SGv2 Dark has these 3 URLs that it is supposed to theme

// @include     *://www.steamgifts.com/*
// @include     *://www.steamtrades.com/*
// @include     *://www.sgtools.info/*

Is this intentional due to limitation, or just an oversight? It'd be nice to have the theme full-featured so I won't have to disable the internal theme management of ESGST and go back to the ol' userscript.

Merry Christmas! ;D

5 years ago
Permalink

Comment has been collapsed.

It was an intentional limitation because there were concerns that extending ESGST to SGTools could slow down the loading of pages on SGTools, but I decided to create a separate script file to inject in SGTools pages that only has the theme logic and is very small, so it shouldn't affect the performance.

Will come in the next version: https://github.com/gsrafael01/ESGST/issues/1171

5 years ago
Permalink

Comment has been collapsed.

Ahhhh, interesting and commendable for your foresight/concern. Good to hear it'll be functional in an update. Awesome! Hope you're having a great first week of the year. :D

5 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

5 years ago
Permalink

Comment has been collapsed.

They are being hidden fine for me. Check for errors on the console log (Ctrl + Shift + J).

5 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

5 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

5 years ago
Permalink

Comment has been collapsed.

Unfortunately those errors aren't helpful. When it happens, can you notice if there's anything else in the page that doesn't appear? Does the ESGST button at the header appear normally?

5 years ago
Permalink

Comment has been collapsed.

Dont know if it just me. But in giveaway extractor in new tab. Nothing happens after new tab is opened.

5 years ago
Permalink

Comment has been collapsed.

5 years ago
Permalink

Comment has been collapsed.

Same. Extractor in a new tab doesn't work.

5 years ago
Permalink

Comment has been collapsed.

With the latest changes to game categories the number indicates the position in the queue but what does the colors (red, yellow and green) indicate? Also I've sometimes negative numbers like -2 is that correct? I also often see the following errors in browser console but everything seems to work:

TypeError: d is null esgst.js:1:1111095
Promise resolved after context unloaded esgst.js:54
E/e/t.setValues/moz-extension://325d0a81-23a4-4820-ab42-3033d251fe7c/esgst.js:54:272448

5 years ago
Permalink

Comment has been collapsed.

https://www.steamgifts.com/go/comment/RuuxdAH

Negative numbers shouldn't happen, I'll look into it. Did you use endless scrolling with it? Because I think that could mess the numbers up.

5 years ago
Permalink

Comment has been collapsed.

Thanks. Endless scrolling and multiple tabs with lot of giveaways on it. I'll always stress test game categories.

5 years ago
Permalink

Comment has been collapsed.

Can't create a new GA. Always getting "Please select a valid date range." error. After disabling ESGST it works fine

View attached image.
5 years ago
Permalink

Comment has been collapsed.

It seems like the problem is in 24h time format. But I believe that worked before

5 years ago
Permalink

Comment has been collapsed.

I'm also using Custom Giveaway Calendar to achieve a 24h format and I don't have any problems with it. I use yy/mm/dd and HH:mm as formats. If I use your date format (dd M, yy) I've the same error. So for now until Rafael fix this you could use another date format like mine to keep the 24h clock.

5 years ago
Permalink

Comment has been collapsed.

Yup. [M dd, yy] works fine. Thanks =)

5 years ago
Permalink

Comment has been collapsed.

Is it possible to sync data between Chrome and Firefox? I'm using the extension on Firefox for Android since there's no mobile app anymore and I'd like to be able to remember which games I've entered giveaways before on both devices but the only thing I can figure is to do it manually every time I know I've entered a GA for a new game.

5 years ago
Permalink

Comment has been collapsed.

At the moment, you have to do it manually.

5 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

5 years ago
Permalink

Comment has been collapsed.

Sign in through Steam to add a comment.