$vkUser = $res['response'][0]; $userInfo = ['u_name' => $vkUser['uid'] . '@vk.com', 'u_vkid' => $vkUser['uid'], 'u_password' => User::generatePassword(), 'u_fullname' => $vkUser['first_name'] . ' ' . $vkUser['last_name'], 'u_avatar_img' => $vkUser['photo']]; $user->create($userInfo); } else { throw new SystemException('TXT_CREATE_SOCIAL_USER_ERROR'); } } E()->UserSession->start($user->getID()); } } catch (\Exception $e) { $response->addCookie(UserSession::FAILED_LOGIN_COOKIE_NAME, $e->getMessage(), time() + 60); goto escape; } } elseif ($gooAuth && ($appID = Primitive::getConfigValue('auth.goo.appID')) && ($secretKey = Primitive::getConfigValue('auth.goo.secretKey'))) { $goo = new \Energine\user\gears\GOOOAuth(['appId' => $appID, 'secret' => $secretKey]); try { if (!($user = User::getGOOUser($goo->user->id))) { //Если нет - создаем $user = new User(); $userInfo = ['u_name' => $goo->user->email, 'u_gooid' => $goo->user->id, 'u_password' => User::generatePassword(), 'u_fullname' => $goo->user->name, 'u_avatar_img' => $goo->user->picture]; $user->create($userInfo); } E()->UserSession->start($user->getID()); } catch (Exception $e) { $response->addCookie(UserSession::FAILED_LOGIN_COOKIE_NAME, $e->getMessage(), time() + 60); goto escape; } } } escape: $response->goBack();