/**
* Add identity
*
* @param Newscoop\Entity\User $user
* @param string $provider
* @param string $providerUserId
* @return void
*/
public function addIdentity(User $user, $provider, $providerUserId)
{
$userIdentity = $this->em->getRepository('Newscoop\\Entity\\UserIdentity')->findOneBy(array('provider' => $provider, 'provider_user_id' => $providerUserId));
if ($userIdentity) {
return $userIdentity;
}
$userIdentity = new UserIdentity($provider, $providerUserId, $user);
$this->em->persist($userIdentity);
$user->setLastLogin(new \DateTime());
$this->em->flush();
return $userIdentity;
}