Advertisement
Guest User

Untitled

a guest
Apr 19th, 2014
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 8.44 KB | None | 0 0
  1. <?php
  2.     ini_set('display_errors','On');//Remove when done
  3.     error_reporting(E_ALL|E_STRICT);//Remove when done
  4.     //header("Content-Type:image/png");//Removed for troubleshooting purposes only
  5.     function FAHUser($user){
  6.         $dom=new DOMDocument();
  7.         $html=file_get_contents('http://folding.extremeoverclocking.com/user_summary.php?s=&u='.$user);
  8.         $dom->loadHTML($html);
  9.         $td=$dom->getElementsByTagName('table')->item(6)->getElementsByTagName('tr')->item(1)->getElementsByTagName('td');
  10.         $json=array(
  11.             "userName"=>$dom->getElementsByTagName('h1')->item(0)->textContent,
  12.             "userTeamRank"=>$td->item(0)->textContent,
  13.             "userOverallRank"=>$td->item(1)->textContent,
  14.             "userPoints"=>$td->item(6)->textContent,
  15.             "userPPD"=>$td->item(3)->textContent
  16.         );
  17.         $json['date']=date("Y-m-d G:i:s");
  18.         $userInfo=fread(fopen("scripts/users.json","r"),filesize("scripts/users.json"));
  19.         $userInfoArr=json_decode($userInfo);
  20.         $userInfoArr->{$user}=$json;
  21.         $userInfoArr=json_encode($userInfoArr);
  22.         $userInfo=fopen("scripts/users.json","w");
  23.         fwrite($userInfo,$userInfoArr);
  24.         fclose($userInfo);
  25.         return json_decode($userInfoArr);
  26.     }
  27.     function FAHTeam($team){
  28.         $dom=new DOMDocument();
  29.         $html=file_get_contents('http://folding.extremeoverclocking.com/team_summary.php?s=&t='.$team);
  30.         $dom->loadHTML($html);
  31.         $td=$dom->getElementsByTagName('table')->item(6)->getElementsByTagName('tr')->item(1)->getElementsByTagName('td');
  32.         $json=array(
  33.             "teamName"=>$dom->getElementsByTagName('h1')->item(0)->textContent,
  34.             "teamRank"=>$td->item(0)->textContent,
  35.             "teamPoints"=>$td->item(9)->textContent,
  36.             "teamPPD"=>$td->item(3)->textContent,
  37.             "teamToday"=>$td->item(7)->textContent
  38.         );
  39.         $json['date']=date("Y-m-d G:i:s");
  40.         $teamInfo=fread(fopen("scripts/teams.json","r"),filesize("scripts/teams.json"));
  41.         $teamInfoArr=json_decode($teamInfo);
  42.         $teamInfoArr->{$team}=$json;
  43.         $teamInfoArr=json_encode($teamInfoArr);
  44.         $teamInfo=fopen("scripts/teams.json","w");
  45.         fwrite($teamInfo,$teamInfoArr);
  46.         fclose($teamInfo);
  47.         return json_decode($teamInfoArr);
  48.     }
  49.     function BOINCUser($user){
  50.         $dom=new DOMDocument();
  51.         $html=file_get_contents('http://boincstats.com/en/stats/-1/user/detail/'.$user.'/projectList');
  52.         $dom->loadHTML($html);
  53.         $tr=$dom->getElementsByTagName('table')->item(0)->getElementsByTagName('tr')->item(1);
  54.         $ttl=str_replace(',','',$tr->getElementsByTagName('td')->item(1)->textContent);
  55.         $tot=number_format(round($ttl));
  56.         $json=array(
  57.             "userName"=>$dom->getElementsByTagName('span')->item(0)->textContent,
  58.             "userTeamRank"=>$tr->getElementsByTagName('td')->item(10)->textContent,
  59.             "userOverallRank"=>$tr->getElementsByTagName('td')->item(6)->textContent,
  60.             "userPoints"=>$tot,
  61.             "userPPD"=>$tr->getElementsByTagName('td')->item(3)->textContent
  62.         );
  63.         $json['date']=date("Y-m-d G:i:s");
  64.         $userInfo=fread(fopen("scripts/boincusers.json","r"),filesize("scripts/boincusers.json"));
  65.         $userInfoArr=json_decode($userInfo);
  66.         $userInfoArr->{$user}=$json;
  67.         $userInfoArr=json_encode($userInfoArr);
  68.         $userInfo=fopen("scripts/boincusers.json","w");
  69.         fwrite($userInfo,$userInfoArr);
  70.         fclose($userInfo);
  71.         return json_decode($userInfoArr);
  72.     }
  73.     function BOINCTeam($team){
  74.         $dom=new DOMDocument();
  75.         $html=file_get_contents('http://boincstats.com/en/stats/-1/team/detail/'.$team.'/projectList');
  76.         $dom->loadHTML($html);
  77.         $tr=$dom->getElementsByTagName('table')->item(0)->getElementsByTagName('tr')->item(1);
  78.         $ttl=str_replace(',','',$tr->getElementsByTagName('td')->item(1)->textContent);
  79.         $tot=number_format(round($ttl));
  80.         $json=array(
  81.             "teamName"=>$dom->getElementsByTagName('span')->item(0)->textContent,
  82.             "teamRank"=>$tr->getElementsByTagName('td')->item(6)->textContent,
  83.             "teamPoints"=>$tot,
  84.             "teamPPD"=>$tr->getElementsByTagName('td')->item(3)->textContent,
  85.             "teamToday"=>$tr->getElementsByTagName('td')->item(7)->textContent
  86.         );
  87.         $json['date']=date("Y-m-d G:i:s");
  88.         $teamInfo=fread(fopen("scripts/boincteams.json","r"),filesize("scripts/boincteams.json"));
  89.         $teamInfoArr=json_decode($teamInfo);
  90.         $teamInfoArr->{$team}=$json;
  91.         $teamInfoArr=json_encode($teamInfoArr);
  92.         $teamInfo=fopen("scripts/boincteams.json","w");
  93.         fwrite($teamInfo,$teamInfoArr);
  94.         fclose($teamInfo);
  95.         return json_decode($teamInfoArr);
  96.     }
  97.     if(isset($_GET['u'])&&isset($_GET['t'])&&!isset($_GET['w'])){
  98.         $userInfoFile=fopen('scripts/users.json','r');
  99.         $userInfo=fread($userInfoFile,filesize('scripts/users.json'));
  100.         fclose($userInfoFile);
  101.         $userInfo=json_decode($userInfo);
  102.         isset($userInfo->{$_GET['u']})?$user=$userInfo->{$_GET['u']}:$user=FAHUser($_GET['u'])->{$_GET['u']};
  103.         $hours=(strtotime(date("Y-m-d G:i:s"))-strtotime($user->date))/3600;
  104.         //if($hours>=3){//Removed for troubleshooting purposes only
  105.             FAHUser($_GET['u']);
  106.         //}//Removed for troubleshooting purposes only
  107.         $user=$userInfo->{$_GET['u']};
  108.         $teamInfoFile=fopen('scripts/teams.json','r');
  109.         $teamInfo=fread($teamInfoFile,filesize('scripts/teams.json'));
  110.         fclose($teamInfoFile);
  111.         $teamInfo=json_decode($teamInfo);
  112.         isset($teamInfo->{$_GET['t']})?$team=$teamInfo->{$_GET['t']}:$team=FAHTeam($_GET['t'])->{$_GET['t']};
  113.         $hours=(strtotime(date("Y-m-d G:i:s"))-strtotime($team->date))/3600;
  114.         //if($hours>=3){//Removed for troubleshooting purposes only
  115.             FAHTeam($_GET['t']);
  116.         //}//Removed for troubleshooting purposes only
  117.         $FAHBOINC="  F@H User:";
  118.         $pointRank="Points Today:";
  119.     }elseif(!isset($_GET['u'])&&isset($_GET['t'])&&isset($_GET['w'])){
  120.         $userInfoFile=fopen('scripts/boincusers.json','r');
  121.         $userInfo=fread($userInfoFile,filesize('scripts/boincusers.json'));
  122.         fclose($userInfoFile);
  123.         $userInfo=json_decode($userInfo);
  124.         isset($userInfo->{$_GET['w']})?$user=$userInfo->{$_GET['w']}:$user=BOINCUser($_GET['w'])->{$_GET['w']};
  125.         $hours=(strtotime(date("Y-m-d G:i:s"))-strtotime($user->date))/3600;
  126.         //if($hours>=3){//Removed for troubleshooting purposes only
  127.             BOINCUser($_GET['w']);
  128.         //}//Removed for troubleshooting purposes only
  129.         $user=$userInfo->{$_GET['w']};
  130.         $teamInfoFile=fopen('scripts/boincteams.json','r');
  131.         $teamInfo=fread($teamInfoFile,filesize('scripts/boincteams.json'));
  132.         fclose($teamInfoFile);
  133.         $teamInfo=json_decode($teamInfo);
  134.         isset($teamInfo->{$_GET['t']})?$team=$teamInfo->{$_GET['t']}:$team=BOINCTeam($_GET['t'])->{$_GET['t']};
  135.         $hours=(strtotime(date("Y-m-d G:i:s"))-strtotime($team->date))/3600;
  136.         //if($hours>=3){//Removed for troubleshooting purposes only
  137.             BOINCTeam($_GET['t']);
  138.         //}//Removed for troubleshooting purposes only
  139.         $FAHBOINC="BOINC User:";
  140.         $pointRank=" Ranks Risen:";
  141.     }else{
  142.         //Error
  143.     }
  144.     isset($_GET['b'])&&file_exists("images/sigimages/".$_GET['b'].".png")?$template=imagecreatefrompng("images/sigimages/".$_GET['b'].'.png'):$template=imagecreatefrompng('images/sigimages/luna1.png');
  145.     strlen($user->userName)>14?$username=substr($user->userName,0,14)."...":$username=$user->userName;
  146.     strlen($team->teamName)>13?$teamname=substr($team->teamName,0,13)."...":$teamname=$team->teamName;
  147.     $white=imagecolorallocate($template,255,255,255);
  148.     $yellow=imagecolorallocate($template,255,255,0);
  149.     $font='images/fonts/UbuntuMono-R.ttf';
  150.     imagettftext($template,10,0,28,25,$white,$font,$FAHBOINC);
  151.     imagettftext($template,10,0,105,25,$yellow,$font,$username);
  152.     imagettftext($template,10,0,15,37,$white,$font,'Rank on Team:');
  153.     imagettftext($template,10,0,105,37,$yellow,$font,$user->userTeamRank);
  154.     imagettftext($template,10,0,15,49,$white,$font,'Overall Rank:');
  155.     imagettftext($template,10,0,105,49,$yellow,$font,$user->userOverallRank);
  156.     imagettftext($template,10,0,22,61,$white,$font,'User Points:');
  157.     imagettftext($template,10,0,105,61,$yellow,$font,$user->userPoints);
  158.     imagettftext($template,10,0,42,73,$white,$font,'User PPD:');
  159.     imagettftext($template,10,0,105,73,$yellow,$font,$user->userPPD);
  160.     imagettftext($template,10,0,219,25,$white,$font,'Team Name:');
  161.     imagettftext($template,10,0,289,25,$yellow,$font,$teamname);
  162.     imagettftext($template,10,0,199,37,$white,$font,'Rank of Team:');
  163.     imagettftext($template,10,0,289,37,$yellow,$font,$team->teamRank);
  164.     imagettftext($template,10,0,206,49,$white,$font,'Team Points:');
  165.     imagettftext($template,10,0,289,49,$yellow,$font,$team->teamPoints);
  166.     imagettftext($template,10,0,226,61,$white,$font,'Team PPD:');
  167.     imagettftext($template,10,0,289,61,$yellow,$font,$team->teamPPD);
  168.     imagettftext($template,10,0,199,73,$white,$font,$pointRank);
  169.     imagettftext($template,10,0,289,73,$yellow,$font,$team->teamToday);
  170.     //imagepng($template);//Removed for troubleshooting purposes only
  171. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement