Steam Authentication & Integration

Steam Authentication & Integration 1.6.3

No permission to download
Okay here's the update on the development of 1.1.6:

I've implemented the fix proposed by duydangle. I've also moved the location variable initialization out of an else statement and put it before any variable changes take place. Finally, I added logic for location. It now checks for country and will write out the full name of your country as your location. If you're in the United States and have a state selected, it will also use that.

However, I need some people to help me test 1.1.6 on my forums at http://ragecagegaming.com/forum/

I need the following:
  • 1 person to register without a location on their steam profile (works)
  • 1 person to register with just United States on their profile (works)
  • 1 person to register with United States + State on their profile (works)
  • 1 person to register with United States + State + City on their profile (works)
  • 1 person to register with a country other than United States on their profile (works)
If everything is working correctly this is what should happen:
  • No country = Parts Unknown as your XenForo profile location (works)
  • US = United States of America as your XenForo profile location (works)
  • US + State = State, United States of America as your XenForo profile location (works)
  • US + State + City = State, United States of America as your XenForo profile location (works)
  • Other Country = Other Country (ex. Germany) as your XenForo profile location (works)
 
HowIChrgeLazer updated Steam Authentication & Integration with a new update entry:

Version 1.1.6 Changelog

* Added county code case statement check for user location
* Fixed HTTPS redirection as reported in the previous addon

To further explain the new location logic:
  • No location set in Steam = Parts Unknown as your XenForo profile location at registration
  • US set in Steam = United States of America as your XenForo profile location at registration
  • US + State set in Steam =...

Read the rest of this update entry...
 
An idea, when people logout and click and image or something, they don't get the option to login with Steam. Maybe that could be a useful update :)
 
Just curious, were the files updated? ManUp had fixed ours but since updating to yours, I've gotten this error again:

PHP:
#0 /home/--/public_html/library/Steam/ControllerPublic/Register.php(370): XenForo_Application::handlePhpError(8, 'Undefined varia...', '/home/thesecr1/...', 370, Array)
#1 /home/--/public_html/library/XenForo/FrontController.php(310): Steam_ControllerPublic_Register->actionSteam()
#2 /home/--/public_html/library/XenForo/FrontController.php(132): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#3 /home/--/public_html/index.php(13): XenForo_FrontController->run()
#4 {main}
 
Yes, the files were updated. It's possible that the steam community is not responding and not returning data to you. Is it happening constantly, once and awhile, or just with a specific user?

On a side note. I ended up tracking down your website through your steam profile and I noticed something: Your SteamProfiles aren't working either. I'm leaning towards this issue having something to do with the configuration on your host.
 
If you could, please make a php file with the the contents <?php phpinfo(); ?>

Browse to it and check for the following directives:
safe_mode
open_basedir

Safe mode should be OFF and open_basedir should be set to no value (aka commented out in php.ini)

If yours are different, these need to be corrected.

This shouldn't be affecting registrations (it's gathered by file_get_contents and read by json_decode), but it's something we can start with because those are the requirements for this add-on to function completely.

Also, side question. What version of PHP?
 
If you could, please make a php file with the the contents <?php phpinfo(); ?>

Browse to it and check for the following directives:
safe_mode
open_basedir

Safe mode should be OFF and open_basedir should be set to no value (aka commented out in php.ini)

If yours are different, these need to be corrected.

This shouldn't be affecting registrations (it's gathered by file_get_contents and read by json_decode), but it's something we can start with because those are the requirements for this add-on to function completely.

Also, side question. What version of PHP?

I don't have the ability to do so. I had to get the host to change it. That being said, the badges still aren't working and still giving the errors.

With the addition of this error now:

PHP:
#0 /home/thesecr1/public_html/library/Steam/ControllerPublic/Register.php(566): XenForo_Application::handlePhpError(8, 'Undefined index...', '/home/thesecr1/...', 566, Array)
#1 /home/--/public_html/library/Steam/ControllerPublic/Register.php(40): Steam_ControllerPublic_Register->_validate()
#2 /home/--/public_html/library/XenForo/FrontController.php(310): Steam_ControllerPublic_Register->actionSteam()
#3 /home/--/public_html/library/XenForo/FrontController.php(132): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#4 /home/--/public_html/index.php(13): XenForo_FrontController->run()
#5 {main}
 
Make sure to do a file health check for Xenforo and re-upload all files for the add-on. It shouldn't be erroring like that. :confused:

Also make sure you'd been upgrading the addon with the provided .xml
 
Just to clarify, if anybody has the same problem as Eoj Nawoh, make sure to have your Steam API key correct and entered into the addon options. :)
 
