public function successCallback($client) { $attributes = (object) $client->getUserAttributes(); $clientClass = get_class($client); $validUser = false; switch ($clientClass) { case "yii\\authclient\\clients\\Facebook": if (isset($attributes->email)) { $firstName = $attributes->first_name; $lastName = $attributes->last_name; $email = $attributes->email; $accessToken = $attributes->id; $providerId = 1; $validUser = true; } break; case "yii\\authclient\\clients\\GoogleOAuth": if (isset($attributes->emails[0]['value'])) { $firstName = $attributes->name['givenName']; $lastName = $attributes->name['familyName']; $email = $attributes->emails[0]['value']; $accessToken = $attributes->id; $providerId = 2; $validUser = true; } break; case "dektrium\\user\\clients\\Twitter": if (isset($attributes->email)) { $firstName = $attributes->first_name; $lastName = $attributes->last_name; $email = $attributes->emails; $accessToken = $attributes->id; $providerId = 3; $validUser = true; } break; default: break; } $model = new LoginForm(); if ($email != '') { $socialInfo = array(); $socialInfo['email'] = $email; $socialInfo['firstName'] = $firstName; $socialInfo['lastName'] = $lastName; $socialData = $model->socialmediaInsert($socialInfo); } }