Code Monkey home page Code Monkey logo

steamwebintegration's Introduction

GitHub license GitHub issues GitHub stars GitHub stable release date GitHub stable release version Steam donate

Integrate your personal Steam information on the web, at your convenience!

Screenshot

image

Download

chrome firefox

Sponsors

None at the moment. Consider sponsoring me and ask to be featured here! <3

Features

  • Checks web pages for links or images of steam games or DLC
  • Displays informative icons next to the link or image
  • Shows tooltips with additional information (on icon hover)
  • Information includes:
    • Type (game, DLC or package)
    • Ownership on Steam
    • Wishlisted on Steam
    • Followed on Steam
    • Ignored on Steam
    • Delisted/removed from Steam
    • Limited on Steam (low confidence metric)
    • Steam Trading Cards
    • Game bundle history
  • Caching of data
  • Support for dynamically changing web content
  • Context menu options
  • Highly configurable

Used Libraries

FAQ

Why does it not work?

Make sure you are logged in to steam with the right account in your web browser and visit this page and refresh until you can see all your data is loaded (you will see this if it is not loaded). If that does not work, try factory reset.

Why does it still not work?

I don't know. Try factory reset. Otherwise, be sure to contact me and provide me the log/error from the extension, if there is any. Post it here.

Can I suggest a feature?

Yes, absolutely! Post it here.

Can I contribute to the project?

Even better! Submit your Pull Requests here.

My question isn't listed?

Try searching GitHub issues or the SteamGifts topic for your answer.

Changelog

Later versions can be found here

Version 1.6

  • Added support for trading cards icon.

Version 1.5

  • Added support for games that were removed or delisted on Steam.

Version 1.3

  • Implemented caching of data and added support for dynamically generated content.

Version 1.2

  • Prevented alerts from showing when in incognito mode

Version 1.1

  • Added support for agecheck links

Version 1.0

  • Initial release

steamwebintegration's People

Contributors

bestpika avatar dependabot[bot] avatar hclonely avatar luckz avatar pumpcin avatar revadike avatar royalgamer06 avatar undefo avatar wilux-source avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

steamwebintegration's Issues

Extra icons

Is that normal? In the giveaway page, I see the normal icons next to the game name and maybe a day ago those extra icons just after the picture. Tried to turn off every extension. When SteamWebIntegration inactive those icons disappear.

https://i.imgur.com/s3Iv9yj.png

request: more settings in 2.31 Hidden Games Manager

Only Remove Followed Games
Only Remove Games Tagged [select list - 8.3 game tags] [+ Tag]
        [+ Tag] adds another Only Remove Games Tagged [select list - 8.3 game tags] line
        personally only need one tag, but reckon others may prefer more
        suggest running multiple tags sequentially not concurrently

Thanks again for all your hard work 🥇

Turn callback functions into promises

So code becomes way more clean and flexible.
Additionally, it can improve performance by performing all refreshes asynchronously at the same time.

Fanatical bundle pages do not update the ownership status

