summaryrefslogtreecommitdiffstats
path: root/lib/Service/FeedServiceV2.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Service/FeedServiceV2.php')
-rw-r--r--lib/Service/FeedServiceV2.php20
1 files changed, 19 insertions, 1 deletions
diff --git a/lib/Service/FeedServiceV2.php b/lib/Service/FeedServiceV2.php
index 078941752..ccb7c047a 100644
--- a/lib/Service/FeedServiceV2.php
+++ b/lib/Service/FeedServiceV2.php
@@ -18,6 +18,7 @@ use FeedIo\Reader\ReadErrorException;
use HTMLPurifier;
use OCA\News\Db\FeedMapperV2;
+use OCA\News\Db\Folder;
use OCA\News\Fetcher\FeedFetcher;
use OCA\News\Service\Exceptions\ServiceConflictException;
use OCA\News\Service\Exceptions\ServiceNotFoundException;
@@ -119,7 +120,7 @@ class FeedServiceV2 extends Service
$feeds = $this->mapper->findAllFromUser($userId);
foreach ($feeds as &$feed) {
- $items = $this->itemService->findAllForFeed($feed->getId());
+ $items = $this->itemService->findAllInFeed($userId, $feed->getId());
$feed->items = $items;
}
return $feeds;
@@ -341,4 +342,21 @@ class FeedServiceV2 extends Service
$this->fetch($feed);
}
}
+
+ /**
+ * Mark a feed as read
+ *
+ * @param string $userId Feed owner
+ * @param int $id Feed ID
+ * @param int|null $maxItemID Highest item ID to mark as read
+ *
+ * @throws ServiceConflictException
+ * @throws ServiceNotFoundException
+ */
+ public function read(string $userId, int $id, ?int $maxItemID = null): void
+ {
+ $feed = $this->find($userId, $id);
+
+ $this->mapper->read($userId, $feed->getId(), $maxItemID);
+ }
}