Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. <?php
  2. if(!isset($Functions)){
  3. die("Error! 404");
  4. }
  5. require $_SERVER['DOCUMENT_ROOT'].'/engine/openid.php';
  6.  
  7. if($Functions->isLogged()){
  8. if(isset($_GET['logout'])){
  9. session_destroy();
  10. }
  11. $Functions->redirect();
  12. }else{
  13. try{
  14. $openid = new LightOpenID('http://'.$Functions->config['site_name']);
  15. if(!$openid->mode) {
  16. if(isset($_GET['login'])){
  17. $openid->identity = 'http://steamcommunity.com/openid';
  18. $Functions->redirect($openid->authUrl());
  19. }else{
  20. $Functions->redirect();
  21. }
  22. }elseif($openid->mode == 'cancel'){
  23. $Functions->redirect();
  24. }else{
  25. if($openid->validate()) {
  26. $id = $openid->identity;
  27. $ptn = "/^http:\/\/steamcommunity\.com\/openid\/id\/(7[0-9]{15,25}+)$/";
  28. preg_match($ptn, $id, $matches);
  29. $_SESSION['steamid'] = $matches[1];
  30. $_SESSION['auth'] = true;
  31. $_SESSION['lang'] = 'ru';
  32. $json_object = file_get_contents("http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=".$Functions->config['steamapi']."&steamids=".$matches[1]);
  33. if($json_object == false){
  34. die($Functions->getIndex("steam_fail"));
  35. }else{
  36. $json_decoded = json_decode($json_object);
  37. $player = $json_decoded->response->players[0];
  38. $_SESSION['name'] = $player->personaname;
  39. $_SESSION['steamid'] = $player->steamid;
  40. $_SESSION['avatarfull'] = $player->avatarfull;
  41. if(!empty($player)){
  42. $getPlayer = $Functions->db->query("SELECT * FROM users WHERE steamid = '".$player->steamid."'");
  43. if($getPlayer->num_rows == 0){
  44. $Functions->db->query("INSERT INTO `users`(`steamid`, `name`, `avatar`, `money`, `created`, `status`) VALUES ('".$player->steamid."', '".$player->personaname."', '".$player->avatarfull."', '0', '".time()."', '1')");
  45. }else{
  46. $Functions->db->query("UPDATE users SET name = '".$Functions->getString($player->personaname)."', avatar = '".$player->avatarfull."' WHERE steamid = '".$player->steamid."'");
  47. $_SESSION['name'] = $player->personaname;
  48. $_SESSION['steamid'] = $player->steamid;
  49. $_SESSION['avatarfull'] = $player->avatarfull;
  50. }
  51. $Functions->redirect();
  52. }else{
  53. die($Functions->getIndex("steam_fail"));
  54. }
  55. }
  56. }else{
  57. $Functions->redirect();
  58. }
  59. }
  60. }catch(ErrorException $e){
  61. echo $e->getMessage();
  62. }
  63. }
  64.  
  65. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement