Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
[WIDGET] Steam Group Stats Details »»
[WIDGET] Steam Group Stats
Version: 1.00, by Inflikted Inflikted is offline
Developer Last Online: Aug 2012 Show Printable Version Email this Page

Category: vBulletin CMS Widgets - Version: 4.0.3 Rating:
Released: 04-18-2010 Last Update: Never Installs: 36
Re-useable Code Translations  
No support by the author.

For those who have a steam group, you can easily display your steamgroup stats on your frontpage. I included 2 versions a cached version (which I recommend to use but takes a tiny bit more effort to run) and a non-cached version which runs out of the box (might slow down your site a bit more).

Instructions Cached Version:
1.Navigate to AdminCP -> CMS -> Widgets.
2. Create a PHP Type Widget and paste the code from below:

cached version:
PHP Code:
<html>
<style type="text/css">
span.membersInGame {
    font-size: 11px;
    color: #8bc53f;
    font-family:arial, Helvetica, tahoma, sans-serif;
    text-decoration:none;
}
span.membersOnline {
    font-size: 11px;
    color: #62a7e3;
    font-family:arial, Helvetica, tahoma, sans-serif;
    text-decoration:none;
}
</style>
</html>
<?php 
$group 
freefragnet;
$cachefile 'cache/grpcache.html';
$cachetime 60// 5 minutes
if (file_exists($cachefile) && (time() - $cachetime filemtime($cachefile))) {
include(
$cachefile);
echo 
"<!-- Cached ".date('jS F Y H:i'filemtime($cachefile))." -->";

} else {
ob_start();
    
$url file_get_contents('http://steamcommunity.com/groups/'.$group); 
    
ini_set('default_socket_timeout'0); 
    
preg_match('#<h1>(.+)</h1>#sU'$url$aMatches); 
    echo 
"<div class=blockrow>";
    echo 
"<table>";
    echo 
"<a class='clanname' href='http://steamcommunity.com/groups/$group' target='_blank'>$aMatches[1]</a>"
    echo 
"<br>";

    
preg_match('#<div class="groupMemberRow">(.+)</div>#sU'$url$aMatches); 
    
$aMatches str_replace('class="linkStandard"''class="linkStandard" target="_blank"'$aMatches[1]);
    
$pieces explode(" "$aMatches);
$domain strstr($pieces[3], '>');
$strip1 substr($domain1); 
    echo 
"<span class=resultsb>$strip1 Members</span>";
    echo 
"<br>";
$domain1 strstr($pieces[6], '>');
$strip2 substr($domain11);
    echo 
"<span class=membersInGame><font color=#8bc53f>$strip2 In-Game</font></span>"
    echo 
"<br>";
$domain2 strstr($pieces[9], '>');
$strip3 substr($domain21); 
    echo 
"<span class=membersOnline><font color=#62a7e3>$strip3 Online</font></span>";
echo 
"</table>";
echo 
"</div>";
$fp fopen($cachefile'w');
fwrite($fpob_get_contents());
fclose($fp);
ob_end_flush();
ob_end_clean();
}
?>
3. Edit $group = freefragnet; to your group. This is in the url base for your steam group Example: http://steamcommunity.com/groups/freefragnet

4. In your ftp, in the same base folder vbulletin is hosted, create a folder named 'cache' and CHMOD to 777.
5. Your set

Demo: http://www.freefrag.com/

Instructions Non-Cached Version:
1.Navigate to AdminCP -> CMS -> Widgets.
2. Create a PHP Type Widget and paste the code from below:

non-cache
PHP Code:
<html>
<style type="text/css">
span.membersInGame {
    font-size: 11px;
    color: #8bc53f;
    font-family:arial, Helvetica, tahoma, sans-serif;
    text-decoration:none;
}
span.membersOnline {
    font-size: 11px;
    color: #62a7e3;
    font-family:arial, Helvetica, tahoma, sans-serif;
    text-decoration:none;
}
</style>
</html>
<?php 
$group 
freefragnet;
    
$url file_get_contents('http://steamcommunity.com/groups/'.$group); 
    
ini_set('default_socket_timeout'0); 
    
preg_match('#<h1>(.+)</h1>#sU'$url$aMatches); 
    echo 
"<div class=blockrow>";
    echo 
"<table>";
    echo 
"<a class='clanname' href='http://steamcommunity.com/groups/$group' target='_blank'>$aMatches[1]</a>"
    echo 
"<br>";

    
preg_match('#<div class="groupMemberRow">(.+)</div>#sU'$url$aMatches); 
    
$aMatches str_replace('class="linkStandard"''class="linkStandard" target="_blank"'$aMatches[1]);
    
$pieces explode(" "$aMatches);
$domain strstr($pieces[3], '>');
$strip1 substr($domain1); 
    echo 
"<span class=resultsb>$strip1 Members</span>";
    echo 
