Page MenuHomePhorge

D5879.1777524124.diff
No OneTemporary

Authored By
Unknown
Size
2 KB
Referenced Files
None
Subscribers
None

D5879.1777524124.diff

diff --git a/src/app/Handlers/Groupware.php b/src/app/Handlers/Groupware.php
--- a/src/app/Handlers/Groupware.php
+++ b/src/app/Handlers/Groupware.php
@@ -31,7 +31,7 @@
*/
public static function entitlementDeleted(Entitlement $entitlement): void
{
- if (\config('app.with_ldap')) {
+ if (\config('app.with_ldap') && !$entitlement->isForceDeleting()) {
UpdateJob::dispatch($entitlement->entitleable_id);
}
}
diff --git a/src/app/Handlers/Storage.php b/src/app/Handlers/Storage.php
--- a/src/app/Handlers/Storage.php
+++ b/src/app/Handlers/Storage.php
@@ -35,7 +35,9 @@
public static function entitlementDeleted(Entitlement $entitlement): void
{
// Update the user IMAP mailbox quota
- UpdateJob::dispatch($entitlement->entitleable_id);
+ if (!$entitlement->isForceDeleting()) {
+ UpdateJob::dispatch($entitlement->entitleable_id);
+ }
}
/**
diff --git a/src/app/Observers/EntitlementObserver.php b/src/app/Observers/EntitlementObserver.php
--- a/src/app/Observers/EntitlementObserver.php
+++ b/src/app/Observers/EntitlementObserver.php
@@ -64,7 +64,9 @@
*/
public function deleted(Entitlement $entitlement)
{
- $entitlement->createTransaction(Transaction::ENTITLEMENT_DELETED);
+ if (!$entitlement->isForceDeleting()) {
+ $entitlement->createTransaction(Transaction::ENTITLEMENT_DELETED);
+ }
$entitlement->sku->handler_class::entitlementDeleted($entitlement);
}
diff --git a/src/tests/Feature/UserTest.php b/src/tests/Feature/UserTest.php
--- a/src/tests/Feature/UserTest.php
+++ b/src/tests/Feature/UserTest.php
@@ -851,13 +851,14 @@
Queue::fake();
$user->delete();
+ $user->refresh();
$this->assertCount(0, $user->entitlements()->get());
- $this->assertTrue($user->fresh()->trashed());
- $this->assertFalse($user->fresh()->isDeleted());
+ $this->assertTrue($user->trashed());
+ $this->assertFalse($user->isDeleted());
Queue::assertPushed(DeleteJob::class, 1);
- Queue::assertPushed(UpdateJob::class, 0);
+ Queue::assertPushed(UpdateJob::class, 1); // from the entitlement deletion observer
// Delete the user for real
$job = new DeleteJob($id);

File Metadata

Mime Type
text/plain
Expires
Thu, Apr 30, 4:42 AM (15 h, 31 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18909115
Default Alt Text
D5879.1777524124.diff (2 KB)

Event Timeline