コード例 #1
0
 public function id()
 {
     $search = $this->_getRequest()->request->get('search');
     if (!$search) {
         return new UserNotFound($search);
     }
     // Steam ID
     if (preg_match('/^STEAM_/', $search)) {
         $parts = explode(':', $search);
         $id = bcadd(bcadd(bcmul($parts[2], '2'), '76561197960265728'), $parts[1]);
     } elseif (is_numeric($search) && strlen($search) == 8) {
         $id = bcadd($search, '76561197960265728');
     } elseif (is_numeric($search) && strlen($search) == 17) {
         $id = $search;
     } else {
         $steam = new SteamUser($this->_getApi());
         try {
             $id = $steam->resolveVanityUrl(basename($search))->steamId;
         } catch (SteamUserNotFoundException $e) {
             return new UserNotFound($search);
         }
     }
     return RedirectResponse::create('/users/' . $id);
 }