From 2c93efface682da24ff41e10bcf5f293f429daac Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 7 Aug 2020 08:13:15 +1000 Subject: [PATCH] Softdelete/restore invitations on clientcontact delete/restore --- app/Models/ClientContact.php | 15 +++++++++++++++ app/Observers/ClientContactObserver.php | 8 ++++++-- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/app/Models/ClientContact.php b/app/Models/ClientContact.php index 425b9a09fca8..cc8804e08438 100644 --- a/app/Models/ClientContact.php +++ b/app/Models/ClientContact.php @@ -139,6 +139,21 @@ class ClientContact extends Authenticatable implements HasLocalePreference return $this->belongsTo(User::class)->withTrashed(); } + public function invoice_invitations() + { + return $this->hasMany(InvoiceInvitation::class); + } + + public function quote_invitations() + { + return $this->hasMany(QuoteInvitation::class); + } + + public function credit_invitations() + { + return $this->hasMany(CreditInvitation::class); + } + public function sendPasswordResetNotification($token) { $this->notify(new ClientContactResetPassword($token)); diff --git a/app/Observers/ClientContactObserver.php b/app/Observers/ClientContactObserver.php index a5682961e95e..3f07ddfd44db 100644 --- a/app/Observers/ClientContactObserver.php +++ b/app/Observers/ClientContactObserver.php @@ -45,7 +45,9 @@ class ClientContactObserver */ public function deleted(ClientContact $clientContact) { - // + $clientContact->invoice_invitations()->delete(); + $clientContact->quote_invitations()->delete(); + $clientContact->credit_invitations()->delete(); } /** @@ -56,7 +58,9 @@ class ClientContactObserver */ public function restored(ClientContact $clientContact) { - // + $clientContact->invoice_invitations()->restore(); + $clientContact->quote_invitations()->restore(); + $clientContact->credit_invitations()->restore(); } /**