';
foreach($columns as $v)
$thead.=''.ucfirst($v).'';
$thead.='
';
}
$out=(constant('DISPLAY_'.$x.'_TABLE_TITLE')?(''):'').
'
Что надо?
Форма входа
Радио
Мини-чат
500
разное
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Кто нас сегодня посетил
башорг
прошедшие кланвары
Команда 1 Счет команды 1 Счет команды 2 Команда 2 Карта Дата игры Формат
brain 407 0 [MXC]
karkand 20.04.10 2x2
 brain
  285   447   =TGF=
  karkand & jala
  24.04.10   4x4
 brain   546   201   BK&DR   kark&jala   19.07.10   2x2 
 brain   318   170   BK&EVO   kark  22.07.10   2x2 
 brain   116   303   Riko&Snake   kark   22.07.10   2x2 
 collector   348   185   TeADoR   jala   23.07.10   1x1 
  brain
 0    271  BK&oDin
   kark
 23.07.10   2x2
brainMIX
  434   163 =BBT=
kark&jala
 25.08.10   4x4
brain
  277   128 =CoBS=
kark&jala


29.08.10
  2x2
brain
  534   71 =BBT=
kark&jala
 05.09.10   4x4
brain
  336   0 =WIND=
jala
 07.09.10   4x4
brain
  274   91 =CNW=
kark
 07.09.10   3x3
brain
  0   699 =TGF=
kark&oman
 07.09.10   4x4
brain
  502   242 =CoBS=
kark&jala
 18.09.10   4x4
brain
  388   25 =CNW=
kark
 23.09.10   2x2
brain
  243   38 =WIND=
kark
 24.09.10   4x4
brain
  354   0 =BC=
kark
 23.09.10   4x4
=BBT=
  145
  596
brain
kark&jala
 25.09.10   4x4
=BBT=
  0   229 brain
kark
 26.09.10   4x4
easy
  342   348 brain
kark&jala
 28.09.10   4x4

     

    

     

    

     

    

     

    

     

    


/*
=============================================================
ICCup Stats
=============================================================
installation:
1) edit CONFIG section of this file
2) save it to your web-server with the .php extension
-on some servers it may be .php3 , .php4 or .php5
3) add this code line into place where you want ICCup statistics to be displayed:
include_once('path');
where path - is a path to this file on yours web-server
-important: this line must be inserted into some other php module,
not into the site template. except, if you have smarty templates in your
site`s engine then you can this code to it:
{php}include_once('path');{/php}
4) enjoy smile
*/

//-------------------------- CONFIG -------------------------
// user defined options:

// change value to false for temporary display disabling
define('ICCUP_TEAM_STATISTICS_ENABLED',true);

// api key. provided by iCCup.
define('ICCUP_API_KEY', '2110e290662025d9f4b792cb46ddd451');

// kind of ladder to get. valid values are 'dota', 'starcraft', 'warcraft'
define('ICCUP_LADDER_TYPE', 'starcraft');

// team page on ICCup

// if you use free hosting set parameters listed below to local page, u should
// open http://www.iccup.com/teams/[your team id]/webstats.html , save
// its output to your hard drive and manually upload on webserver
// if your hosting support sockets/connections just change MY_TEAM parameter

// http address of ICCup -no need to change
define('ICCUP','http://www.iccup.com/');
// domain name of ICCup - no need to change
define('ICCUP_DOMAIN','www.iccup.com');
// ICCup teams stats page -no need to change
define('TEAMS_PAGE','/api/team/');
// your team unique ID, replace 1 with it
define('MY_TEAM','77268');
// set page output parameter for use in this script -no need to change
define('PAGE_OUTPUT','/');
// link to this page on ICCup from 1x1 table header
define('LADDER_1X1_PAGE','ladder/1x1.html');
// link to this page on ICCup from 2x2 table header
define('LADDER_2X2_PAGE','ladder/2x2.html');

//colors for rank icons
//color for ultimate rank
define('A2_COLOR','orange');
//color for A- A ranks
define('A_COLOR','darkgreen');
//color for B ranks
define('B_COLOR','blue');
//color for C ranks
define('C_COLOR','yellow');
//color for D ranks
define('D_COLOR','darkred');
// change to false if your server don`t support local file access
// this file is used to cache created statistics table
// its not reccomended turning off this feature
define('CACHE_ENABLED',true);
// absolute path to cache file on your host computer, e.g. from root derectory
// for example, /home/username/domain.com/docs/iccup_stats.cache
// in some cases you might have to create this file first time
// manually, and set access permissions to 777 for it
define('CACHE_FILE_PATH','iccup_stats.cache');
// ICCup statistics refresh interval time in seconds
define('CACHE_EXPIRES',3600);
// timeout in seconds for connecting and getting stats from iCCup
define("SOCKET_TIMEOUT",30);
// choose what you want to be displayed in stats table
// true -display false -don`t

