diff options
author | Joas Schilling <coding@schilljs.com> | 2021-10-11 16:59:43 +0300 |
---|---|---|
committer | Joas Schilling <coding@schilljs.com> | 2021-10-11 17:03:33 +0300 |
commit | 64777d9d6599b7b07def94bebbc1dab3d4560ae5 (patch) | |
tree | efd346d3a2973e6c8e23a55b890c218f556c688d /lib | |
parent | 4d8401b5b6a75f7b26673583e80a5bf61919886d (diff) |
Fix review comments
Signed-off-by: Joas Schilling <coding@schilljs.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/BackgroundJob/GenerateUserSettings.php | 2 | ||||
-rw-r--r-- | lib/Handler.php | 6 | ||||
-rw-r--r-- | lib/Model/SettingsMapper.php | 5 | ||||
-rw-r--r-- | lib/Settings/Personal.php | 3 |
4 files changed, 10 insertions, 6 deletions
diff --git a/lib/BackgroundJob/GenerateUserSettings.php b/lib/BackgroundJob/GenerateUserSettings.php index 6b67330..fdc9177 100644 --- a/lib/BackgroundJob/GenerateUserSettings.php +++ b/lib/BackgroundJob/GenerateUserSettings.php @@ -56,7 +56,7 @@ class GenerateUserSettings extends TimedJob { $this->setInterval(24 * 60 * 60); } - protected function run($argument) { + protected function run($argument): void { $query = $this->connection->getQueryBuilder(); $query->selectAlias('id', 'max_id') ->from('notifications') diff --git a/lib/Handler.php b/lib/Handler.php index 4a294c3..ca7c18e 100644 --- a/lib/Handler.php +++ b/lib/Handler.php @@ -197,10 +197,10 @@ class Handler { $sql = $this->connection->getQueryBuilder(); $sql->select('*') ->from('notifications') - ->orderBy('notification_id', 'DESC') - ->setMaxResults($limit) ->where($sql->expr()->gt('notification_id', $sql->createNamedParameter($startAfterId))) - ->andWhere($sql->expr()->eq('user', $sql->createNamedParameter($userId))); + ->andWhere($sql->expr()->eq('user', $sql->createNamedParameter($userId))) + ->orderBy('notification_id', 'DESC') + ->setMaxResults($limit); $statement = $sql->executeQuery(); $notifications = []; diff --git a/lib/Model/SettingsMapper.php b/lib/Model/SettingsMapper.php index dbffc1e..648d908 100644 --- a/lib/Model/SettingsMapper.php +++ b/lib/Model/SettingsMapper.php @@ -67,7 +67,6 @@ class SettingsMapper extends QBMapper { $settings = $this->insert($settings); } - $batchTime = 0; // Off if ($batchSetting === Settings::EMAIL_SEND_WEEKLY) { $batchTime = 3600 * 24 * 7; } elseif ($batchSetting === Settings::EMAIL_SEND_DAILY) { @@ -76,10 +75,14 @@ class SettingsMapper extends QBMapper { $batchTime = 3600 * 3; } elseif ($batchSetting === Settings::EMAIL_SEND_HOURLY) { $batchTime = 3600; + } else { + $batchTime = 0; // Off } $settings->setBatchTime($batchTime); if ($batchTime === 0) { + // When mails are Off, we don't set a "next send time" so it can be + // skipped in the background job. $settings->setNextSendTime(0); } else { // This will automatically heal on the first run of the background job. diff --git a/lib/Settings/Personal.php b/lib/Settings/Personal.php index 38c631c..c598a6f 100644 --- a/lib/Settings/Personal.php +++ b/lib/Settings/Personal.php @@ -75,7 +75,6 @@ class Personal implements ISettings { try { $settings = $this->settingsMapper->getSettingsByUser($user->getUID()); - $settingBatchTime = Settings::EMAIL_SEND_OFF; if ($settings->getBatchTime() === 3600 * 24 * 7) { $settingBatchTime = Settings::EMAIL_SEND_WEEKLY; } elseif ($settings->getBatchTime() === 3600 * 24) { @@ -84,6 +83,8 @@ class Personal implements ISettings { $settingBatchTime = Settings::EMAIL_SEND_3HOURLY; } elseif ($settings->getBatchTime() === 3600) { $settingBatchTime = Settings::EMAIL_SEND_HOURLY; + } else { + $settingBatchTime = Settings::EMAIL_SEND_OFF; } } catch (DoesNotExistException $e) { $settings = new Settings(); |