Loading lib/Command/RecoveryWarningNotificationCommand.php +13 −15 Original line number Original line Diff line number Diff line Loading @@ -265,12 +265,6 @@ class RecoveryWarningNotificationCommand extends Command { private function identifyForDisable($user, int $age): void { private function identifyForDisable($user, int $age): void { if ($age >= $this->disableUserAfterUnverifiedDays) { if ($age >= $this->disableUserAfterUnverifiedDays) { if ($user->isEnabled()) { if ($user->isEnabled()) { // Check for active subscription before disabling (skip in dry-run for speed) $emailAddress = $user->getEMailAddress(); if (!$this->dryRun && $emailAddress && $this->recoveryEmailService->hasActiveSubscription($emailAddress)) { // Skip disabling if user has active subscription return; } $this->disableUids[] = $user->getUID(); $this->disableUids[] = $user->getUID(); } } } } Loading @@ -283,12 +277,6 @@ class RecoveryWarningNotificationCommand extends Command { if ($disabledAt > 0) { if ($disabledAt > 0) { $daysSinceDisabled = (time() - $disabledAt) / (24 * 60 * 60); $daysSinceDisabled = (time() - $disabledAt) / (24 * 60 * 60); if ($daysSinceDisabled >= $this->deleteUserAfterDisableDays) { if ($daysSinceDisabled >= $this->deleteUserAfterDisableDays) { // Check for active subscription before deleting (skip in dry-run for speed) $emailAddress = $user->getEMailAddress(); if (!$this->dryRun && $emailAddress && $this->recoveryEmailService->hasActiveSubscription($emailAddress)) { // Skip deleting if user has active subscription return; } $this->deleteUids[] = $uid; $this->deleteUids[] = $uid; } } } } Loading Loading @@ -551,10 +539,20 @@ class RecoveryWarningNotificationCommand extends Command { } } private function isUserInPremiumGroup($user): bool { private function isUserInPremiumGroup($user): bool { // Check for 'premium' group $premiumGroup = $this->groupManager->get('premium'); $premiumGroup = $this->groupManager->get('premium'); if (!$premiumGroup) { if ($premiumGroup && $premiumGroup->inGroup($user)) { return false; return true; } // Check for 'premium-*' groups $userGroups = $this->groupManager->getUserGroups($user); foreach ($userGroups as $group) { if (strpos($group->getGID(), 'premium-') === 0) { return true; } } return $premiumGroup->inGroup($user); } return false; } } } } Loading
lib/Command/RecoveryWarningNotificationCommand.php +13 −15 Original line number Original line Diff line number Diff line Loading @@ -265,12 +265,6 @@ class RecoveryWarningNotificationCommand extends Command { private function identifyForDisable($user, int $age): void { private function identifyForDisable($user, int $age): void { if ($age >= $this->disableUserAfterUnverifiedDays) { if ($age >= $this->disableUserAfterUnverifiedDays) { if ($user->isEnabled()) { if ($user->isEnabled()) { // Check for active subscription before disabling (skip in dry-run for speed) $emailAddress = $user->getEMailAddress(); if (!$this->dryRun && $emailAddress && $this->recoveryEmailService->hasActiveSubscription($emailAddress)) { // Skip disabling if user has active subscription return; } $this->disableUids[] = $user->getUID(); $this->disableUids[] = $user->getUID(); } } } } Loading @@ -283,12 +277,6 @@ class RecoveryWarningNotificationCommand extends Command { if ($disabledAt > 0) { if ($disabledAt > 0) { $daysSinceDisabled = (time() - $disabledAt) / (24 * 60 * 60); $daysSinceDisabled = (time() - $disabledAt) / (24 * 60 * 60); if ($daysSinceDisabled >= $this->deleteUserAfterDisableDays) { if ($daysSinceDisabled >= $this->deleteUserAfterDisableDays) { // Check for active subscription before deleting (skip in dry-run for speed) $emailAddress = $user->getEMailAddress(); if (!$this->dryRun && $emailAddress && $this->recoveryEmailService->hasActiveSubscription($emailAddress)) { // Skip deleting if user has active subscription return; } $this->deleteUids[] = $uid; $this->deleteUids[] = $uid; } } } } Loading Loading @@ -551,10 +539,20 @@ class RecoveryWarningNotificationCommand extends Command { } } private function isUserInPremiumGroup($user): bool { private function isUserInPremiumGroup($user): bool { // Check for 'premium' group $premiumGroup = $this->groupManager->get('premium'); $premiumGroup = $this->groupManager->get('premium'); if (!$premiumGroup) { if ($premiumGroup && $premiumGroup->inGroup($user)) { return false; return true; } // Check for 'premium-*' groups $userGroups = $this->groupManager->getUserGroups($user); foreach ($userGroups as $group) { if (strpos($group->getGID(), 'premium-') === 0) { return true; } } return $premiumGroup->inGroup($user); } return false; } } } }