Browse Source

fix(files_sharing): Add missing check for null & use bool instead of int for reminder_sent field

Signed-off-by: Stefan Cherniakov <luka-sama@pm.me>
pull/47412/head
Stefan Cherniakov 1 year ago
committed by skjnldsv
parent
commit
457eaee2b3
  1. 4
      apps/files_sharing/lib/SharesReminderJob.php
  2. 2
      apps/files_sharing/tests/SharesReminderJobTest.php
  3. 2
      apps/sharebymail/lib/ShareByMailProvider.php
  4. 6
      lib/private/Share20/DefaultShareProvider.php

4
apps/files_sharing/lib/SharesReminderJob.php

@ -59,7 +59,9 @@ class SharesReminderJob extends TimedJob {
public function run(mixed $argument): void {
foreach ($this->getShares() as $share) {
$reminderInfo = $this->prepareReminder($share);
$this->sendReminder($reminderInfo);
if ($reminderInfo !== null) {
$this->sendReminder($reminderInfo);
}
}
}

2
apps/files_sharing/tests/SharesReminderJobTest.php

@ -158,7 +158,7 @@ class SharesReminderJobTest extends \Test\TestCase {
$testFolder = $user1Folder->newFolder('test');
if (!$isEmpty) {
$testFolder->newFile("some_file.txt");
$testFolder->newFile('some_file.txt');
}
$share = $this->shareManager->newShare();

2
apps/sharebymail/lib/ShareByMailProvider.php

@ -756,7 +756,7 @@ class ShareByMailProvider extends DefaultShareProvider implements IShareProvider
->set('hide_download', $qb->createNamedParameter((int)$share->getHideDownload(), IQueryBuilder::PARAM_INT))
->set('attributes', $qb->createNamedParameter($shareAttributes))
->set('mail_send', $qb->createNamedParameter((int)$share->getMailSend(), IQueryBuilder::PARAM_INT))
->set('reminder_sent', $qb->createNamedParameter((int)$share->getReminderSent(), IQueryBuilder::PARAM_INT))
->set('reminder_sent', $qb->createNamedParameter($share->getReminderSent(), IQueryBuilder::PARAM_BOOL))
->executeStatement();
if ($originalShare->getNote() !== $share->getNote() && $share->getNote() !== '') {

6
lib/private/Share20/DefaultShareProvider.php

@ -98,7 +98,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv
$qb->setValue('expiration', $qb->createNamedParameter($expirationDate, 'datetime'));
}
$qb->setValue('reminder_sent', $qb->createNamedParameter($share->getReminderSent() ? 1 : 0, IQueryBuilder::PARAM_INT));
$qb->setValue('reminder_sent', $qb->createNamedParameter($share->getReminderSent(), IQueryBuilder::PARAM_BOOL));
} elseif ($share->getShareType() === IShare::TYPE_GROUP) {
//Set the GID of the group we share with
$qb->setValue('share_with', $qb->createNamedParameter($share->getSharedWith()));
@ -225,7 +225,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv
->set('expiration', $qb->createNamedParameter($expirationDate, IQueryBuilder::PARAM_DATE))
->set('note', $qb->createNamedParameter($share->getNote()))
->set('accepted', $qb->createNamedParameter($share->getStatus()))
->set('reminder_sent', $qb->createNamedParameter($share->getReminderSent()))
->set('reminder_sent', $qb->createNamedParameter($share->getReminderSent(), IQueryBuilder::PARAM_BOOL))
->execute();
} elseif ($share->getShareType() === IShare::TYPE_GROUP) {
$qb = $this->dbConn->getQueryBuilder();
@ -1071,7 +1071,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv
$share->setProviderId($this->identifier());
$share->setHideDownload((int)$data['hide_download'] === 1);
$share->setReminderSent((int)$data['reminder_sent'] === 1);
$share->setReminderSent((bool)$data['reminder_sent']);
return $share;
}

Loading…
Cancel
Save