rafaelgomesxyz / esgst

An extension that enhances SteamGifts / SteamTrades.
MIT License
147 stars 23 forks source link

Fix a bug in Created/Entered/Won Giveaway Details that does not show winners in the created pages #938

Closed Eiion closed 5 years ago

Eiion commented 6 years ago

Description The "created" page show winner profile links only for the first few winners - then none for any of the following giveaways. Those shown were already shown when none of the keys were sent out, yet. After sending all the keys nothing changed.

Steps to Reproduce

  1. Go to "https://www.steamgifts.com/giveaways/created"
  2. See result

Expected Behavior Winner profile links would be expected to be displayed for all the giveaways. Console Errors No errors but: ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32269 ESGST Log: CEWGD 2 esgst.js:32270 ESGST Log: Updating winners for 4ZuYC... esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32269 ESGST Log: CEWGD 2 esgst.js:32270 ESGST Log: Updating winners for 53a3h... esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32269 ESGST Log: CEWGD 2 esgst.js:32270 ESGST Log: Updating winners for xvyDW... esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32269 ESGST Log: CEWGD 2 esgst.js:32270 ESGST Log: Updating winners for pkUMg... esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32266 ESGST Log: CEWGD 1 esgst.js:32257 ESGST Log: CEWGD 0 esgst.js:32269 ESGST Log: CEWGD 2 esgst.js:32270 ESGST Log: Updating winners for j5Ott...

Screenshots https://i.imgur.com/jnq9l6E.jpg

System (please complete the following information):

rafaelgomesxyz commented 5 years ago

I assume this still happens in v8.0.2? This bug has already been reported by 2 or 3 other users in the thread, but I haven't been able to reproduce it myself yet. The other 2-3 users reported that it only happens with new giveaways, and I don't have the ability to test with new giveaways at the moment. But since you said it shows correctly for you for the first few giveaways, it might not be an issue with new giveaways.

cassolv commented 5 years ago

It does still happen and seems to be random. Sometimes winners start showing up a while after the GA ended. In some GAs with two copies, only one of them shows up, and in others I can click on the "+1 more" thing; I can't test GAs with 3+ copies right now to see what would happen. The winners do consistently show up for me for GAs that are from before I installed ESGST, though.

Eiion commented 5 years ago

Don't know if it's happening with the current version - will see whenever I make the next several Giveaways. Yeah, all the giveaways in the screenshot where made the same time as part of a train and also ended at the same time. But even now, when I go to the Created page the giveaways I made last week do not show winners while the 9 before that do (and then again hundreds before that don't).

rafaelgomesxyz commented 5 years ago

Please see if the issue still happens in v8.1.2.

Eiion commented 5 years ago

Yes, it's definitely still happening:

download

at46 commented 5 years ago

I can confirm this bug with Firefox and ESGST addon 8.1.5. I can see the winner till end of august this year. For all giveaways that ended later I miss the winner on the created page.

rafaelgomesxyz commented 5 years ago

I'm gonna have to create a quick giveaway to confirm this, because I still haven't detected the bug.

rafaelgomesxyz commented 5 years ago

@at46 But even your issue looks different than Eiion's, because Eiion says it appears for some and not for others, while you say it doesn't appear for any since a specific time.

Eiion commented 5 years ago

Well, for sure it was working reliably for me at one point. I just didn't go back to check when exactly it started to not work anymore. Also, those where it worked for me are very rare and what seems to be random.

Anyways, I went back to check all of the giveaways that I have ever made and - for me too - the last giveaway until it worked reliably ended 20th July 2018. I then had one where it shows the name at 16th August 2018, then a few hundred where no winner is listed, then nine in a row that all ended on 20th September 2018 (but also about 120 that ended the same day, listed before these nine but don't show a winner) and then a last one on 3rd November 2018. So in total it was just 11 giveaways out of hundreds where the winner gets displayed.

In the same time period he made about only half, maybe less, the giveaways that I made. More specifically, in the time period between the date where it first stopped showing winners for me until the one giveaway where it does show a winner, he only made a single giveaway. So to me that doesn't look as if he has a different issue.

at46 commented 5 years ago

I'm sorry I was not correct with my statement before. I had some filter on and there is one giveaway with multiple copies which shows the winners on the created page after end of august . I guess Eiion is right and it's the same bug. Since summer you see the winner only very very rarely.

rafaelgomesxyz commented 5 years ago

Can one of you post the info from the console log? I modified it in v8.1.5 to try to get more useful details about what's going on. I can't create a giveaway at the moment to test it myself.

at46 commented 5 years ago

I've many repeats of the following in the console nothing else:

Saved esgst.js:1:1234561 unavailable esgst.js:1:1234582

rafaelgomesxyz commented 5 years ago

Try Ctrl + Shift + I. Logs appear only in the normal console on Firefox, not on the browser console (browser console is for errors - yeah, Firefox is confusing).

at46 commented 5 years ago

log.txt Do I need to expand something?

rafaelgomesxyz commented 5 years ago

Normally, you'd have to, but I can already see that only one of the giveaways has an array that is filled with winners (I assume this is the giveaway you see - 6 winners, right?), the rest are all empty, so I already have something to go on.

at46 commented 5 years ago

Your assumption is right

rafaelgomesxyz commented 5 years ago

Are either of you able to test the latest dev version?

at46 commented 5 years ago

I've never installed a dev version before but if you tell me how I'll try it. I normally use the addon but if I disable that and installing the dev version with tampermonkey it should work?

rafaelgomesxyz commented 5 years ago

Do you know how to load a temporary extension on Firefox? You can download this file, then extract it and load the manifest.json file found in the Extensions folder as a temporary extension. It will replace your current addon version until you restart the browser (after you restart the browser you will go back to the version you had installed). You shouldn't lose any data in the process, but back up just in case.

Or you can use it with Tampermonkey (although you will have to re-enable everything because it will be like you're installing it for the first time - unless you restore your data) by copying the contents from https://raw.githubusercontent.com/gsrafael01/ESGST/master/Extension/esgst.js and pasting them in a new script. The file is huge though, so copying and pasting might make your computer slow.

at46 commented 5 years ago

Never heard that you can temporarily install an extension before and I guess I did it wrong because Firefox said that the addon could not be installed because it is damaged. I also tried to make a new userscript but tampermonkey said that it is an invaild script.

rafaelgomesxyz commented 5 years ago

It's designed for developers to test their extensions. I just tested and it works fine. You clicked on "Debug addons", then "Load temporary extension" and selected manifest.json?

at46 commented 5 years ago

Nope but that works. Thanks for your help and the bug seems to be gone. I can see all winners on the created page now.

Eiion commented 5 years ago

I can confirm that with version 8.1.6 (Dev.33) the winners are displayed.

cassolv commented 5 years ago

Hmm... The issue is gone... mostly, but not entirely.

I can see all my winners, except for some, all of whom from GAs with multiple copies. More specifically, some of my GAs with 2-3 copies are missing one winner (so it's a 3 copy GA with 3 winners who all marked the game received, but I see (1 more) and received 2/2, same idea for the 2 copy GAs). There doesn't seem to be any pattern to the ones that aren't detected. I've already synced to hell and back and nothing fixes it. I'm not even sure it's the same bug.

Any ideas?

rafaelgomesxyz commented 5 years ago

Not sure what's happening, opened a new ticket to track this issue: #1192