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.

Hello, I really apprecaited for the script and it's been useful so much. I wonder if it's possible to remove this. I'm using black theme and this makes my page look ugly :/

7 years ago
Permalink

Comment has been collapsed.

No, it's not possible to remove it (unless you disable Fixed Elements - Heading or Endless Scrolling). Report to the person who made the theme and ask them to change its color.

7 years ago
Permalink

Comment has been collapsed.

Okay thanks for the answer. Endless Scrolling is my precious, I won't let it go.

7 years ago
Permalink

Comment has been collapsed.

I can tell that is SGv2 Dark but unless you edited manually those should be the same color as the page background.

7 years ago
Permalink

Comment has been collapsed.

2017-03-28 v5.0.2

  • Fixed a syncing bug.
  • Some popups are now adjusted to the size of your screen, for example, checker popups. Other popups, such as the notes / tags popups, remain 300px wide.
  • Fixed a typo (closes #77).
  • Fixed a bug that was trying to run Active Discussions On Top in the create giveaways page.
  • Revamped Shared Groups Checker and Giveaway Groups Popout from a popout to a popup and renamed Giveaway Groups Popout to Giveaway Groups Popup as a result. This makes sure that the groups list is adjusted to the size of your screen (closes #79).
  • Fixed a bug that was enabling whitelist even if a template had it disabled in Giveaway Templates (closes #71).
  • To apply a template, you now have to simply click on its name in Giveaway Templates, and a confirmation dialog for deleting a template has been added (partial solutions to #52).
7 years ago*
Permalink

Comment has been collapsed.

2017-03-28 v5.0.3

  • Separated Username History from the main file, as I reported I would be doing with all features, and added a link to the usernames box that allows you to help expand the database if you know about old usernames of an user that are not yet listed.
7 years ago
Permalink

Comment has been collapsed.

2017-03-28 v5.1

  • Added Visible Attached Images.

2017-03-28 v5.1.1

  • Added Endless Scrolling compatibility to Visible Attached Images.

Visible Attached Images

(steamgifts|steamtrades).com/*

  • Shows all attached images by default.
View attached image.
7 years ago
Permalink

Comment has been collapsed.

I've installed the script and been playing around with it for a few hours; I hope you don't mind some questions from a new user. :)

I also have one more feature request:

It would be really nice to give the chances a class depending on how high the chance is.

Right now I hacked it in myself but changing the code from textContent to innerHTML might not be the cleanest.

Old code:

function setGWCChance(GWCChance, Entries, Copies) {
    var Chance;
    Entries = parseInt(Entries.textContent.replace(/,/g, "").match(/\d+/)[0]);
    Chance = (Entries > 0) ? (Math.round(Copies / Entries * 10000) / 100) : 100;
    if (Chance > 100) {
        Chance = 100;
    }
    GWCChance.textContent = Chance + "% (" + Math.round(Entries / Copies) + ":1)";
}

New code:

function setGWCChance(GWCChance, Entries, Copies) {
    var Chance;
    Entries = parseInt(Entries.textContent.replace(/,/g, "").match(/\d+/)[0]);
    Chance = (Entries > 0) ? (Math.round(Copies / Entries * 10000) / 100) : 100;
    if (Chance > 100) {
        Chance = 100;
    }
    var ga_chance_style = Math.ceil(Chance*10);

    GWCChance.innerHTML = '<span class="GA_chance_' + ga_chance_style + '">' + Chance + "% (" + Math.round(Entries / Copies) + ":1)" + '</span>';
}

So basically I added a variable ga_chance_style which is just a percentile and I have a userstyles file with different colors for every one, from .GA_chance_1 to .GA_chance_10.

The result can be seen in the attached pic.

View attached image.
7 years ago
Permalink

Comment has been collapsed.

+1
I want this feature 🤓

7 years ago
Permalink

Comment has been collapsed.

Min entries search doesn't seem to work anymore

7 years ago
Permalink

Comment has been collapsed.

seems to work for me, are you sure you aren't meaning to utilize the max entries instead and mixing them up?

7 years ago
Permalink

Comment has been collapsed.

I type min entries : 3 and I still get all the GAs ! strange...

7 years ago
Permalink

Comment has been collapsed.

Ok, I did a ctrl+F5 and now it's back again !

7 years ago
Permalink

Comment has been collapsed.

I've read the last few pages of this thread and there doesn't seem to be anything on the things I wanted to ask, so here goes:

When you have Accurate Timestamp enabled then on the main Discussions page some of the last post info is across three lines while for others it's across two. Obviously this is cause some strings are longer than others ("43 seconds ago by" vs "1 hour ago by"). See attached image.

Obviously this isn't a huge deal, you could potentially increase the width of that column but that could bring forth other issues.

But it leads me to the question if the Accurate Timestamp needs the exact seconds; for giveaways they are always 00 and for comments I don't really see the need as comments made in the last minute will have the "xx seconds ago" text and once more than a minute has gone by, does anyone care about the exact second? I feel it would improve readability without the seconds; "29-3-2017 14:20:08" is a long string to read/parse.

And yes, I know I could just disable Accurate Timestamp. :)

View attached image.
7 years ago
Permalink

Comment has been collapsed.

i like the seconds though, it helps determine how close in time two identical responses are or are not.

"yes, that game has been bundled"
7:34:35

"yeop"
edit: damn i was 2seconds late
7:34:37

7 years ago
Permalink

Comment has been collapsed.

Yeah, that is the one use case I can see for them. lol

7 years ago
Permalink

Comment has been collapsed.

I can always leave it in comments, but omit it elsewhere. I'll see what I can do.

7 years ago
Permalink

Comment has been collapsed.

How is Automatic Links / Images Paste Formatting supposed to work? The GitHub page doesn't explain what it does.

I'm assuming it should add ! and [] () to any link/image I paste in the edit box.

I just pasted the screenshot link in my previous post without doing anything to it and nothing changed. I figured it might just be changed on Submit but nothing happened there either (so I edited the post afterwards).

I'm using Firefox, not sure if anything could be interfering but I haven't looked at the source code.

7 years ago
Permalink

Comment has been collapsed.

Yes, it automatically formats links / images to []() and ![](). Is the function enabled?

7 years ago
Permalink

Comment has been collapsed.

Yes, it is on; the icon is blue.

Adding link to screenshot now to see what happens.

https://puu.sh/v2dgv/e69fcf274a.png

7 years ago
Permalink

Comment has been collapsed.

Whelp, obviously something is stopping it; I'll disable some other userscripts to see if that makes a difference.

7 years ago
Permalink

Comment has been collapsed.

I've disabled all other userscripts (even those that should not trigger for Steamgifts) and tried pasting the image/link both as https and http; no dice.

Is the change supposed to happen the moment I press Ctrl + V?

7 years ago
Permalink

Comment has been collapsed.

Is the change supposed to happen the moment I press Ctrl + V?

View attached image.
View attached image.
7 years ago
Permalink

Comment has been collapsed.

I restarted my browser and pasted the Firefly link but no joy...

Really weird; the Console also shows nothing strange, just "Loading mixed (insecure)" and "scroll-linked positioning effect" warnings.

7 years ago
Permalink

Comment has been collapsed.

i suppose it could possibly be a firefox compatibility issue, just a little surprised it has gone unnoticed until now if so.

7 years ago
Permalink

Comment has been collapsed.

I can paste that image you're trying to post fine here. Maybe a browser issue? I'm a Chrome boy.

7 years ago
Permalink

Comment has been collapsed.

Well, I can't imagine it doesn't work for everyone with Firefox; wouldn't someone have reported it by now?

7 years ago
Permalink

Comment has been collapsed.

I justed tested on Firefox and it's working fine here as well. Weird. Does it also happens with links or just images?

7 years ago
Permalink

Comment has been collapsed.

Both

7 years ago
Permalink

Comment has been collapsed.

You could debug it to see if we can find the issue. The part of the code where the formatting takes place is after the line that contains

CFH.TextArea.addEventListener("paste", function(Event) {

which in v5.1.1 should be line 14015. You could try logging Value and see if it's even entering the condition block.

7 years ago
Permalink

Comment has been collapsed.

I was just looking at that part of the code.

Right now I am installing the script on another pc to see if it works there.

Will try logging after.

7 years ago
Permalink

Comment has been collapsed.

Well, tried another pc with a Firefox that is almost vanilla and here it works:

Edit: gonna now disable addons and see if that has any impact.

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Oh, add-ons, forgot to consider that.

7 years ago
Permalink

Comment has been collapsed.

Tried and no joy either; it almost has to be something I changed in about:config, can't see any other option.

Anyway, thanks for all the help with this issue, I'm gonna keep messing with it and if I find the cause I will let you know but I don't want to take up any more of your time with this particular issue as it's obviously one very specific to one user.

7 years ago
Permalink

Comment has been collapsed.

BINGO!

Just in case anyone else runs into this (or I forget about it myself); the culprit is dom.event.clipboardevents.enabled.

I probably got it from an article like this.

7 years ago
Permalink

Comment has been collapsed.

maybe try playing with the script load order a little? make esgst load first or last instead possibly?

only reason i suggest this is cause i've noticed a few scripts can still cause conflicts even when disabled. (rare, but occasionally true)

7 years ago
Permalink

Comment has been collapsed.

I've tried first and last in the load order (still with all other userscripts disabled) and unfortunately it still doesn't work. Really strange.

7 years ago
Permalink

Comment has been collapsed.

it has its own enable/disable button on the format helper

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Question about the Comment Tracker:

Am I correct in thinking that right now it will always fade out read comments? I've not checked "Fade out visited giveaways" but I assume that is for giveaways only (as the text says).

I like the idea of being able to jump to the first unread comment but would prefer to keep read comments not faded as they become really faint (and yes, I know I can hover my mouse over individual comments to remove the fade).

7 years ago
Permalink

Comment has been collapsed.

Yeah, they will always be faded out, since that makes sure only unread comments stand out in the page and I also don't see the point in re-reading them, but I can add an option to not fade them.

7 years ago
Permalink

Comment has been collapsed.

My memory sucks so I often scroll back up. :p

7 years ago
Permalink

Comment has been collapsed.

I suggest adding the ability to organize threads by date created and threads with new posts go to the top of the page.

7 years ago
Permalink

Comment has been collapsed.

that can't effectively be done really. in order for the script to do that it would have to load all 10,000 pages to find out the created dates just to re-arrange them.

unless you only mean on a "per page" basis. each page gets re-arranged by created date/time, but the next page could have stuff way older/newer then the page you are on.

7 years ago
Permalink

Comment has been collapsed.

I'm still on rhSGST. Any risks (in terms of dataloss) in migrating to the new script?

7 years ago
Permalink

Comment has been collapsed.

i'd export data to be even safer either way, but i don't think chrome users have had much (if any) difficulty, its firefox that can have a difficult time upgrading.

7 years ago
Permalink

Comment has been collapsed.

Thanks, I imported manually and things seem to work fine. I'm using Chrome.

7 years ago
Permalink

Comment has been collapsed.

None that I'm aware of, but export first just to be safe. Like d3m4n said, Firefox has a history of vanishing with all your data if the script is renamed (same thing happened from revilheart Scripts to rhSGST).

7 years ago
Permalink

Comment has been collapsed.

I finally migrated. After installing the ESGST both it and rhSGST were enabled side by side, and ESGST had all options unchecked. Not sure if this is the expected behavior. I disabled rhSGST and imported rhSGST.json while enabling all options, and things seem to work fine. Crossing fingers this didn't break anything :-)

7 years ago
Permalink

Comment has been collapsed.

Settings can also be exported though. And I found a way to simply update it without it being installed side by side on Tampermonkey by changing the header of the script (@name, @downloadURL and @updateURL) and the "Update URL" field next to the syntax check button. By doing that it should update normally.

It shouldn't have broken anything. Unlike the revilheart Scripts - rhSGST update, this one didn't change anything in the structure of the script, so it was really just a rename.

7 years ago
Permalink

Comment has been collapsed.

Bug report:
Function: Enter / Leave Giveaway Button
Location: Group pages, example: https://www.steamgifts.com/group/VPJ6u/bundlequest
When this function is turned off, "Not Enough Points" buttons are still being shown when you don't have enough points to join.

Expected: When the function is turned off, also these buttons are removed.

7 years ago
Permalink

Comment has been collapsed.

Yeah, that button is appearing in some places where it shouldn't. I'll try to look into it this or next week.

7 years ago
Permalink

Comment has been collapsed.

Bug report

Whenever I submit a comment, the comment box will fail to disappear unless I refresh the page. As you can see in this screenshot of this comment box, the error message is under the green button.

Update: No more problems!

View attached image.
7 years ago*
Permalink

Comment has been collapsed.

Does the comment get posted anyway? What version are you using?

7 years ago
Permalink

Comment has been collapsed.

Comment appears in the thread after I refresh the page. My issue is I cannot get past the comment submission phase until I perform a page refresh.

Edit: The problem is gone now. Just a simple reinstall of the userscript. :3

7 years ago
Permalink

Comment has been collapsed.

Maybe you had an older version. I remember this happening with older versions.

7 years ago
Permalink

Comment has been collapsed.

Yes I did.

7 years ago
Permalink

Comment has been collapsed.

Well, glad it's solved. :)

7 years ago
Permalink

Comment has been collapsed.

finally got around to using this, after over a year, and i regret not doing so sooner.
It would be nice if your script supported a dark theme overlay
Other than that, fantastic work, thank you

7 years ago
Permalink

Comment has been collapsed.

What do you mean by a dark theme overlay?

7 years ago
Permalink

Comment has been collapsed.

View attached image.
7 years ago
Permalink

Comment has been collapsed.

You mean adding a dark theme myself? Oh, I thought you were talking about dark themes that already exist. No, I don't plan on making themes, there are already dark themes on SG: https://www.steamgifts.com/discussion/iO230/ https://www.steamgifts.com/discussion/62TRf/ The first is compatible with this script, not sure about the second.

7 years ago
Permalink

Comment has been collapsed.

one more question, is it possible to load a longer list per page of giveaway entrants* in your giveaway, more than 25 at a time?

7 years ago
Permalink

Comment has been collapsed.

Only by forcing multiple pages to load at once, and I would have to add a request limit to that to prevent the script from stressing the SG servers, so it would take a while. Why would you need it?

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 7 years ago.

7 years ago
Permalink

Comment has been collapsed.

Whitelist / Blacklist Checker has an option "Check all pages.".

7 years ago
Permalink

Comment has been collapsed.

excuse me while i facepalm. thank you.

7 years ago
Permalink

Comment has been collapsed.

I tried to give your script a try. After one hour it was still syncing blacklists and whitelists. Canceled. Tried the feature to see if anyone posting in a thread has blacklisted me. Script needed approx. 10 minutes to check a single user. Uninstalled.
So, to put it in a nutshell: If your script was waaaaaaaaayyyyyyyyyyyyy faster, I might use it.

7 years ago*
Permalink

Comment has been collapsed.

some users can take around 10seconds while others take ~10minutes. it just depends how many GAs they setup in a way the script can't easily tell if you are whitelisted.. if you're only interested in blacklists though you can turn off the whitelist portion of the scan and it goes 10x faster (1-10 seconds ea user)..

as far as speeding it up, the site admin/owner came in here and said it was bogging down the site and it had to be limited in speed. so in return it is only allowed to do a couple of requests per second in order to not effect system performance.

my nutshell, that's one of two slow features out of ~30, and only slow due to admin telling the creator to slow it down.. xD

7 years ago*
Permalink

Comment has been collapsed.

Syncing whitelists / blacklists is a very long process if you have a lot of people in those lists, because there is a request limit to prevent the script from stressing the SG servers. If you think it's taking longer than usual, it's probably a bug (try checking the console). Whitelist / Blacklist Checker can also take a long time, because A. It has the same request limit to prevent load on the SG servers. and B. It needs to find a whitelist giveaway of an user and if the user doesn't have a whitelist giveaway, it goes through the whitelist / group giveaways of that user cross-checking the groups that you're a member of.

So it's not possible for the script to be faster at the moment, otherwise it would stress the SG servers and cg already gave me a warning when there was no request limit. But to me, even if the script takes 1 hour to check a list of users, that's still better than manually checking each of those users to find out if you're whitelisted / blacklisted by them.

7 years ago
Permalink

Comment has been collapsed.

Thank you both for your answers :)

7 years ago
Permalink

Comment has been collapsed.

Would it be possible/reasonable to add giveaway descriptions in a tooltip rather than in a popup, or in addition to the popup?

7 years ago
Permalink

Comment has been collapsed.

It's not possible to add giveaway descriptions in a tooltip. What do you mean in addition to the popup? It already appears in addition to the popup.

7 years ago
Permalink

Comment has been collapsed.

That "in addition" thing was only meant as an option to have both, obviously redundant information in retrospect but I tend to write faster than I think sometime. Too bad about the tooltip though, it would be nice to have the descriptions turn up when you hoover the mouse over the giveaway instead of opening another window, like how it's implemented in the Comment Formatting Helper.
It's a very nice script though, I especially like the game tags. Thank you for sharing :)

7 years ago
Permalink

Comment has been collapsed.

awww =(
i was kinda hoping for this one too tbh. i'm notta fan of joining from mainpage or the description popout, but liked the idea of just hovering some meaningless button or just hovering the title and seeing the descriptions first ~100 characters popout in text form. (similarly to hovering the time by default, or hovering join date to figure out cakeday, or image caption text)

edit: just typos this time. ^^

7 years ago*
Permalink

Comment has been collapsed.

I dislike implementing features that run upon hovering (I also denied the same effect for Avatar Popout), because sometimes you don't want to see the information, but it's very easy to accidentally hover over it and trigger it. And this is especially bad because this information requires a request to the giveaway page, so I would have to limit the requests. Plus markdown wouldn't work in a tooltip.

7 years ago
Permalink

Comment has been collapsed.

ahh okay, that makes perfect sense cause of the requests. gotcha. xD

7 years ago
Permalink

Comment has been collapsed.

Forked. Check out my edit.
https://github.com/rafaelgs18/ESGST/pull/85

7 years ago
Permalink

Comment has been collapsed.

2017-04-08 v5.1.2

  • Merged pull request #85 from Royalgamer06, which:
    1. Fixes a backslash / escape issue with the first emoji and the CSS selector in Comment Formatting Helper.
    2. Adds more emojis to Comment Formatting Helper from https://greasyfork.org/scripts/21607.
    3. Increases the height of the emojis box in Comment Formatting Helper.
7 years ago*
Permalink

Comment has been collapsed.

2017-04-08 v5.2

  • Added more emojis and Giveaway Error Search Links feature
View attached image.
7 years ago
Permalink

Comment has been collapsed.

Remplaced Steamgift Extanted by this one!
Thanks!

7 years ago
Permalink

Comment has been collapsed.

you should add support of youtube videos link, like attached images ;)

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 1 year ago.

7 years ago
Permalink

Comment has been collapsed.

Totally like and recommend this script!!!

EDIT: Reported on GitHub
There are only two reasons I still keep "Extended Steamgifts" script:

  1. Comment features (embedded youtube & vimeo videos, gleam.io giveaways, auto load images)
  2. Giveaway filter (levels, percetage, points...etc.)

And some improvement could be made I think:

  1. To separate "winning chance" and "winning ratio" to different block and make "ratio" more clear to see(color?).
  2. To make "not enough point" block smaller or some icon instead. It's too long right now.

I am looking forward to see these features implemented.

7 years ago*
Permalink

Comment has been collapsed.

2017-04-11 v5.3

  • Updated @namespace and @author, and added @contributor Royalgamer06 to the metadata header.
  • Changed the script to run at document-idle (allows the removal of event handlers attached by SG to replace them with event handlers attached by the script without collision).
  • Fixed an issue in the giveaways regex that could allow features that should not run on "/giveaways/created", "/giveaways/entered", etc... to do so.
  • Added Pinned Giveaways Button (partial solution to #87).
  • Added a message showing how many entries were removed and for which games in Entries Remover (closes #80).
  • Fixed a bug that was running Enter / Leave Giveaway Button in an user's own profile page (closes #73).
  • Changed the alignment of giveaway descriptions to the left in Giveaway Description / Comment Box Popup (closes #81).

Warning: If you update to this version through a link instead of through Greasemonkey / Tampermonkey, it's likely that it will try to install another script instead of updating it, because of the @namespace change. So before updating, change the @namespace to ESGST and it should update normally.

7 years ago*
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

7 years ago
Permalink

Comment has been collapsed.

I don't know. Have you tried disabling all other scripts? It's most likely an incompatibility issue.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

7 years ago
Permalink

Comment has been collapsed.

Just change the script execution order so that ESGST runs before SG Bookmarks.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

7 years ago
Permalink

Comment has been collapsed.

In tampermonkey's dasboard there is a sort on the right hand side just click and drag, in greasemonkey right click on the script on firefox's addons page.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 5 years ago.

7 years ago
Permalink

Comment has been collapsed.

Oooooo fancy! I'm late to the party, but this looks really cool. Giving it a test :D

7 years ago
Permalink

Comment has been collapsed.

Bump! Spent the past hour looking over it and it's amazing! 4 months 2600+ comments and I've somehow missed this entirely.

7 years ago
Permalink

Comment has been collapsed.

bump for finding a true gem :D

7 years ago
Permalink

Comment has been collapsed.

Sign in through Steam to add a comment.