You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
851 B
35 lines
851 B
3 years ago
|
<?php
|
||
|
|
||
|
namespace authkit2\Observers;
|
||
|
|
||
|
class UserObserver
|
||
|
{
|
||
|
/*'retrieved', 'creating', 'created', 'updating', 'updated',
|
||
|
'saving', 'saved', 'restoring', 'restored', 'replicating',
|
||
|
'deleting', 'deleted', 'forceDeleted',*/
|
||
|
|
||
|
public function retrieved($user)
|
||
|
{
|
||
|
if ($user instanceof \authkit2\Models\IAuthkitUser)
|
||
|
{
|
||
|
$token = $user->{$user->getAccessTokenName()};
|
||
|
$refresh = $user->{$user->getRefreshTokenName()};
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$token = $user->authkit_access_token;
|
||
|
$refresh = $user->authkit_refresh_token;
|
||
|
}
|
||
|
|
||
|
$user->authkit = \authkit2\Oidc\Token::fromString($token, $refresh);
|
||
|
// TODO: If access_token is expired, try refresh
|
||
|
// If refresh_token is expired, ?!!
|
||
|
// \Illuminate\Auth\Access\UnauthorizedException
|
||
|
}
|
||
|
|
||
|
public function saving($user)
|
||
|
{
|
||
|
unset($user->authkit);
|
||
|
}
|
||
|
}
|