"<br>";
$domain1 strstr($pieces[6], '>');
$strip2 substr($domain11);
    echo 
"<span class=membersInGame><font color=#8bc53f>$strip2 In-Game</font></span>"
    echo 
"<br>";
$domain2 strstr($pieces[9], '>');
$strip3 substr($domain21); 
    echo 
"<span class=membersOnline><font color=#62a7e3>$strip3 Online</font></span>";
echo 
"</table>";
echo 
"</div>";
?>
3. Edit $group = freefragnet; to your group. This is in the url base for your steam group Example: http://steamcommunity.com/groups/freefragnet
4. Your set

Demo: http://www.freefrag.com/

Screenshots

File Type: jpg steamstats.jpg (12.9 KB, 0 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #52  
Old 10-07-2012, 06:21 PM
MissSavitri MissSavitri is offline
 
Join Date: May 2011
Posts: 15
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Has anyone found a solution for the parse errors?

What I'm getting is:

Parse error: syntax error, unexpected '<' in /homepages/17/d366822374/htdocs/forums/packages/vbcms/widget/execphp.php(191) : eval()'d code on line 1

And the widget is empty.
Reply With Quote
  #53  
Old 10-14-2012, 01:20 PM
MadMakz MadMakz is offline
 
Join Date: Apr 2011
Posts: 26
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Here's a third version. Using Steam's XML API.

https://tracker.madmakz.com/redmine/...us/sgs_xml.php

As always replace
echo stgrp_status($gruppe);
by
return stgrp_status($gruppe);

if used in sidebar to keep compatibility to vB workflow.

This is probably my last post regarding this code here. Already took it over enough.
I'm not going to make a Modpost for it since the code itself ist not targetet only for vB an represents just a snippet.

If you have any issues you can use my local tracker-board here (doesn't require registration).

edit: updated download link to point to always latest version.
Reply With Quote
2 благодарности(ей) от:
CoZmicShReddeR, jaffaman
  #54  
Old 01-30-2013, 04:57 PM
Hitman235234532 Hitman235234532 is offline
 
Join Date: Nov 2010
Posts: 37
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hello, I have a small problem. I have my widget setup, but all I see is:
Members
In-Game
Online

I don't see any numbers.

Help please.
Reply With Quote
  #55  
Old 06-01-2015, 12:51 PM
fred86 fred86 is offline
 
Join Date: Jul 2014
Posts: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hitman235234532 View Post
Hello, I have a small problem. I have my widget setup, but all I see is:
Members
In-Game
Online

I don't see any numbers.

Help please.
Did anyone ever figure out the solution to this? I have exactly the same problem.
Reply With Quote
  #56  
Old 07-04-2015, 06:37 PM
ukhostz's Avatar
ukhostz ukhostz is offline
 
Join Date: Oct 2010
Location: Workington, Cumbria
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have the exact same issue and it seems tracker.madmakz is no longer online. Has anyone got the file sgs_xml.php? Any help would be appreciated
Reply With Quote
  #57  
Old 10-25-2015, 01:33 AM
Replicators's Avatar
Replicators Replicators is offline
 
Join Date: Jul 2005
Location: Jamestown, NY
Posts: 344
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Someone should really update this or send to the graveyard, it doesn't work anymore!
Reply With Quote
Благодарность от:
fred86
  #58  
Old 11-06-2015, 09:27 PM
LM SpinX LM SpinX is offline
 
Join Date: Oct 2015
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any updates for it?
Reply With Quote
  #59  
Old 01-19-2016, 03:29 AM
armpit armpit is offline
 
Join Date: Jul 2013
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

In case anyone is still interested in this, it is pretty easy. Just add it as a foum block. (Replace 'HeadShotCommunity' with your own group)

I knocked this up in about 2 minutes, would be easy to expand on.

PHP Code:
$gUrl 'http://steamcommunity.com/groups/HeadShotCommunity/memberslistxml/?xml=1';
$r '';

$xmlstring file_get_contents($gUrl);
ini_set('default_socket_timeout'0);

$xml  simplexml_load_string($xmlstring);
$json json_encode($xml);
$ar   json_decode($jsonTRUE);
$gd   $ar['groupDetails'];

$r .= "<div>Members: ".$gd['memberCount']."</div>";
$r .= "<div><font style='color: #8bc53f;'>In Game:</font> ".$gd['membersInGame']."</div>";
$r .= "<div><font style='color: #62a7e3'>Online:</font> ".$gd['membersOnline']."</div>";

return 
$r
Reply With Quote
Благодарность от:
fred86
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:50 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04981 seconds
  • Memory Usage 2,370KB
  • Queries Executed 26 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (9)post_thanks_box
  • (4)post_thanks_box_bit
  • (9)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit
  • (9)post_thanks_postbit_info
  • (8)postbit
  • (1)postbit_attachment
  • (9)postbit_onlinestatus
  • (9)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete