OCP\JSON::checkAppEnabled('news');
OCP\JSON::callCheck();
session_write_close();
$feedId = $_POST['feedId'];
$mostRecentItemId = (int) $_POST['mostRecentItemId'];
$itemMapper = new OCA\News\ItemMapper();
//echo $mostRecentItem->getDate();
switch ($feedId) {
    case -2:
        $items = $itemMapper->findEveryItemByStatus(OCA\News\StatusFlag::UNREAD);
        break;
    case -1:
        $items = $itemMapper->findEveryItemByStatus(OCA\News\StatusFlag::UNREAD | OCA\News\StatusFlag::IMPORTANT);
        break;
    default:
        $items = $itemMapper->findAllStatus($feedId, OCA\News\StatusFlag::UNREAD);
        break;
}
// FIXME: maybe there is a way to set all items read in the
// FeedMapper instead of iterating through every item and updating as
// necessary
$success = false;
if ($mostRecentItemId !== 0) {
    $mostRecentItem = $itemMapper->findById($mostRecentItemId);
}
$unreadCount = count($items);
foreach ($items as $item) {
    // FIXME: this should compare the modified date
    if ($mostRecentItemId === 0 || $item->getDate() <= $mostRecentItem->getDate()) {
        $item->setRead();
        $success = $itemMapper->update($item);
Exemple #2
0
<?php

$itemmapper = new OCA\News\ItemMapper();
$items = $itemmapper->findAllStatus(155, OCA\News\StatusFlag::UNREAD);
foreach ($items as $item) {
    echo $item->getTitle();
}