Ejemplo n.º 1
0
 public function index()
 {
     $openid = new Openid();
     $data = array();
     try {
         $button['small'] = "small";
         $button['large_no'] = "large_noborder";
         $button['large'] = "large_border";
         $button = $button[button_style];
         if (!$openid->mode) {
             if (isset($_GET['login'])) {
                 $openid->identity = 'http://steamcommunity.com/openid';
                 header('Location: ' . $openid->authUrl());
             }
             $data['form'] = "<form action=\"?login\" method=\"post\"> <input type=\"image\" src=\"http://cdn.steamcommunity.com/public/images/signinthroughsteam/sits_" . $button . ".png\"></form>";
         } elseif ($openid->mode == 'cancel') {
             echo 'User has canceled authentication!';
         } else {
             if ($openid->validate()) {
                 $id = $openid->identity;
                 $ptn = "/^http:\\/\\/steamcommunity\\.com\\/openid\\/id\\/(7[0-9]{15,25}+)\$/";
                 preg_match($ptn, $id, $matches);
                 $_SESSION['steamid'] = $matches[1];
                 //Determine the return to page. We substract "login&"" to remove the login var from the URL.
                 //"file.php?login&foo=bar" would become "file.php?foo=bar"
                 $returnTo = str_replace('login&', '', $_GET['openid_return_to']);
                 //If it didn't change anything, it means that there's no additionals vars, so remove the login var so that we don't get redirected to Steam over and over.
                 if ($returnTo === $_GET['openid_return_to']) {
                     $returnTo = str_replace('?login', '', $_GET['openid_return_to']);
                 }
                 header('Location: ' . $returnTo);
             } else {
                 $data['form'] = "<form action=" . loginpage . " method=\"post\"> <input type=\"image\" src=\"http://cdn.steamcommunity.com/public/images/signinthroughsteam/sits_" . $button . ".png\"></form>";
             }
         }
     } catch (Exception $e) {
     }
     $this->load->view('csgo', $data);
 }