Have an issue on my forums when running the steam cronjob, either normally or manually:
PHP:
Server Error Log
Error Info
ErrorException: simplexml_load_string(): Entity: line 8: parser error : EntityRef: expecting ';' - library/Steam/Helper/Steam.php:91
Generated By: Unknown Account, Today at 04:01
Stack Trace
#0 [internal function]: XenForo_Application::handlePhpError(2, 'simplexml_load_...', '/home/subterran...', 91, Array)
#1 /home/subterraneangames/htdocs/library/Steam/Helper/Steam.php(91): simplexml_load_string('<!DOCTYPE HTML ...')
#2 /home/subterraneangames/htdocs/library/Steam/Cron.php(35): Steam_Helper_Steam->getUserGames(76561198021129141)
#3 [internal function]: Steam_Cron::update(Array)
#4 /home/subterraneangames/htdocs/library/XenForo/Model/Cron.php(356): call_user_func(Array, Array)
#5 /home/subterraneangames/htdocs/library/XenForo/Cron.php(29): XenForo_Model_Cron->runEntry(Array)
#6 /home/subterraneangames/htdocs/library/XenForo/Cron.php(64): XenForo_Cron->run()
#7 /home/subterraneangames/htdocs/cron.php(12): XenForo_Cron::runAndOutput()
#8 {main}
Request State
array(3) {
  ["url"] => string(49) "https://subterraneangames.com/cron.php?1359082870"
  ["_GET"] => array(1) {
    [1359082870] => string(0) ""
  }
  ["_POST"] => array(0) {
  }
}
As far I can tell it gets an HTML page but expects an XML page, and it causes the user polling to fail.
 
Have an issue on my forums when running the steam cronjob, either normally or manually:
<error snip>
As far I can tell it gets an HTML page but expects an XML page, and it causes the user polling to fail.

It will happen from time to time. There's no way around this. Steam throttles XML requests to the steam community data. I coded in retries, but if the steam community is taxed/down or they are throttling xml requests, you get a error webpage instead of XML data.

It however, should not happen ALL the time. I also recommend not running the cron manually (if you have a large user base using steam the script will be running a bit, and may time out in your browser).
 
It will happen from time to time. There's no way around this. Steam throttles XML requests to the steam community data. I coded in retries, but if the steam community is taxed/down or they are throttling xml requests, you get a error webpage instead of XML data.

It however, should not happen ALL the time. I also recommend not running the cron manually (if you have a large user base using steam the script will be running a bit, and may time out in your browser).
It is happening all the time though, and I'm getting contant reports of it not working. Any chance of a CLI version for the cron script?
 
Ensure your php.ini settings are correct and perhaps change the cron time to something outside of peak hours.

Make sure the cron is only running once per day max.
 
Error Info
PHP:
ErrorException: Invalid argument supplied for foreach() - library/Steam/ControllerPublic/Register.php:604
Generated By: Adam, 1 minute ago
Stack Trace

PHP:
#0 /home/sociall1/public_html/forums/library/Steam/ControllerPublic/Register.php(604): XenForo_Application::handlePhpError(2, 'Invalid argumen...', '/home/sociall1/...', 604, Array)
#1 /home/sociall1/public_html/forums/library/Steam/ControllerPublic/Register.php(421): Steam_ControllerPublic_Register->updateUserStats(1, '765611980250383...')
#2 /home/sociall1/public_html/forums/library/XenForo/FrontController.php(310): Steam_ControllerPublic_Register->actionSteamRegister()
#3 /home/sociall1/public_html/forums/library/XenForo/FrontController.php(132): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#4 /home/sociall1/public_html/forums/index.php(13): XenForo_FrontController->run()
#5 {main}

Request State

PHP:
array(3) {
  ["url"] => string(63) "http://www.sociallyuncensored.eu/forums/register/steam/register"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(7) {
    ["associate_login"] => string(4) "Adam"
    ["force_assoc"] => string(1) "1"
    ["associate_password"] => string(402) "MY XENFORO PASSWORD - Removed"
    ["associate"] => string(17) "Associate Account"
    ["_xfToken"] => string(53) "1,1359485608,65c440e47ef323c7fea15e4c7ec516672fac6a4a"
    ["redirect"] => string(53) "http://www.sociallyuncensored.eu/forums/account/steam"
    ["location"] => string(0) ""
  }
}


^^ Got this when trying to associate my Steam account with my site.

Capture.webp
 
PHP:
ErrorException: Undefined index: steamids - /home/sociall1/public_html/forums/js/steam/jsonproxy.php:66
Generated By: Unknown Account, Today at 5:58 PM
Stack Trace

PHP:
#0 /home/sociall1/public_html/forums/js/steam/jsonproxy.php(66): XenForo_Application::handlePhpError(8, 'Undefined index...', '/home/sociall1/...', 66, Array)
#1 {main}

Request State

PHP:
array(3) {
  ["url"] => string(62) "http://www.sociallyuncensored.eu/forums/js/steam/jsonproxy.php"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}
 
I'm having a slight issue. When I enable having the steam profile within message content. Whenever there are quotes, they hide the steam profile. Anyway to over come this issue?

Also, I can't seem to find the public statistics in the navbar. I've already enabled them in the options.
 
Top Bottom