// show 1x1 ICCup team statistics
define('DISPLAY_1X1_STATISTICS_TABLE',true);
// show title at top of 1x1 stats table
define('DISPLAY_1X1_TABLE_TITLE',true);
// show 2x2 ICCup team statistics
define('DISPLAY_2X2_STATISTICS_TABLE',true);
// show title at top of 2x2 stats table
define('DISPLAY_2X2_TABLE_TITLE',true);
// show column headers for both stats tables
define('DISPLAY_COLUMN_HEADERS',true);
// show last statistics update date&time
define('DISPLAY_LAST_UPDATE',true);

// you can change column order, by changing positions of each column in this
// string. or just delete one of them, then it won`t be displayed. no spaces
// allowed. separation only with comma`s.
define('DISPLAY_COLUMNS_ORDER','country,rank,player,points,stats');
// show players with 0-0 stats in 1x1 stats table
define('DISPLAY_1X1_NOT_PLAYED_TEAMMATES',false);
// show players with 0-0 stats in 2x2 stats table
define('DISPLAY_2X2_NOT_PLAYED_TEAMMATES',false);

// style options, change css style of any element here:
// your own style must be written inside string ' style=""'
// don`t delete starting space or style= with quotes

// 'div' element, container for all other html output
// id="ICCupStatistics"
define('STYLE_MAIN_CONTAINER',' style="width:auto;text-align:center;vertical-align:top;margin:0px;padding:0px"');
// 'a' element, in which 1x1 table title is placed
define('STYLE_1X1_TABLE_TITLE',' style="width:90%;background:black;color:white;font:11pt/12.5pt \'Verdana\', serif;text-decoration:none;text-align:center;"');
// 'a' element, in which 2x2 table title is placed
define('STYLE_2X2_TABLE_TITLE',' style="width:90%;background:black;color:white;font:11pt/12.5pt \'Verdana\', serif;text-decoration:none;text-align:center;"');
// 'table' element, for 1x1 stats
define('STYLE_1X1_TABLE',' style="border:1px solid gray;width:100%"');
// 'table' element, for 2x2 stats
define('STYLE_2X2_TABLE',' style="border:1px solid gray;width:100%"');
// 'tr' element, for each players 1x1 stats
define('STYLE_1X1_TR',' style=""');
// 'tr' element, for each players 2x2 stats
define('STYLE_2X2_TR',' style=""');
// 'td' element, for each 1x1 player stats column
define('STYLE_1X1_TD',' style="text-align:center;color:black;font:7pt"');
// 'td' element, for each 2x2 player stats column
define('STYLE_2X2_TD',' style="text-align:center;color:black;font:7pt"');
// 'th' element, for each column header in both tables
define('STYLE_PLAYER_LINK',' style="color:black;font:700 8pt;text-decoration:none"');
// 'th' element, for each column header in both tables
define('STYLE_COLUMN_HEADERS',' style="font-weight:bold;color:gray;font-size:8pt"');
// 'span' element, in which last update info is placed
define('STYLE_LAST_UPDATE',' style="font-weight:lighter;color:black;font-size:7pt;text-align:center"');

// choose your page`s DOCTYPE here
// XHTML -just leave ' /' HTML -change to ''
// unsure? don`t care, and leave it intact
define('XHTML',' /');

// do not edit anything under this line, unless you know, what are you doing
//----------------------- END CONFIG ------------------------

define('BR','');
define('ICC_STYLE','');
define('ICCUP_TEAM_PAGE',TEAMS_PAGE.MY_TEAM.PAGE_OUTPUT.'?key='.ICCUP_API_KEY.'&game='.ICCUP_LADDER_TYPE);

