CHANGELOG
v1.4.5rc3
- Fixed rare error with secondary usergroups being stored in the wrong format causing a Database Error
(When updating the plugin file, a function repairs all existing database entries once)
- Fixed new user sometimes not being assigned the correct usergroups when registering/linking/unlinking
- Fixed scheduled/maintenance tasks not updating steam user's usergroups correctly
- Fixed stc_cache using object references instead of the actual values
- Fixed the user's display group sometimes not updating correctly
- Fixed scheduled/maintenance tasks clearing the cache, even if memcached system is used
- Fixed scheduled/maintenance tasks sometimes not writing their output into the logfile
- Fixed some typos/errors in the options description text
- Added the option to force an email address in quick register
- Added the option to force the primary steam usergroup as the display group
- Added the option to immediately check if the user is member of the specified steamgroup. This should be disabled if the steam
group is too huge, (remember that for each page the script needs to query, the registration process is delayed 1 second)
in which case the correct steamgroup dependant usergroup is assigned the next time the scheduled task runs.
v1.4.4rc3
- Fixed a bug which would cause intense logfile spamming
- Fixed steam sessions not being permanent
v1.4.3rc3
- Fixed quotes in Steam usernames messing up the register template
- Fixed browser error when redirecting from steam login back to the forum url (primarily) on Windows machines
(directed to https:// instead of
http://, now replaced with an option in the STC settings)
- Fixed group maintenance function not using cache for group data when the maintenance operation is split up in multiple steps
- Fixed potential security flaw in useradministration if using custom query fields
- Added Cron job to update user <-> steam group assocations every night (basically does what the mainenance script does, now once every night)
- Added option to disallow unlinking of steamaccount. In this case, unlinking is only possible through admincp
- Added ability to unlink account completely with a checkbox as the last field, updating usergroups as well.
(before, if you set the steamid to empty string, it only removed the steam assocation, but didn't change the usergroups)
- Added memcached as optional cache system
- Reworked file cache system
- Updated steamconnect cache dir option, now a writable cache directory is required.
- Updated some option description strings to better describe which values to use.
- General code optimization
v1.4.2rc2
- Fixed User steam information displaying for the wrong user in private message view
- Fixed vBulletin not redirecting properly when linking/unlinking the steam account
- Fixed vBulletin sometimes redirecting to the wrong url after a successful steamid login.
- Added a Maintenance Task to reassign steam-dependant usergroups. This should help with users having the correct usergroup
when one of these values is changed in the admincp.
v1.4rc1
- Fixed vbulletin sometimes creating an empty stc cache file
- Fixed Link status in the Usercp displaying numbers instead of phrases for the profile visibility
- Added optional steam group membership verification and dependant forum usergroup assignment
- Added function to retrieve steam group information including memberlist
- Added lots of hooks in the login2.php
- Added scheduled task to cleanup old cache/datastore files
- Improved Steam button showing as "Signed in with STEAM" if you are logged in with an account which is linked.
- Minor code improvements
v1.3.2rc1
- Fixed a typo
v1.3b
- Fixed a bug that would cause stc to download profile data on each page request if additional fields are specified
- Added Blacklist to prevent ceratin steamids from registering/linking accounts
- Added logging to follow most important actions like linking/unlinking of accounts
- Added timeout option to http requests
- Added option to globally include additional profilefields
- Added option to enable script profiling for admins if you want to see actual execution times (you can find this as
a by default deactivated plugin in the plugin list)
- Improved caching and page load size
v1.2.2b
- Fixed the manual assignment of Steam-IDs in the admin panel producing malformed Steam64 IDs
v1.2.1b
- Fixed a syntax error appearing if you saved user details in admincp.
[NOTES for upgrader: No files did change, just upload and overwrite the product xml file./]
v1.2b
- Added steam connect control area inside user administration interface
- Added a steam icon in user postbit and profile to indicate that the user has linked his/her profile (postbit_steam_icon)
- Added steam avatar urls to postbit template with {vb:raw post.steamavatar} where steamavatar can be replaced
by "steamavatarmedium" and "steamavatarfull" as well for picking the correct size
- Added the ability to set a secondary usergroup for users linking their steam profile
- Added a userfield "steam_code" to the user table, where the coded steam id in the form STEAM_0:0:12345 is stored
as well as the function calc_steam_code($steam_id) to calculate the coded steam id from the steam friend id
on the fly
- Changed steam button being a form to a normal image link to avoid interferance with other html forms
- Fixed the steam button not redirecting to the steam login page in certain cases
v1.1.1b
- Fixed wrong function name causing errors on older php versions
[NOTES for upgrader: functions_steamconnect.php is the only updated file, just replace the old file in includes/]
v1.1b
- Fixed birthday fields not working correctly
- Fixed an issue with friendly_url while attempting to link two accounts
- Added profile data caching
- Added Steam Avatar URLs to postbit template as {vb:raw post.steamavatar}, {vb:raw post.steamavatarmedium}
and {vb:raw post.steamavatarfull} (disabled by default)
- Improved steam button, now using a separate template and being included via {vb:raw steam_button}
[NOTES for upgrader: You may want to replace the steam button code in your header template with the new
button code since now there's a template for easy customization.]
v1.0b
- Initial Beta Release
INSTALL
1) Upload all the files inside "upload" directory to their respective locations
2) Import the product xml file as an Addon inside your AdminCP
3) Navigate to Settings > "Steam Connect Settings" and configure the product to fit your needs.
You should also include a Steam API key, the link can be found below the setting entry.
3.1) (Optional) If you would like to separate normal Forum users from those, who set up their
account via quick-register, you may create a separate usergroup and set the usergroup
in the respective setting in the Product's options. This way, every quick-register user
will be set to this primary usergroup.
4) To make the steam sign-in button visible, you need to place this code where you'd like
the button to appear:
HTML Code:
{vb:raw steam_button}
In the example, it was placed inside of the header template below the content:
HTML Code:
<div class="ad_global_header">
{vb:raw ad_location.global_header1}
{vb:raw ad_location.global_header2}
</div>
If you want the button to be included in a different template, make sure you specify the template name
in the according Product setting in AdminCP > Settings > Steam Connect Settings > "Sign In Button Location"
5) To make the steam sign-in button to appear in the register form, open the "register" template,
search for the following code:
HTML Code:
<vb:if condition="$show['coppa']">
<div class="blockrow">{vb:rawphrase until_receive_signed_form}</div>
</vb:if>
BELOW add:
HTML Code:
<h3 class="blocksubhead">{vb:rawphrase stc_steamconnect}</h3>
<div class="section">
<div class="blockrow">
{vb:raw steam_button}
</div>
</div>
6) To make the steam icon appear in the postbit where the messenger icons are, open the "postbit" template
and search for:
HTML Code:
<div class="imlinks">
{vb:raw post.icqicon} {vb:raw post.aimicon} {vb:raw post.msnicon} {vb:raw post.yahooicon} {vb:raw post.skypeicon}
</div>
depending on the position you want the icon to appear, place a
{vb:raw post.steamicon} in the list to the
others.
7) Done!
KNOWN ISSUES
- Does not work with COPPA yet and is not intended to do so
- Does not work as "only" way to register. Needs to be parallel with regular registrations
- On Windows servers, cache time in the admincp might not display properly
EXTENDING UPON THIS ADDON
Every developer is welcome to build own addons on the steam connect feature.
The only thing you need is the steamid, which is provided in all userinfo queries!
Check out the file "includes/functions_steamconnect.php" to get an overview of what's already there.
In future updates, some helper functions might be added to assist you with content pulling from
Steam's API.
You also may check out the plugin "provide steamid in postbit" where you can get a feeling on how
Steamconnect can provide you user information quickly and uncomplicated.
Also, it's a good idea to include a dependency to the Add-On-ID "steamconnect" when building
your own addons. This way you can ensure that the user has Steam Connect installed.
If you have any further questions about how to build upon the Steam Connect product
or have any suggestions/feedback, you may contact me @ vbulletin.org via PM
or per email:
radon [at] rn86 [dot] de