/** * updates an auth-token * * @author Matthias Pfefferle * @param int $pUserId * @param int $pOnlineIdentityId * @param string $pToken * @param string $pTokenSecret * @param boolean $pActive * @return AuthToken */ public static function saveToken($pUserId, $pOnlineIdentityId, $pToken, $pTokenSecret, $pActive = false) { if ($lCheck = self::getByUserAndOnlineIdentity($pUserId, $pOnlineIdentityId)) { $lToken = $lCheck; } else { $lToken = new AuthToken(); } if ($pActive && $pOnlineIdentityId) { $lIdentity = OnlineIdentityTable::getInstance()->retrieveByPK($pOnlineIdentityId); $lIdentity->save(); } $lToken->setTokenKey($pToken); $lToken->setOnlineIdentityId($pOnlineIdentityId); // get online-identity $lOnlineIdentity = OnlineIdentityTable::getInstance()->find($pOnlineIdentityId); $lToken->setCommunityId($lOnlineIdentity->getCommunityId()); $lToken->setTokenType(self::TOKEN_TYPE_OAUTH); $lToken->setTokenSecret($pTokenSecret); $lToken->setUserId($pUserId); $lToken->save(); return $lToken; }