getSinceFromOffset($start); } $activities = $this->data->get( $this->groupHelper, $this->userSettings, $this->currentUser->getUID(), $start, $count, 'desc', 'all' ); $entries = []; foreach ($activities['data'] as $entry) { $entries[] = [ 'id' => $entry['activity_id'], 'subject' => $entry['subject'], 'message' => $entry['message'], 'file' => $entry['object_name'], 'link' => $entry['link'], 'date' => date('c', $entry['timestamp']), ]; } return new DataResponse($entries); } /** * @param int $offset * @return int */ protected function getSinceFromOffset($offset) { $query = $this->dbConnection->getQueryBuilder(); $query->select('activity_id') ->from('activity') ->where($query->expr()->eq('affecteduser', $query->createNamedParameter($this->currentUser->getUID()))) ->orderBy('activity_id', 'desc') ->setFirstResult($offset - 1) ->setMaxResults(1); $result = $query->executeQuery(); $row = $result->fetch(); $result->closeCursor(); if ($row) { return (int)$row['activity_id']; } return 0; } }