. */ declare(strict_types=1); namespace FireflyIII\Handlers\Observer; use FireflyIII\Models\Account; /** * Class AccountObserver */ class AccountObserver { /** * Also delete related objects. */ public function deleting(Account $account): void { app('log')->debug('Observe "deleting" of an account.'); $account->accountMeta()->delete(); foreach ($account->piggyBanks()->get() as $piggy) { $piggy->delete(); } foreach ($account->attachments()->get() as $attachment) { $attachment->delete(); } foreach ($account->transactions()->get() as $transaction) { $transaction->delete(); } $account->notes()->delete(); $account->locations()->delete(); } }