function _displayTable($x,&$ICCupStats,&$columns)
{
$thead='';
if(DISPLAY_COLUMN_HEADERS)
{
$thead='

ICCup '.str_replace('x','X',$x).' stats
'.$thead.'';
foreach($ICCupStats[$x] as $ICCupPlayerStats)
{
$out.='';
for($q=0;$q $out.=''.($ICCupPlayerStats[$columns[$q]]!=''?$ICCupPlayerStats[$columns[$q]]:' ').'';
$out.='';
}
return $out.'
';
}

function _parseICCupStatistics()
{
$columns=explode(',',strtolower(preg_replace('[^a-zA-Z,]','',DISPLAY_COLUMNS_ORDER)));
$ICCupStats=array('1X1'=>array(),'2X2'=>array());
$page = getIccupTeamPage(ICCUP_TEAM_PAGE);
if(!function_exists('json_decode')) {
echo 'JSON php extension required.';
exit;
}
if(!($page>''))
{
if(file_exists(CACHE_FILE_PATH))
return file_get_contents(CACHE_FILE_PATH);
}
else
{
$players=json_decode($page, true);
foreach($players as $v)
{
$player_link=''.$v['common']['login'].'';
$country = '
'.$v['common']['strana']['name'].'
';
if(DISPLAY_1X1_NOT_PLAYED_TEAMMATES || $v[ICCUP_LADDER_TYPE]['games_1x1'] != 0)
$ICCupStats['1X1'][]=array('country'=>$country,
'player'=>$player_link,
'rank'=>$v[ICCUP_LADDER_TYPE]['rank_1x1'],
'points'=>$v[ICCUP_LADDER_TYPE]['1_rating'],
'stats'=>$v[ICCUP_LADDER_TYPE]['wins_1x1'].' - '.$v[ICCUP_LADDER_TYPE]['losses_1x1']);
if(DISPLAY_2X2_NOT_PLAYED_TEAMMATES || $v[ICCUP_LADDER_TYPE]['games_2x2'] != 0)
$ICCupStats['2X2'][]=array('country'=>$country,
'player'=>$player_link,
'rank'=>$v[ICCUP_LADDER_TYPE]['rank_2x2'],
'points'=>$v[ICCUP_LADDER_TYPE]['2_rating'],
'stats'=>$v[ICCUP_LADDER_TYPE]['wins_2x2'].' - '.$v[ICCUP_LADDER_TYPE]['losses_2x2']);
}
}
// for webmasters: for your own html code generation issues, delete following 9 lines
// from 'if(DISPLAY_COLUMN_HEADERS)...' to '$output=...', also delete function _displayTable
// declared upper, and fill $output string variable here as you want from
// $ICCupStats 2-dimensional array ['1X1' and '2X2'][player counter][stats table column]
$output=ICC_STYLE."
".''.((!empty($ICCupStats['1X1']) ||
!empty($ICCupStats['2X2']))?(((DISPLAY_1X1_STATISTICS_TABLE && !empty($ICCupStats['1X1']))?
_displayTable('1X1',$ICCupStats,$columns):'').((DISPLAY_2X2_STATISTICS_TABLE &&
!empty($ICCupStats['2X2']))?_displayTable('2X2',$ICCupStats,$columns):'').'
'.(
' str_replace('style="','style="display:none;',STYLE_LAST_UPDATE):(strpos(STYLE_LAST_UPDATE,'style=\'"')!==false
?str_replace('style=\'','style=\'display:none;',STYLE_LAST_UPDATE): ' style="display:none"')):STYLE_LAST_UPDATE).'>
Last update: '.date('d M Y H:i:s').BR.'ICCup stats © unk &
shr & b1te
')):'ICCup is not accessible').'
'."
"; if(strpos($output,'ICCup is not accessible')===false &&
CACHE_ENABLED && (!file_exists(CACHE_FILE_PATH) || (file_exists(CACHE_FILE_PATH) && is_writeable(CACHE_FILE_PATH))))
{
$cache=fopen(CACHE_FILE_PATH,'w');
fwrite($cache,$output);
fclose($cache);
}
return $output;
}

function getIccupTeamPage($page){

$socket = fsockopen(ICCUP_DOMAIN,80,$errno,$errstr,SOCKET_TIMEOUT);

if($socket) {
$query = "GET $page HTTP/1.0
Host: ".ICCUP_DOMAIN."
User-Agent: iccup_webstat 1.2
Connection: close

";
fputs($socket,$query);

stream_set_blocking($socket,true);
stream_set_timeout($socket,SOCKET_TIMEOUT);
$info = stream_get_meta_data($socket);

$data='';
while(!feof($socket) && (!$info['timed_out'])) {
$data.= fgets($socket,1024);
$info = stream_get_meta_data($socket);
}

fclose($socket);
$data=substr($data,strpos($data,"\r\n\r\n")+4);
return $data;
}
else echo "Either iccup.com is not avaliable now or your host do not support sockets. If iccup.com is reachable at this moment, we suggest using
SCII.RU service";

}

// *****************************************
// returns string with html ICCup statistics
function getICCupStatistics()
{
if(!ICCUP_TEAM_STATISTICS_ENABLED)
return '';
else if(CACHE_ENABLED && file_exists(CACHE_FILE_PATH) && filemtime(CACHE_FILE_PATH)+CACHE_EXPIRES>time())
return file_get_contents(CACHE_FILE_PATH);
else
return _parseICCupStatistics();
}

echo getICCupStatistics();
?>