本文整理匯總了PHP中app\models\Profile::setUser方法的典型用法代碼示例。如果您正苦於以下問題:PHP Profile::setUser方法的具體用法?PHP Profile::setUser怎麽用?PHP Profile::setUser使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類app\models\Profile
的用法示例。
在下文中一共展示了Profile::setUser方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: actionLoginCallback
/**
* Login/register callback via email
*/
public function actionLoginCallback($token, $jwtCookie = true)
{
/** @var User $user */
// check token and log user in directly
$userToken = UserToken::findByToken($token, UserToken::TYPE_EMAIL_LOGIN);
if (!$userToken) {
return ["error" => "Invalid token"];
}
// log user in directly
$rememberMe = $userToken->data;
$user = $userToken->user;
if ($user) {
$userToken->delete();
return ["success" => $this->generateAuthSuccess($user, $rememberMe, $jwtCookie)];
}
// check for post data (for registering)
$user = new User();
$profile = new Profile();
if (!$user->loadPost()) {
return ["success" => true, "email" => $userToken->data];
}
// ensure that email is taken from the $userToken (NOT from user input)
$user->email = $userToken->data;
$rememberMe = 1;
// load profile, validate, and register
$userValidate = $user->validate();
$profileValidate = $profile->loadPostAndValidate();
if ($userValidate && $profileValidate) {
$user->setRegisterAttributes(Role::ROLE_USER, User::STATUS_ACTIVE)->save();
$profile->setUser($user->id)->save();
$userToken->delete();
return ["success" => $this->generateAuthSuccess($user, $rememberMe, $jwtCookie)];
} else {
$errors = array_merge($user->errors, $profile->errors);
return ["errors" => $errors];
}
}