Changeset View
Changeset View
Standalone View
Standalone View
src/app/Observers/UserObserver.php
Show First 20 Lines • Show All 134 Lines • ▼ Show 20 Lines | class UserObserver | ||||
* Handle the user "restoring" event. | * Handle the user "restoring" event. | ||||
* | * | ||||
* @param \App\User $user The user | * @param \App\User $user The user | ||||
* | * | ||||
* @return void | * @return void | ||||
*/ | */ | ||||
public function restoring(User $user) | public function restoring(User $user) | ||||
{ | { | ||||
// Make sure it's not DELETED/LDAP_READY/IMAP_READY/SUSPENDED anymore | // Reset the status | ||||
if ($user->isDeleted()) { | $user->status = User::STATUS_NEW; | ||||
$user->status ^= User::STATUS_DELETED; | |||||
} | |||||
if ($user->isLdapReady()) { | |||||
$user->status ^= User::STATUS_LDAP_READY; | |||||
} | |||||
if ($user->isImapReady()) { | |||||
$user->status ^= User::STATUS_IMAP_READY; | |||||
} | |||||
if ($user->isSuspended()) { | |||||
$user->status ^= User::STATUS_SUSPENDED; | |||||
} | |||||
$user->status |= User::STATUS_ACTIVE; | |||||
// Note: $user->save() is invoked between 'restoring' and 'restored' events | // Note: $user->save() is invoked between 'restoring' and 'restored' events | ||||
} | } | ||||
/** | /** | ||||
* Handle the user "restored" event. | * Handle the user "restored" event. | ||||
* | * | ||||
* @param \App\User $user The user | * @param \App\User $user The user | ||||
▲ Show 20 Lines • Show All 165 Lines • Show Last 20 Lines |