If I go to a bundle page on the Fanatical website (eg. https://www.fanatical.com/en/bundle/tabletop-bundle), and click on one of the game icons, the script successfully injects the ownership status for that game to the details window below. However, if I attempt to view another game, the ownership status is not updated for the new "View on Steam" link, as the content of the link is updated via a script, rather than showing and hiding different elements. Is it possible to refresh the shown status based on the link address updating?

More specific classnames

Avoid breaking things by using more specific class names.
Specifically, boxed is too general.

Limited DLC

coult there be a indicator for dlc that is feature limited, so I know if the dlc wont count for the dlc show on profile showcases and also an indicater for if it is a soundtrack since these wont count towards the steam showcase counter aswell.

It doesnt work

I have last version of this script and last version of chrome and tampermonkey
Idk why its not work

Add bundle info to steam subs

The API being used to acquire bundle info also include steam subid's as key, therefore this information can also be displayed for steam subid's.

[Suggestion] Please add Option to Scale Icon/Text Size...

Dear Sir,

First of all thanks for keeping this Script alive as it's now a Must Install for me and I recommend it to whomever willing go beyond the Vanilla Steam Experience, good job. As I also must thank for the existence of https://revadike.com/swi/settings/ because before that I was custom editing into your ever increasing and getting complicated code as I prefer other set of Unicode that appeal to me like ♡ ☑ ☒ ☐ for wish, own, ignore and unown.

But with latest update, I'm just clueless to where to Inject my custom font sizing that I used to use as code of;

if (ignoredApps.includes(appID) && wantIgnores) { //if ignored and enabled
                html += "<span style='color: " + ignoredColor + " !important; font-size: 1.2em; font-weight: bold; cursor: help;' title='Game or DLC (" + appID + ") ignored on Steam\nLast updated: " + lcs + "'> " + ignoredIcon + "</span>"; //🛇
            }

from an Old copy of your Code where I injected the font-size and font-weight CSS properties because my Eyesight is not so good that I have difficulty to see your "Tiny" Icons to recognize what they meant. But now in the New copy of your Code it's;

if (settings.wantIgnores && ignoredApps && ignoredApps.includes(appID)) { // if ignored and enabled
            html += getIconHTML(settings.ignoredColor, `${subject} (${appID}) ignored`, llcs, settings.ignoredIcon); // 🛇
        }

And I'm totally LOST even what this means or where to inject my custom Font Sizing CSS as your Code is getting more and more "Complex" so that only you know what's what and what to do about my Font Sizing problem.

As an amateur programmer I can track down the code (I guess) to find the New Entry Point to Inject my font-size and font-weight CSS properties but it'll take time and then I thought why don't I ask the Author so that every possible user in my situation can use such feature without having to analyze or edit your good written Code.

...

So please add a "iconScaling" (font-size in em) and "iconsBold" (font-weight) and maybe also "textScaling" (for hover text) entries into https://revadike.com/swi/settings/ in the form of "Percentage" measurement of EM (or directly Percentage) told in https://www.w3schools.com/css/css_font_size.asp for ALL of your Script Icons so that;

font-size: 1.2em; font-weight: bold;

could be done at Script Settings Level instead of code injection to ever evolving Coding of yours.

Thanks for your time and I hope you can consider to Code this into your next Update before I mess with your code back and forth to find "where" to inject.

Best Regards.

Flag for Subscribed Mods via user listing

Steam Workshop normally flags mods you are subscribed to when you're viewing them in the 'Browse' section of the game, the main directory so to speak, but when you're viewing the workshop section of a user's profile, there is no indication whether you are subscribed or not.

Here is an example URL:
https://steamcommunity.com/id/st0m/myworkshopfiles/?appid=286160

Change the 'appid' to a game you own and 'id' to a mod author whose mods you've subscribed to, and you'll notice the checkmark won't be there (though you can still press the green + button which adds it until the page refreshes).

If you could correct this behavior, I would be forever grateful.

Not working right on Safari

I added a game in wishlist 1 week ago. But its link still shows ❌ instead of ❤️ now.
I tried re-logining steam community and steam store, still no working.

It works on Chrome correctly, but not adapt for Safari.
Could you repair this problem please?🥺

Remember settings

The settings currently reset every update.
I'll probably create a settings page.

SWI causes extreme freezes with Steamgifts

For two days now there's really bad issues with Steamgifts now.
The reason I suspect SWI (besides Chrome) causing the issue is that everything else is newer and has been working well in the past while the last SWI update is from 39 days ago and the only thing having been updated right before the issues occurred is Chrome itself.

So here's the thing: I'm also using ESGST and when SWI is off while ESGST is on then everything works fine. If SWI is on and ESGST is off, then everything works fine as well. Both ESGST and SWI on though and you get in lag hell with cores of the CPU on 100% load. Loading in 6 pages on the Group page on Steamgifts takes 15 minutes - at least. Scrolling the page is not possible until everything is finished - unless you drag the scroll bar, that for some reason works. It's like surfing with dial-up modem in the late nineties all over again.

I'm assuming that something which got updated within Chrome causes both ESGST and SWI being somewhat incompatible with one another. But since ESGST's version is relatively new opposed to SWI I'd like to ask to check SWI for such issue and update it accordingly - if someone please could look into the issue.

Release as web extension

Make the userscript more accessible to everyone by releasing it as a standalone web extension.

Version 1.9.4 - Setting page does not display

Script version 1.9.4: when I now go to the settings page all that is displayed is the message : "Steam Web Integration not installed! Please make sure it is installed correctly and enabled, then refresh the page."

This message persists through clearing, Tampermonkey factory resets for the script, and deleting an reinstalling.

My use case:
Google Chrome Version 78.0.3904.97 (Official Build) (64-bit)
Tampermonkey 4.8.41

Cannot read property 'filter' of null

line 223
var app = decommissioned.filter(function(obj) {
If we have an error in refreshDecommissioned request (timeout or smth else) and we haven't cache then we will get an error in doApp function respectively.
Just need to change the condition. I created small patch.

Firefox does not show cards.

I'm generally using Opera browser and this script working well in there but when i use the firefox browser, i can not see situation of cards for games.

Also, most of the new games show fake card status via steam, so SteamCardExchange is best way to learn it.

Thank you in advance.

Flag for DLCs

It would be nice when you could show an indicator, whether the package is a dlc or not.

Breaks OnePlus.com

Website: https://www.oneplus.com/

The site is inoperable unless excluded from the script. It starts loading, renders the page and the minute the "[Steam Web Integration] Executing" message comes up in the console, it freezes. Tab process gets full CPU time, console shows nothing after the executing message, and tab is frozen.

Google Chome Version 77.0.3865.90 (Official Build) (64-bit)
Tampermonkey 4.8.41 (2019-05-06)
No other scripts on website, AdBlocker on/off makes no difference

Could not decode image when i try to install plugin

I'm trying to install the Steam Web Integration 2.0.0 plugin from the Chrome Web Store. But I can't do it because the frame with the error appears on the Chrome Web Store page:

Could not decode image: 'icon.svg'

I checked in Opera, Opera GX and Vivaldi.

Games not being marked

For some reason I cannot get games to be marked with this anymore. I don't think I have done anything that would have caused this. I did here there was a Steam update and also a Tampermonkey update. I am not sure if those changes are what caused this issue. I have got ESGST to work on steamgifts but I prefer this program as it can also check other sites.

https://i.imgur.com/EMl4Lad.png

I am only getting this error on console
0: Unable to get property 'rgIgnoredApps' of undefined or null reference

[Suggestion] Make SWI work on Gamivo

It would be great if SWI would also work on the shop listings for shops like (and aspecially as) Gamivo. If that could be included, that would be really great! If only it worked for whishlist games...

It works but it doesn't always show the icons

Version 2.1.1 works but doesn't always show icons. I know one situation. I warn you right away that the script in this situation had NO problems. For example, if the page loads information after the site has loaded. Example: SteamGifts.com with plugin installed:
https://chrome.google.com/webstore/detail/enhanced-steamgifts-steam/ibedmjbicclcdfmghnkfldnplocgihna
and active option #2.8 "Endless Scrolling".

It causes that instead of going to the second, third and next subpage of the main website, after moving to the bottom of the page, the content from the next subpage is automatically loaded. And as I have already written, the SWI script displays icons in this situation. Plugin in version 2.1.1 - no.

.

.

Version 2.1.0 does not work

I checked version 2.1.0 and it just doesn't work. I installed it but it just doesn't work. I click the plug-in button on the toolbar, select "Run" - it doesn't work. Refreshing the page - not working. "Factory reset" - does not work. I refresh the page - "does not work", again "Run" - does not work.

I checked the plugin on 2 pages and in the browser console I found the following entries.

I tried to run the plugin in Vivaldi 5.7.2921.60 (Stable channel) (64-bit).

From barter.vg:

barter.vg/:1 Refused to load the font 'https://barter.vg/bundle/webfonts/fa-solid-900.woff2' because it violates the following Content Security Policy directive: "font-src https://fonts.gstatic.com/ data:".

barter.vg/:1 Refused to load the font 'https://barter.vg/bundle/webfonts/fa-solid-900.ttf' because it violates the following Content Security Policy directive: "font-src https://fonts.gstatic.com/ data:".

Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
barter.vg/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Regular.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
barter.vg/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Medium.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
barter.vg/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Regular.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
barter.vg/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Light.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
barter.vg/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Thin.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
content.js:349 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'iconsScale')
at init (content.js:349:37)

From SteamGifts.com:

content.js:349 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'iconsScale')
at init (content.js:349:37)
securepubads.g.doubleclick.net/tag/js/gpt.js:1 Failed to load resource: net::ERR_BLOCKED_BY_CLIENT
www.googletagmanager.com/gtag/js?id=G-ZVZMZGSZJZ:1 Failed to load resource: net::ERR_BLOCKED_BY_CLIENT
cmp.quantcast.com/choice/JTKTckadxK45t/www.steamgifts.com/choice.js?tag_version=V2:1 Failed to load resource: net::ERR_BLOCKED_BY_CLIENT
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
Denying load of . Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
www.steamgifts.com/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Regular.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
www.steamgifts.com/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Medium.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
www.steamgifts.com/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Regular.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
www.steamgifts.com/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Light.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
www.steamgifts.com/:1 Denying load of chrome-extension://ibppednjgooiepmkgdcoppnmbhmieefh/fonts/Inter-Thin.ttf. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension.
cmp_v3.js:148 USP is not accessible
checkIfUspIsReady @ cmp_v3.js:148
cmp_v3.js:148 USP is not accessible
checkIfUspIsReady @ cmp_v3.js:148
DevTools failed to load source map: Nie udało się wczytać treści mapy źródeł chrome-extension://ibedmjbicclcdfmghnkfldnplocgihna/lib/browser-polyfill.min.js.map: Błąd systemu: net::ERR_BLOCKED_BY_CLIENT

Wrong AppID

Screenshot

Source code for this section:

<div class="table__row-inner-wrap">
													<div style="overflow: visible;">
														<a class="table_image_thumbnail swi" style="background-image:url(https://steamcdn-a.akamaihd.net/steam/apps/537330/capsule_184x69.jpg);" href="/giveaway/ulQNa/100-orange-juice-acceleration-pack"></a><div class="swi-block" data-appid="100"><span style="color: #008000 !important;" title="Game (100) owned on Steam

Last updated at 08.12.2021, 01:15:10
Steam Web Integration (1.11.5) by Revadike">✔</span></div>
													</div>
													<div class="table__column--width-fill">
														<p style="overflow: visible;"><a class="table__column__heading" href="/giveaway/ulQNa/100-orange-juice-acceleration-pack" data-draggable-id="name">100% Orange Juice - Acceleration Pack</a><span data-draggable-id="points"> (2P)</span><a class="giveaway__icon swi" href="http://store.steampowered.com/app/537330" target="_blank" data-draggable-id="steam"><i class="fa fa-steam"></i></a><div class="swi-block" data-appid="537330"><span style="color: #ff0000 !important;" title="DLC (537330) not owned on Steam

Last updated at 08.12.2021, 01:15:10
Steam Web Integration (1.11.5) by Revadike">✘</span><span style="color: #a655b2 !important;" title="DLC (537330) is downloadable content for an owned base game (282800) on Steam

Last updated at 07.12.2021, 01:19:51
Steam Web Integration (1.11.5) by Revadike">⇩</span><span title="Game (537330) has been in 3 bundles

Last updated at 06.12.2021, 15:53:52
Steam Web Integration (1.11.5) by Revadike"><a style="color: #804000 !important;" href="https://barter.vg/steam/app/537330/#bundles" target="_blank">🎁︎</a></span></div></p>
														<p data-draggable-id="endTime"><span data-timestamp="1639268880" data-esgst-timestamp="12 Dec, 5:28" class="esgst-at" data-ui-tooltip="{&quot;rows&quot;:[{&quot;icon&quot; : [{&quot;class&quot; : &quot;fa-clock-o&quot;, &quot;color&quot; : &quot;#84cfda&quot;}], &quot;columns&quot;:[{&quot;name&quot; : &quot;December 12, 2021, 5:28am&quot;}]}]}">12 Dec, 5:28 - 4 days</span> remaining by <a class="table__column__secondary-link" href="/user/fourtonmantis">fourtonmantis</a></p>													<div></div></div>
													<div class="table__column--width-small text-center esgst-giveaway-panel"><div class=" esgst-gwc" data-draggable-id="gwc" title="Giveaway Winning Chance (0.7042% basic and 0% advanced per point)" data-chance="1.4084507042253522" data-projectedchance="0" style="display: inline-block;"><span><span>1.41%</span></span></div></div><div class="table__column--width-small text-center">Public</div><div class="table__column--width-small text-center">8</div><div class="table__column--width-small text-center">71</div>
													<div class="table__column--width-small text-center"><span data-timestamp="1638770895" data-esgst-timestamp="6 Dec, 11:08" class="esgst-at">6 Dec, 11:08 - 1 day</span> ago</div>
																										</div>

[FR] Whitelist mode and show followed

Hello, I have a few requests that I would like to ask you if you can implement.

  1. Whitelist mode.
    The current script only has domain blacklist mode, which makes me a bit awkward in using the above, I would like to ask if it is possible to add whitelist mode?
  2. Show followed.
    I hope the followed icon can be added.

Thank you.

Optimization

I'm sorry that I can't give you more detail on the issue than that. All I can tell you is that since Tampermonkey asked me to update the scripts - and SteamWebIntegration was the only one getting an update - page loading got terribly slowed down on Steamgifts.

Additionally I'm also using the ESGST extension to load in multiple pages at once. With SWI things always were slower, but still relatively comfortable to use. But since the update it actually is as fast as back in the late 90s, when you had to wait for minutes until everything is loaded and you can even scroll again.
I'm not exaggerating, it actually takes several minutes to be able to do anything again on the page. Severy times the browser tab even crashed.

So whatever you did with the update seemed to have massive effects on usability.

EDIT: Tampermonkey also shows "'jQuery' is not defined" in line 62 besides many other issues down the lines.

Settings page problem

Getting a warning when trying to edit settings of the script. Running Brave Browser version 1.34.80. Tried doing a factory reset and that didn't help. Not sure if I have anything blocked or need to whitelist anything on this just had to reinstall windows so having to restore from tampermonkey save point.

Steam Web Integration not installed!
Please make sure it is installed correctly and enabled, then refresh the page.

Setting wantDecommissioned causes most runs to fail

Starting 1 or 2 days ago, I noticed icons weren't showing up 99% of the time on any website, using Firefox (latest version). The console has the following error for each icon that should be present:

TypeError: decommissioned.find is not a function eval line 2 > eval:380:44
    doApp moz-extension://<snip>/userscripts/Steam Web Integration.user.js?id=<snip>
    r eval:2
    d eval line 1 > Function:42

Which leads to this line:
const app = decommissioned.find((obj) => obj.appid === appID.toString());

I turned off the wantDecommissioned setting and the error no longer occurs.
Other settings such as wantLimited seem to be fine.

Thank you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.